CWE ID: 148
Name: Improper Neutralization of Input Leaders
Das Produkt verarbeitet fehlende oder fehlerhafte führende Zeichen oder Sequenzen (“leader”) nicht korrekt, oder wenn mehrere Leader verwendet werden, obwohl nur ein Leader erlaubt sein sollte.
Effektivität: Unknown
Beschreibung: Entwickler sollten davon ausgehen, dass führende Zeichen in den Input-Vektoren ihres Produkts injiziert, entfernt oder manipuliert werden können. Eine geeignete Kombination aus Denylists und Allowlists sollte verwendet werden, um sicherzustellen, dass nur gültige, erwartete und angemessene Inputs vom System verarbeitet werden.
Effektivität: Unknown
Beschreibung: Obwohl die Verwendung dynamisch generierter Query Strings, Code oder Commands, die Kontrollelemente und Daten vermischen, riskant ist, kann dies manchmal unvermeidlich sein. Argumente sollten korrekt in Anführungszeichen gesetzt und alle speziellen Zeichen innerhalb dieser Argumente escaped werden. Der konservativste Ansatz ist das Escapen oder Filtern aller Zeichen, die nicht durch eine äußerst strenge Allowlist bestehen (z. B. alles, was nicht alphanumerisch oder Whitespace ist). Wenn bestimmte spezielle Zeichen dennoch benötigt werden, wie z. B. Whitespace, sollten jedes Argument nach dem Escapen/Filtern-Schritt in Anführungszeichen gesetzt werden. Achten Sie auf Argument Injection (CWE-88).
Effektivität: Unknown
Beschreibung: Eingaben sollten vor der Validierung (CWE-180) in die aktuelle interne Repräsentation der Anwendung dekodiert und kanonisiert werden. Stellen Sie sicher, dass die Anwendung dieselbe Eingabe nicht zweimal dekodiert (CWE-174). Solche Fehler könnten dazu verwendet werden, Allowlist-Validierungsschemata zu umgehen, indem gefährliche Eingaben nach ihrer Prüfung eingeführt werden.