
CVE-2025-31324 & CVE-2025-42999 Schwachstellen- und Kompromittierungsbewertungstool
Onapsis und Mandiant haben gemeinsam ein Open-Source-Tool veröffentlicht, um SAP-Kunden dabei zu helfen, mögliche Kompromittierungen im Zusammenhang mit CVE-2025-31324 und CVE-2025-42999, einer kritischen 0-Day-Schwachstelle in SAP NetWeaver Java-Systemen, zu identifizieren.
Dieses Tool ist für die lokale, White-Box-Ausführung durch Systemadministratoren mit Zugriff auf potenziell betroffene Umgebungen konzipiert. Es unterstützt die Schwachstellenbewertung, eine einfache Kompromittierungsbewertung und die Sammlung von Artefakten.
Dieses Tool unterstützt derzeit die folgenden Funktionen:
LIZENZINFORMATIONEN: Dieses Tool wird unter der Apache 2.0 Open-Source-Lizenz veröffentlicht. Siehe beigefügte Lizenzinformationen.
HAFTUNGSAUSSCHLUSS: Dieses Tool wurde entwickelt, um dringende Untersuchungs- und Reaktionsbemühungen im Zusammenhang mit der aktiven Ausnutzung von CVE-2025-31324 und CVE-2025-42999 zu unterstützen. Ab dem 6. Juni 2025 wird dieses Tool nicht mehr aktiv weiterentwickelt oder überwacht. Es bleibt für zukünftige Debugging- und Referenzzwecke verfügbar; es werden jedoch keine weiteren Updates, Verbesserungen oder fortlaufender Support bereitgestellt. Benutzer sollten die Anwendbarkeit basierend auf ihren aktuellen Anforderungen bewerten und es nach eigenem Ermessen verwenden.
Dieses Tool automatisiert die Überprüfung von Schwachstellen- und IOC-Informationen, die im laufenden Betriebssystem mit den Berechtigungen des Benutzers ausgeführt werden, der das Skript startet. Dies ist KEIN Ersatz für forensische Analysen oder erweiterte Incident-Response. Fortgeschrittene Angreifer beseitigen oft Beweise für ihr Eindringen, indem sie Rootkits einsetzen und Techniken anwenden, um der Erkennung zu entgehen.
Dieses Tool wird wie besehen ohne Gewährleistung oder Haftung bereitgestellt. Verwendung auf eigenes Risiko.
Die Skripte sind in Python 3 entwickelt und erfordern die Installation der folgenden Abhängigkeiten:
python3 -m venv .venv
. .venv/bin/activate
pip install -r requirements.txt
Nachdem Sie die Abhängigkeiten installiert haben, können Sie Python verwenden, um die Skripte auszuführen und Hilfe über die Befehlszeile zu erhalten.
# Syntax: python3 <tool_name>.py <Pfad> [--single] [--offline]
Scan-Parameter:
<Pfad> --- Bezieht sich auf das Stammverzeichnis des SAP-Anwendungsdateisystems, das Sie scannen möchten. Dies sollte die Basis des SAP-Systems sein, entweder von einem eingehängten Backup oder einer Live-Umgebung.--single --- Führt einen Scan für ein einzelnes SID/Instance-Verzeichnis durch (nicht das Stamm- oder Basis-SAP-Verzeichnis mit mehreren Systemen oder Instanzen)--offline --- Führt den Scan ohne Internetverbindung durch (keine Überprüfung auf Upgrades gegen die GitHub-API)Für eine vollständige Liste der Befehlszeilenoptionen und Flags verwenden Sie den Parameter --help.
[!IMPORTANT] Dieses Tool scannt nach Dateien unter dem JAVA-Server-Dateisystem wie in SAP Security Note 3593336 angegeben:
C:\usr\sap\<SID>\<InstanceID>\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\rootC:\usr\sap\<SID>\<InstanceID>\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\workC:\usr\sap\<SID>\<InstanceID>\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\work\syncWenn der angegebene Pfad ein Live-Stammdateisystem ist (z. B.
/oderC:\), erwartet das Tool das standardmäßige SAP-Installationsverzeichnis/usr/sap. Dann scannt das Tool standardmäßig alle<SID>/<INSTANCE>/-Unterverzeichnisse (mit Platzhaltern).Bei einem Teilscan verwenden Sie
--singleund geben den vollständigen Pfad zum Instanzordner an, der dasj2ee-SAP-Java-Verzeichnis enthält.
[!CAUTION] Dieses Design soll alle möglichen verdächtigen Dateien in allen SIDs/Instanzen scannen, während eine falsche Erkennung vertrauter Dateien vermieden wird. Dateien außerhalb dieser Standardordnerstruktur werden nicht erkannt, und ein Fehler wird ausgegeben, wenn das Unterverzeichnis
j2eenicht gefunden wird.Das Komponentenmanifest wird ebenfalls im standardmäßigen Unterverzeichnis
j2ee/cluster/apps/sap.com/devserver_metadataupload_ear/erwartet. Wenn es nicht gefunden wird, wird es nicht auf anfällige, ungepatchte Versionen analysiert.Der erwartete Protokollpfad ist
j2ee/cluster/<SERVER>/log/system/httpaccess/mit Dateien, die mitresponsesund der Erweiterungtrcfür das SAP-eigene Protokollformat benannt sind. Das Suffix-clfwird für Dateien im Common Log Format erwartet. Wenn nicht gefunden, wird eine Fehler-/Warnmeldung ausgegeben.
Eingehängtes Dateisystem unter /mnt/sapserver (Komponente anfällig, Einzelinstanzscan für SID J00):
python3 onapsis-mandiant-CVE-2025-31324-vuln-compromise-assessment.py /mnt/sapserver/usr/sap/SID/J00 --single