CWE-Referenz › CWE-643: Improper Neutralization of Data within XPath Expressions ('XPath Injection')
CWE-643: Improper Neutralization of Data within XPath Expressions ('XPath Injection')
CWE ID: 643
Name: Improper Neutralization of Data within XPath Expressions (‘XPath Injection’)
Beschreibung
Das Produkt verwendet externe Eingaben, um dynamisch einen XPath-Ausdruck zu konstruieren, der zur Abfrage von Daten aus einer XML-Datenbank verwendet wird. Dabei werden diese Eingaben entweder nicht neutralisiert oder fehlerhaft neutralisiert. Dies ermöglicht es einem Angreifer, die Struktur der Abfrage zu kontrollieren.
Erweiterte Beschreibung
Die Nettoauswirkung ist, dass der Angreifer die Kontrolle über die aus der XML-Datenbank ausgewählten Informationen erlangt und diese Fähigkeit nutzen kann, um den Anwendungsablauf zu steuern, die Logik zu modifizieren, unautorisierte Daten abzurufen oder wichtige Sicherheitsprüfungen (z.B. Authentication) zu umgehen.
Risikominderungsmaßnahmen
Maßnahme (Implementation)
Effektivität: Unknown
Beschreibung: Nutzen Sie parametrisierte XPath-Abfragen (z.B. unter Verwendung von XQuery). Dies hilft, eine Trennung zwischen Data Plane und Control Plane sicherzustellen.
Maßnahme (Implementation)
Effektivität: Unknown
Beschreibung: Validieren Sie Benutzereingaben korrekt. Verwerfen Sie Daten, wo angebracht, filtern Sie, wo angebracht, und escapen Sie, wo angebracht. Stellen Sie sicher, dass Eingaben, die in XPath Queries verwendet werden, in diesem Kontext sicher sind.
Verwandte Schwachstellen
Ist Ihre IT-Infrastruktur betroffen?
Schwachstellen wie CWE-643: Improper Neutralization of Data within XPath Expressions ('XPath Injection') 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