Heim >Backend-Entwicklung >PHP-Tutorial >So verhindern Sie XSS in PHP

So verhindern Sie XSS in PHP

清浅
清浅Original
2019-05-08 15:44:187910Durchsuche

So verhindern Sie XSS in PHP: 1. Wenn PHP HTML ausgibt, verwenden Sie htmlentities(), RemoveXss(), HTMLPurifier.auto.php zum Filtern. 2. Fügen Sie beim Setzen von Cookies den HttpOnly-Parameter hinzu. Entwicklung Überprüfen Sie bei Verwendung der API den Referer-Parameter der Anfrage.

So verhindern Sie XSS in PHP

php verhindert xss

1. Wenn PHP direkt HTML ausgibt, können Sie die folgende Methode verwenden . Filter:

htmlspecialchars-Funktion

htmlentities-Funktion

HTMLPurifier.auto.php-Plugin

RemoveXss-Funktion

2. Wenn PHP in JS-Code ausgibt oder eine Json-API entwickelt, muss das Frontend in JS gefiltert werden:

Versuchen Sie, innerText (IE) und textContent (Firefox) zu verwenden, die von jQuery stammen text () zum Ausgeben von Textinhalten

muss innerHTML und andere Funktionen verwenden. Sie müssen eine Filterung durchführen, die den htmlspecialchars von PHP ähnelt

3. Andere allgemeine zusätzliche Verteidigungsmittel

Fügen Sie bei der Ausgabe von HTML den HTTP-Header der Content Security Policy hinzu.

Funktion: Kann verhindern, dass die Seite Skriptdateien von Drittanbietern einbettet, wenn sie von XSS angegriffen wird.

Fehler : IE oder Browser niedrigerer Versionen unterstützen möglicherweise nicht

2. Fügen Sie beim Setzen von Cookies den HttpOnly-Parameter hinzu

Funktion: Es kann verhindern, dass die Cookie-Informationen verwendet werden, wenn die Seite von XSS angegriffen wird. Diebstahl, kompatibel mit IE6

Defekt: Der JS-Code der Website selbst kann keine Cookies betreiben und seine Funktion ist eingeschränkt, er kann nur die Sicherheit von Cookies gewährleisten

3. Überprüfen Sie den Referrer-Parameter der Anfrage

Funktion: Kann CSRF-Angriffe bis zu einem gewissen Grad verhindern

Fehler: Im IE oder in Browsern niedrigerer Versionen kann der Referrer-Parameter gefälscht sein

Das obige ist der detaillierte Inhalt vonSo verhindern Sie XSS in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn