Vulnerability
Was ist eine Vulnerability?
Vulnerability (Schwachstelle) bezeichnet eine Schwäche in Systemen, Software oder Konfigurationen, die durch Bedrohungen ausgenutzt werden kann. Im OSSTMM-Modell stellt sie die kritischste Risikokategorie dar – eine Schwachstelle, bei der ein direkter Exploit-Weg besteht.
Typische Ursachen für Schwachstellen
-
Fehlerhafte Implementierung
– z. B. Pufferüberläufe, fehlerhafte Inputvalidierung, unsichere API-Endpunkte -
Konfigurationsfehler
– Veraltete Dienste, offene Ports, Standard-Accounts mit Default-Passwörtern -
Veraltete Komponenten
– Bibliotheken mit bekannten CVEs, nicht aktualisierte CMS-Plugins -
Fehlende Schutzmechanismen
– Keine Authentifizierung, unsichere Zugriffskontrollen, fehlende Logging-Mechanismen
Klassifikation & Bewertung
-
Beispiele für Schwachstellenklassen:
– Injection-Angriffe (SQLi, Command Injection)
– Directory Traversal
– Unsichere Deserialisierung
– Privilege Escalation
– Insecure Permissions -
Analyse-Methoden:
– Statische Analysen (SAST)
– Dynamische Tests (DAST)
– Manuelle Code-Reviews
– Penetrationstests -
Risikobewertung:
– Common Vulnerability Scoring System (CVSS v3.1)
– Metriken: Exploitability, Impact (Vertraulichkeit, Integrität, Verfügbarkeit), Scope, Remediation Level
Anwendung in der Praxis
Ein Webportal enthält ein Kontaktformular, das die Eingabe ungefiltert in eine SQL-Abfrage einfügt. Ein Penetrationstester entdeckt dies bei einem Black-Box-Test durch gezielte Payloads (z. B.
' OR 1=1--
). Die Schwachstelle erlaubt Zugriff auf Benutzerdatenbanktabellen. Der CVSS-Score wird als 9.1 (Critical) klassifiziert. Daraufhin wird ein sofortiger Fix umgesetzt: parametrisierte SQL-Statements, SAST-Integration in der CI/CD-Pipeline sowie Schulung der Entwickler zu Secure Coding Practices auf Basis der OWASP-Richtlinien.
Verwandte Begriffe
-
CVSS
-
OSSTMM
-
Penetration Test
-
Secure Coding
-
Static Application Security Testing (SAST)
-
Dynamic Application Security Testing (DAST)
-
Risk Assessment Value (RAV)