• CWE-86: Improper Neutralization of Invalid Characters in Identifiers in Web Pages

Das Produkt neutralisiert ungültige Zeichen oder Byte-Sequenzen in der Mitte von Tag-Namen, URI-Schemata und anderen Identifikatoren nicht oder neutralisiert diese fehlerhaft.

CWE-86: Improper Neutralization of Invalid Characters in Identifiers in Web Pages

CWE ID: 86
Name: Improper Neutralization of Invalid Characters in Identifiers in Web Pages

Beschreibung

Das Produkt neutralisiert ungültige Zeichen oder Byte-Sequenzen in der Mitte von Tag-Namen, URI-Schemata und anderen Identifikatoren nicht oder neutralisiert diese fehlerhaft.

Erweiterte Beschreibung

Einige Webbrowser entfernen diese Sequenzen möglicherweise, was zu einer Ausgabe führen kann, die unbeabsichtigte Kontrollimplikationen hat. Beispielsweise könnte das Produkt versuchen, ein “javascript:” URI-Schema zu entfernen, jedoch könnte ein “java%00script:” URI diese Prüfung umgehen und von einigen Browsern weiterhin als aktives Javascript gerendert werden, was XSS oder andere Angriffe ermöglicht.

Risikominderungsmaßnahmen

Maßnahme (Implementation)

Effektivität: Defense in Depth
Beschreibung: Um XSS-Angriffe gegen den Session-Cookie des Benutzers zu minimieren, sollte der Session-Cookie als HttpOnly gekennzeichnet werden. In Browsern, die die HttpOnly-Funktion unterstützen (wie neuere Versionen von Internet Explorer und Firefox), kann dieses Attribut verhindern, dass clientseitige, bösartige Skripte, die document.cookie verwenden, auf den Session-Cookie des Benutzers zugreifen. Dies ist jedoch keine vollständige Lösung, da HttpOnly nicht von allen Browsern unterstützt wird. Noch wichtiger ist, dass XMLHTTPRequest und andere leistungsstarke Browser-Technologien Lesezugriff auf HTTP-Header ermöglichen, einschließlich des Set-Cookie-Headers, in dem das HttpOnly-Flag gesetzt wird.