Maison  >  Article  >  cadre php  >  Comment empêcher les attaques XSS dans thinkphp

Comment empêcher les attaques XSS dans thinkphp

藏色散人
藏色散人original
2019-07-03 13:39:118942parcourir

Comment empêcher les attaques XSS dans thinkphp

● XSS (cross-site scripting Attack) a deux formes : la saisie de code JS ou de code HTML provoque le chaos des pages.

● XSS (cross-site scripting Attack) peut être utilisé pour voler les informations des cookies d'autres utilisateurs. Pour éviter de tels problèmes, vous pouvez utiliser les solutions suivantes :

Filtrer directement tous les scripts JavaScript ;

Évitez les métacaractères HTML et utilisez des fonctions telles que htmlentities et htmlspecialchars ;

La bibliothèque de fonctions étendue du système fournit la méthode remove_xss pour le filtrage de sécurité XSS

Certaines URL de la nouvelle version ; fonctionnalités d'accès Les variables système ont été traitées par XSS.

Lorsque les utilisateurs soumettent des informations sur le formulaire, il peut y avoir un « code » pertinent (html/css/js et autres codes) dans le formulaire, qui interférera avec l'effet de page lorsque les informations sont affichées.

1. Téléchargez htmlpurifier, décompressez et placez le dossier de la bibliothèque dans le dossier du plug-in ThinkPhp et créez function.php dans le dossier commun groupé

2. Créer en fonction, php Méthodes à éviter. attaques xss

3. Nous pouvons d'abord filtrer les données obtenues à partir de la publication via la méthode I() fournie avec le système hThinkphp, puis les filtrer en appelant la fonction fanXSS

Prenons l'exemple suivant :

Dans le processus de développement en arrière-plan de Thinphp, vous devez ajouter un éditeur. Pour que l'éditeur s'affiche normalement, vous devez définir la fonction I pour qu'elle ne filtre pas.

Maintenant, le problème arrive. Si vous ne filtrez pas, vous serez attaqué par XSS. Si vous filtrez l'éditeur en ligne, cela ne fonctionnera pas.

Nous pouvons Un package de filtrage open source : package htmlpurifier.

Extraire le package téléchargé dans le répertoire et renommez-le en HTMLpurifier

Comment empêcher les attaques XSS dans thinkphp

Créer une fonction

Comment empêcher les attaques XSS dans thinkphp

Modifiez ensuite le fichier de configuration config.php pour laisser la fonction I utiliser cette fonction pour filtrer :

Comment empêcher les attaques XSS dans thinkphp

Maintenant, la fonction I du site utilise la fonction que nous avons écrite lors du filtrage : Sélectif Le filtre filtre uniquement les codes dangereux.

Le site Web est très sécurisé !

Cet article provient de la colonne d'articles techniques du framework ThinkPHP :

http://www.php.cn/phpkj/thinkphp/

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn