Frage

habe ich eine Website auf den berühmten symfony Framework. Ich wollte reich Editierfunktion, um es hinzuzufügen. Und ich fand TinyMCE Editor. Aber es comed ein Problem: Wie über den Benutzer einige Javascript-Code in den Inhalt eingebettet werden? wie alert ( 'Hallo Welt').

I getestet Wordpress, die eine sehr bekannte Blog-Software ist. Es blickt auf das gleiche Problem. Beispiel .

Es ist keine große Sache, wenn jemand eine Warnung Skript einbetten. Aber was, wenn sie einigen gefährlichen Code einbetten? Haben Sie das gleiche Problem aufgetreten? Soll ich anstelle von HTML verwenden Abschlag? Jedes gutes Widget für Abschlag Bearbeitung?

War es hilfreich?

Lösung

Es darf keine eingebetteten Javascript in Ihrer Benutzereingabe. Dies ist einfach entweder auf dem Client oder den Server zu reinigen. Haben Sie eine „weiße Liste“ von HTML-Tags, die Sie unterstützen, und entfernen Sie alle Ereignis-Listener-Attribute aus, was Sie tun können.

Andere Tipps

Es ist eine gute Idee, eine vorhandene Bibliothek benutzen, um Ihre Benutzereingaben zu reinigen, das HTML Purifier Projekt: http: // HTMLPurifier. org / scheint gepflegt und gut gemacht.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top