XXE-Injektion
XML External Entity Injection — eine Schwachstelle, bei der ein XML-Parser dazu gebracht wird, vom Angreifer eingeschleuste externe Entitäten zu verarbeiten, was das Auslesen lokaler Dateien, SSRF oder einen DoS ermöglichen kann. Entsteht, wenn ein Parser standardmäßig gefährliche XML-Funktionen zulässt.
Mechanik: XML unterstützt „Entitäten", die auf externe Inhalte verweisen können. Ein Angreifer, der XML an einen verwundbaren Parser schicken kann, definiert eine externe Entität, die etwa auf file:///etc/passwd oder eine interne URL zeigt → beim Expandieren der Entität liest der Parser die Datei bzw. ruft die URL auf und gibt den Inhalt in der Antwort zurück. Folgen: das Auslesen sensibler Dateien (Passwortdateien, Konfiguration, Schlüssel), SSRF (den Server dazu bringen, interne Dienste oder Cloud-Metadaten aufzurufen) und ein „Billion Laughs"-DoS (rekursive Entitäten, die den Speicher aufblähen). Ursache: Viele XML-Bibliotheken hatten die Verarbeitung externer Entitäten standardmäßig aktiviert. Gegenmittel: DTD- bzw. External-Entity-Verarbeitung im Parser deaktivieren (die einfache, endgültige Lösung), wo möglich ein einfacheres Format wie JSON verwenden und Eingaben validieren. Eine klassische OWASP-Top-10-Schwachstelle. Verwandt mit SSRF und unsicherer Deserialisierung.