Maison >développement back-end >tutoriel php >La solution ultime pour se défendre contre l'injection XSS en PHP

La solution ultime pour se défendre contre l'injection XSS en PHP

藏色散人
藏色散人avant
2020-01-06 16:46:233542parcourir

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer