976 Beiträge rss | 27 Nutzer online

PHP: Eingabefelder sicherer machen

Wer Kommentare oder Foreneinträge auf seiner Homepage zulässt, öffnet eine Sicherheitslücke. Über geschicktes Nutzen von HTML-Codes können Angreifer Ihren Server für eigene Zwecke nutzen. Der Weg für die Angreifer führt über HTML-Tags, etwa ein <iframe>, das dann Inhalte von ganz anderen Servern einbindet und Daten abfängt.

Damit das gar nicht erst passiert hat, PHP zwei gute Gegenmittel. Das eine heißt htmlspecialchars(), das andere strip_tags().

htmlspecialchars() wandelt alle in einem String enthaltenen HTML-Codes in Entitäten um, aus einem < wird zum Beispiel ein &lt;. Damit verliert eingeschleuster HTML-Code seine Wirksamkeit. Gibt jemand HTML ein, erscheint der als normaler Text mit allen spitzen Klammern.

Schön sieht das freilich nicht aus. Möchten Sie lieber gar keine HTML-Codes sehen, werfen Sie die einfach hinaus. Dafür zuständig ist die Funktion strip_tags(). Die entfernt komplett alle HTML-Codes.

Ein kleines Code-Beispiel:

<?PHP

$strBoeserString = "ich bin <b>fett</b>.";

echo htmlspecialchars($strBoeserString)."<br/>\n";

echo strip_tags($strBoeserString)."<br/>\n";

?>

Das Resultat sieht als HTML-Quelltext so aus:

ich bin <b>fett</b>.<br/>

ich bin fett.<br/>

In der oberen Zeile sind die HTML-Zeichen umgewandelt, in der unteren entfallen Sie. Das <br/> wird jeweils nach dem Bearbeiten des Strings angehängt.

Mehr dazu:

Aktualisiert am: 13.05.2006




Ihr Kommentar:


Name:


Copyright © goldmann.de 1999-2012   | Tippscout 5.0
Zurück Startseite