CWE-Referenz › CWE-158: Improper Neutralization of Null Byte or NUL Character
CWE-158: Improper Neutralization of Null Byte or NUL Character
CWE ID: 158
Name: Improper Neutralization of Null Byte or NUL Character
Beschreibung
Das Produkt empfängt Eingaben von einer vorgelagerten Komponente, neutralisiert diese jedoch nicht oder neutralisiert NUL-Zeichen oder Nullbytes fehlerhaft, wenn sie an eine nachgelagerte Komponente gesendet werden.
Erweiterte Beschreibung
Während der Datenanalyse kann ein injizierter NUL-Zeichen oder Nullbyte dazu führen, dass das Produkt fälschlicherweise annimmt, die Eingabe sei früher beendet als tatsächlich, oder die Eingabe anderweitig fehlerhaft interpretiert wird. Dies könnte dann ausgenutzt werden, um potenziell gefährliche Eingaben nach dem Nullbyte einzuschleusen oder Validierungsroutinen und andere Protection Mechanisms zu umgehen.
Risikominderungsmaßnahmen
Maßnahme (Unknown)
Effektivität: Unknown
Beschreibung: Entwickler sollten davon ausgehen, dass Nullzeichen oder Nullbytes in den Input Vektoren ihres Produkts injiziert, entfernt oder manipuliert werden. Eine geeignete Kombination aus Denylists und Allowlists sollte verwendet werden, um sicherzustellen, dass nur valide, erwartete und angemessene Eingaben vom System verarbeitet werden.
Maßnahme (Implementation)
Effektivität: Unknown
Beschreibung: Eingaben sollten vor der Validierung in die aktuelle interne Repräsentation der Anwendung dekodiert und kanonisiert werden (CWE-180). Stellen Sie sicher, dass die Anwendung dieselbe Eingabe nicht doppelt dekodiert (CWE-174). Solche Fehler könnten dazu verwendet werden, Allowlist-Validierungsschemata zu umgehen, indem gefährliche Eingaben nach der Prüfung eingeführt werden.
Verwandte Schwachstellen
Ist Ihre IT-Infrastruktur betroffen?
Schwachstellen wie CWE-158: Improper Neutralization of Null Byte or NUL Character werden von Angreifern gezielt gesucht — meist automatisiert und ohne Rücksicht darauf, wie groß das betroffene Unternehmen ist. Ob eine solche Lücke bei Ihnen tatsächlich offen steht, lässt sich nur durch Prüfung feststellen:
- Schwachstellen-Scan — wiederkehrende Prüfung Ihrer Infrastruktur auf bekannte Lücken wie diese
- Penetrationstest — manuelle Prüfung eigener Software auf Schwachstellen, die kein Werkzeug findet
- Threat Modeling — Schwachstellenklassen im Entwurf vermeiden, statt sie später zu suchen