Heim > Backend-Entwicklung > PHP-Tutorial > javascript - Wie kann ich die XSS-Injektion in einem Rich-Text-Editor verhindern?

javascript - Wie kann ich die XSS-Injektion in einem Rich-Text-Editor verhindern?

WBOY
Freigeben: 2016-08-20 09:04:07
Original
2579 Leute haben es durchsucht

Wenn das HTML-Tag gefiltert wird, um die XSS-Injektion zu verhindern, geht die Funktion des Rich-Text-Editors verloren und es wird zusammen gefiltert. Wenn der HTML-Tag beibehalten wird, wird die XSS-Injection nicht verhindert.
Wie gehen Sie normalerweise mit diesem Problem um? ? ? Nur bestimmte Tags filtern? ? ?

Antwortinhalt:

Wenn das HTML-Tag gefiltert wird, um die XSS-Injektion zu verhindern, geht die Funktion des Rich-Text-Editors verloren und es wird zusammen gefiltert. Wenn der HTML-Tag beibehalten wird, wird die XSS-Injection nicht verhindert.
Wie gehen Sie normalerweise mit diesem Problem um? ? ? Nur bestimmte Tags filtern? ? ?

HTML Purifier ist ein in PHP geschriebener HTML-Filter, der mit einem WYSIWYG-Editor verwendet werden kann, um XSS-Schadcode herauszufiltern.

<code><?php
require dirname(__FILE__).'/htmlpurifier/library/HTMLPurifier.auto.php';
$purifier = new HTMLPurifier();
echo $purifier->purify($html);</code>
Nach dem Login kopieren

Ich denke, eine Whitelist ist in Ordnung. Behalten Sie einfach die Tags bei, die Sie verwenden möchten, und filtern Sie alles andere

Filtern Sie nicht die Funktionen, die Ihr Rich-Text-Editor unterstützt, sondern nur andere. Wenn Sie ein p-Tag erhalten, müssen Sie dann noch unterscheiden, ob es mit Ihrem Editor oder manuell hinzugefügt wurde?

Ist es in Ordnung, festzulegen, dass Sie Ihre eigene neue Grammatik verwenden müssen?

Filtern Sie einfach das JS-Skript heraus

Beim Betreten der Bibliothek auf Entitätszeichen umgestellt
Beim Verlassen der Bibliothek wiederhergestellt.
und
<script></script>
javascript:xxx;
dieser Art

herausfiltern
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage