Skip to content

Cross-Site Scripting verhindern, ganz allgemein

Am einfachsten verhindern Sie Cross-Site Scripting, indem Sie gar kein HTML und damit JavaScript als Benutzereingabe akzeptieren. Wenn die Eingabe nur aus reinem Klartext bestehen darf, kann sie beim Finden des ersten HTML-Tags verworfen werden. Denn dann versucht jemand einen Angriff, und der wird sofort abgewehrt, fertig, aus. Sie sollten nicht mal den Versuch machen, den enthaltenen Code aus der Eingabe zu löschen. Denn die Eingabe dient einzig und allein dazu, Schadcode in die Seiten Ihrer Webanwendung einzuschleusen. Es gibt darin nichts, was aus irgend einem Grund gerettet werden müsste.

Diese ebenso einfache wie effektive Lösung ist heutzutage nicht mehr immer möglich. In Zeiten des Web 2.0 mit seinem "User generated content" ist HTML-Code, zum Beispiel Auszeichnungs- oder Formatierungsanweisungen, oft ein erwünschter Teil der Eingabe. Und damit wird es deutlich schwieriger, erwünschte und unerwünschte Inhalte auseinander zu halten.

Ausgezeichnet, ganz ohne HTML!

"Cross-Site Scripting verhindern, ganz allgemein" vollständig lesen