Was sind HTML-Entities?
HTML-Entities sind spezielle Strings die mit & beginnen und mit ; enden. Sie repräsentieren in HTML reservierte Zeichen (wie < > & und Anführungszeichen) oder schwer tippbare Zeichen. Zum Beispiel steht < für das Kleiner-als-Zeichen. Die Spezifikation definiert benannte Entities (©) und numerische (©) für hunderte Unicode-Zeichen.
Warum Entity-Kodierung wichtig ist
Die Kodierung ist aus zwei Gründen essenziell. Erstens verhindert sie, dass der Browser Inhalt als Markup missinterpretiert. Zweitens verteidigt sie gegen Cross-Site-Scripting (XSS)-Angriffe bei denen bösartige Skripte durch Benutzereingaben injiziert werden. Durch Kodierung von < > und Anführungszeichen neutralisieren Sie Angriffsvektoren.
Benannte vs Numerische Entities
Benannte Entities verwenden lesbare Codes wie &. Numerische verwenden dezimale (<) oder hexadezimale (<) Unicode-Codepunkte. Benannte sind lesbarer aber begrenzt. Numerische können jedes Unicode-Zeichen darstellen.
Best Practices
Immer die fünf kritischen Zeichen in Benutzerinhalten kodieren: < > & einfache und doppelte Anführungszeichen. Framework-Escape-Funktionen verwenden statt manueller Ersetzung. In modernem HTML5 mit UTF-8 sind nur & < > " und ' zwingend erforderlich.





