Hi, ich habe auf meiner Seite mehrere Textboxen. Eine davon ist dazu gedacht um Kommentare zu posten.
Um nun zu verhindern, dass ein Gast schadhaften PHP / HTML oder JavaScript Code einschleust, habe ich für die "Vorschau-Anzeige" eine JavaScript Funktion geschrieben, die alle < > gegen < > austauscht.
Dadurch werden z.B. HTML Befehle nicht mehr ausgeführt, sondern als Text angezeigt.
Als Formatierungshilfe sind BBCodes vorgesehen.
Diese Funktion sieht wie folgt aus und beschränkt sich alleinig auf die Vorschau, die dynamisch innerhalb eines DIV Feldes angezeigt wird:
function preview_edit()
{
text = document.getElementById(\"textbox\").value;
text = text.replace(/</g,\"<\");
text = text.replace(/>/g,\">\");
document.getElementById(\"preview_text\").innerHTML = text;
document.getElementById(\"preview_text\").style.display ='block';
}
Nach dem Absenden wird der Text per PHP in ähnlicher Weise nachbearbeitet, bevor er in die Datenbank eingetragen wird.
Ist dies als Schutzmaßnahme ausreichend oder könnte man hier noch etwas verbessern?
Meine Sorgenkind:
1. Mit der FireFox Erweiterung "FireBug" kann ich im Browser den HTML und JavaScript Code manipulieren.
Die Änderungen können zwar nicht in der PHP Datei gespeichert werden, aber kann dadurch trotzdem eine Sicherheitslücke entstehen?
Z.B. indem der Nutzer die JavaScript Prüfung des Vorschaubereiches manipuliert?
Vielen Dank im Vorraus :)