CWE-Referenz › CWE-103: Struts: Incomplete validate() Method Definition
CWE-103: Struts: Incomplete validate() Method Definition
CWE ID: 103
Name: Struts: Incomplete validate() Method Definition
Beschreibung
Das Produkt weist ein Validator-Formular auf, das entweder keine validate()-Methode definiert oder eine validate()-Methode definiert, die jedoch super.validate() nicht aufruft.
Erweiterte Beschreibung
Sollte der Code super.validate() nicht aufrufen, kann das Validation Framework den Inhalt des Formulars nicht gegen ein Validation Formular prüfen. Mit anderen Worten, das Validation Framework wird für das betreffende Formular deaktiviert.
Risikominderungsmaßnahmen
Maßnahme (Implementation)
Effektivität: Unknown
Beschreibung: Implementieren Sie die Methode validate() und rufen Sie super.validate() innerhalb dieser Methode auf.
Detaillierter Hintergrund
Der Struts Validator verwendet die Methode validate() eines Formulars, um die Inhalte der Formulareigenschaften mit den in dem zugehörigen Validierungsformular angegebenen Constraints zu prüfen. Das bedeutet, dass die folgenden Klassen eine validate()-Methode besitzen, die Teil des Validierungs-Frameworks ist: ValidatorForm, ValidatorActionForm, DynaValidatorForm und DynaValidatorActionForm. Wenn der Code eine Klasse erstellt, die eine dieser Klassen erweitert und eine benutzerdefinierte Validierungslogik implementiert, indem die validate()-Methode überschrieben wird, muss der Code super.validate() in der Implementierung der validate()-Methode aufrufen.
Verwandte Schwachstellen
Ist Ihre IT-Infrastruktur betroffen?
Schwachstellen wie CWE-103: Struts: Incomplete validate() Method Definition 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