Maison >développement back-end >tutoriel php >La solution ultime pour se défendre contre l'injection XSS en PHP
La solution ultime de PHP pour se défendre contre l'injection XSS [Sécurité de l'information] [Hack]
1 : PHP génère directement du HTML, vous pouvez utiliser les méthodes suivantes pour filtrer :
Fonction 1.htmlspecialchars
2.Fonction htmlentities
3.Plug-in HTMLPurifier.auto.php
4.Fonction RemoveXss (Baidu can Found)
2 : Si PHP génère du code JS ou développe une API Json, le front-end doit filtrer en JS :
1 Essayez d'utiliser. innerText (IE) et textContent (Firefox), c'est-à-dire le text() de jQuery pour afficher le contenu du texte
2 Si vous devez utiliser des fonctions telles que innerHTML, vous devez filtrer les caractères htmlspecialchars similaires à php (voir @. Réponse de eechen)
Trois : Autres méthodes générales de défense supplémentaires
1 Lors de la sortie HTML, ajoutez l'en-tête Http de la politique de sécurité du contenu
(Fonction. : Cela peut empêcher la page d'être attaquée par XSS, d'intégrer des fichiers de script tiers, etc.)
(Défaut : les navigateurs IE ou versions inférieures peuvent ne pas le prendre en charge)
2. settings Lors de l'utilisation de cookies, ajoutez le paramètre HttpOnly
(fonction : il peut empêcher le vol des informations des cookies lorsque la page est attaquée par XSS, et est compatible avec IE6)
(défaut : le Le code JS du site Web lui-même est également Les cookies ne peuvent pas être exploités et leur fonction est limitée, ils ne peuvent assurer que la sécurité des cookies)
3 Lors du développement d'API, vérifiez les paramètres du référent de la demande
.(Fonction : peut empêcher les attaques CSRF dans une certaine mesure)
(Défaut : dans les navigateurs IE ou versions inférieures, le paramètre Referer peut être falsifié)
Pour plus de connaissances liées à PHP , veuillez visiter le Tutoriel PHP !
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!