So erkennen und beheben Sie die SAP NetWeaver-Zero-Day-Sicherheitslücke: Ein technischer Rückblick

In Folge 1 unserer neuen Doku-Serie, „Hacking & Defending SAP Applications Live“, analysierten die Onapsis-Forscher Ignacio Favro und Fabian Hagg die ersten massenhaft ausgenutzten SAP-Zero-Day-Schwachstellen (CVE-2025-31324 und CVE-2025-42999). Raffinierte Angreifer nutzten diese bisher unbekannte Schwachstelle aus, um Hunderte von SAP-Kunden zu kompromittieren

Dieser Artikel dient als Zusammenfassung der Veranstaltung aus der Sicht eines Praktikers, erläutert die Funktionsweise des Exploits im Detail und enthält konkrete Maßnahmen zur Behebung des Problems für SAP-Sicherheitsteams.

Wie funktionieren die Exploits CVE-2025-31324 und CVE-2025-42999?

Der Exploit CVE-2025-31324 und CVE-2025-42999 funktioniert, indem ein bösartiges serialisiertes Objekt an einen nicht authentifizierten HTTP-Endpunkt innerhalb des SAP NetWeaver Visual Composer Metadata Uploader gesendet wird.

Eine Deserialisierungsschwachstelle ist ein Fehler, der auftritt, wenn eine Anwendung Laufzeitobjekte aus formatierten Daten in einem serialisierten Byte-Strom rekonstruiert, ohne eine ordnungsgemäße Eingabevalidierung durchzuführen oder ausreichende Einschränkungen für die verfügbaren Objektklassen vorzunehmen. Dies ist für Sicherheitsteams von entscheidender Bedeutung, da es Angreifern ermöglicht, vorhandene Codeblöcke (Gadgets) mit einer Exploit-Primitive zu verketten, um während des Deserialisierungsvorgangs eine unerwartete Codeausführung auszulösen. 

Der analysierte Exploit basiert auf einer äußerst komplexen Gadget-Kette, die das hohe Fachwissen der Angreifer verdeutlicht. Die Angreifer haben diese Payload entwickelt, indem sie eine maßgeschneiderte Abfolge von Gadgets aus SAP-spezifischen Bibliotheken mit einem bekannten Codeausführungsmodul kombiniert haben, das häufig im Tool „ysoserial“ zur Generierung von Payloads verwendet wird. Um die klassische signaturbasierte Erkennung durch Intrusion-Detection-Systeme zu umgehen, haben die Autoren bestimmte Werte innerhalb des schädlichen Byte-Stroms absichtlich verändert. 

Zudem zeigte sich, dass die Angreifer den Byte-Stream zur Laufzeit dynamisch anpassten, um Zielsysteme zu sondieren und die Schadlast auf unterschiedliche Softwareversionen abzustimmen, wodurch sie einen stabileren Exploit schufen, der in der Lage war, beliebige Fernbefehle auf anfälligen Systemen auszuführen.

Sobald die Nutzlast erfolgreich deserialisiert wurde, eskaliert der Angriff rasch. Wie in unserer Live-Angriffssimulation gezeigt, verläuft ein typisches Angriffsszenario in mehreren Phasen:

  • Initial Access & Persistence: The attacker targets the unauthenticated endpoint with a payload to immediately deploy a .jsp web shell, establishing persistent remote access under the highly privileged <sid>adm user context.

Auch wenn die konkreten Aktivitäten nach dem Einbruch variieren können, verdeutlichen die dargestellten Angriffsszenarien die potenziell schwerwiegenden Folgen eines erfolgreichen Einbruchs. Sobald sich ein Angreifer Administratorrechte verschafft hat, ist er in der Lage, die folgenden Ziele mit weitreichenden Auswirkungen zu verfolgen:

  • Exfiltration von Anmeldedaten: Angreifer können wichtige Konfigurationsdateien wie „SecStore.properties“ direkt vom Server herunterladen, um die zugrunde liegenden Datenbank-Anmeldedaten zu extrahieren.
  • Datenmanipulation und -störung: Durch den Zugriff auf kompromittierte Datenbanken können Angreifer unbefugte SQL-Abfragen ausführen, um geschäftskritische Daten zu manipulieren, Finanztransaktionen zu verändern oder Systembefehle auszulösen, die die SAP-Umgebung vollständig lahmlegen.

So suchen Sie nach Indikatoren für eine Kompromittierung (IOCs) für CVE-2025-31324 und CVE-2025-42999

Um nach Anzeichen für eine Kompromittierung im Zusammenhang mit CVE-2025-31324 und CVE-2025-42999 zu suchen, müssen die Java-Trace-Protokolle auf unbefugte Deserialisierungsvorgänge überprüft und das Dateisystem auf hinterlegte Web-Shells durchsucht werden. 

Da Angreifer Web-Shells einsetzen, um auch nach der Installation von Patches einen dauerhaften Fernzugriff aufrechtzuerhalten, ist es unerlässlich, diese Artefakte zu identifizieren und zu entfernen.

Erforderliche Tools und Zugriffsrechte für die IOC-Suche

Sie benötigen Zugriff auf Ihre SAP-Java-Trace-Protokolle, Administratorrechte für das Dateisystem sowie eine aktive SAP -Lösung für das Schwachstellenmanagement.

  1. Schritt 1: Das Dateisystem auf Web-Shells überprüfen: Untersuchen Sie die spezifischen Verzeichnisse auf dem Java-System, in denen Angreifer typischerweise Web-Shells ablegen. Suchen Sie nach unbekannten .jsp-Dateien und achten Sie dabei besonders auf Dateinamen, die aus genau acht zufälligen Zeichen bestehen, oder auf bekannte bösartige Dateinamen, die mit diesen Kampagnen in Verbindung stehen. Siehe SSN 3604119 und unsere threat research für die vollständige Liste der Dateiindikatoren.
  2. Schritt 2: Java-Trace-Protokolle analysieren: Überprüfen Sie die Trace-Dateien des Java-Systems auf unbefugte Deserialisierungsaktivitäten. Da sich die genauen Fehlermeldungen von den allgemeinen Ausführungsprotokollen unterscheiden, müssen Sicherheitsteams ihre Trace-Dateien mit den spezifischen Indikatoren abgleichen, die in den SAP-Sicherheitshinweisen aufgeführt sind.
  3. Step 3: Audit Highly Privileged Execution: Check logs for unauthorized commands executed under the <sid>adm user context, or unexpected access to the SecStore.properties file.

Überprüfung 

Führen Sie das von Onapsis und Mandiant gemeinsam entwickelte Open-Source-Tool zum Scannen von IOCs in Ihrer Umgebung aus, um programmgesteuert sicherzustellen, dass sich keine versteckten Web-Shells oder kompromittierten Anmeldedaten in Ihren Systemen befinden.

So beheben Sie die Sicherheitslücke im SAP Visual Composer

Die Behebung der Sicherheitslücke in SAP Visual Composer erfordert einen mehrstufigen Patch-Prozess. Unternehmen müssen zunächst den außerplanmäßigen SAP-Sicherheitshinweis 3594142 (bezieht sich auf CVE-2025-31324) anwenden, um die Authentifizierung am anfälligen HTTP-Endpunkt durchzusetzen. Um den zugrunde liegenden Deserialisierungsvorgang vollständig zu beheben und eine strenge Klassenfilterung durchzusetzen, müssen Sicherheitsteams außerdem die nachfolgenden SAP-Sicherheitshinweise 3660659 und 3604119 anwenden, die im Rahmen des regulären Patch Tuesday veröffentlicht wurden.

Durch das Installieren dieser Patches wird die Java Virtual Machine daran gehindert, die spezifischen schädlichen Klassen zu deserialisieren, die in der Gadget-Kette des Angreifers missbraucht werden, wodurch die eigentliche Ursache der Sicherheitslücke beseitigt wird.

Anforderungen an Patches und Portalzugang

Administratorzugriff auf die betroffene SAP-Umgebung sowie Zugriff auf das SAP-Support-Portal, um den Notfall-Patch (3594142) und die dazugehörigen Patch-Day-Hinweise herunterzuladen. 

  • Schritt 1: Erforderliche Sicherheitshinweise herunterladen: Melden Sie sich beim SAP-Support-Portal an, um die spezifischen SAP-Sicherheitshinweise zu den CVE-2025-31324 und CVE-2025-42999 abzurufen. Um einen umfassenden Schutz vor allen damit verbundenen Sicherheitslücken und Angriffspunkten zu gewährleisten, müssen Sie die folgenden Sicherheitshinweise herunterladen: SSN 3620498, SSN 3660659, SSN 3594142, SSN 3578900, SSN 3621771, SSN 3685286, SSN 3604119, SSN 3634501, SSN 3660969, SSN 3657998, SSN 3610892, SSN 3670067 und SSN 3621236.
  • Step 2: Configure the JVM Serial Filter: Implementing the protection requires modifying the Java Virtual Machine parameters to block malicious classes. Access the NetWeaver Administrator (NWA) portal at http(s)://<host>:<port>/nwa (replacing <host> and <port> with your system’s specific variables). Navigate to Configuration, select Infrastructure, and open Java System Properties. Ensure you select the active template and navigate to the System VM Parameters section. Add a new parameter with the name jdk.serialFilter and set the value to the exact list of restricted classes and packages specified in SSN 3660659.
  • Schritt 3: System neu starten: Führen Sie den erforderlichen Systemneustart durch, um sicherzustellen, dass die neuen Klassenfilterregeln von der Java Virtual Machine aktiv angewendet werden.

Überprüfung

Versuchen Sie, den HTTP-Endpunkt des Metadaten-Uploaders über eine nicht authentifizierte Netzwerkanfrage zu erreichen. Der Erhalt einer Antwort „Zugriff verweigert“ bestätigt die erfolgreiche Umsetzung des SAP-Sicherheitshinweises 3594142. Da dieser Netzwerktest nur die Endpunkt-Authentifizierung überprüft, müssen Sicherheitsadministratoren die Systemkonfiguration und den Patch-Stand manuell überprüfen, um die korrekte Anwendung des JVM-Serial-Filters und des spezifischen Patches für CVE-2025-42999 (SAP-Sicherheitshinweis 3604119) sicherzustellen.

Im Rahmen einer aktiven Zusammenarbeit mit dem SAP Product Security Response Team hat Onapsis Research Labs weitere Angriffspunkte (CVE-2025-30012, CVE-2025-42966, CVE-2025-42964, CVE-2025-42980, CVE-2025-42963, CVE-2025-42944, CVE-2025-42884, CVE-2026-0504) sowie Code-Gadgets (CVE-2025-42928) bekannt gegeben.

Um einen Einblick hinter die Kulissen des Zeitablaufs der Entdeckung zu erhalten und zu erfahren, was die aktive Ausnutzung über moderne Angreifer verriet, sehen Sie sich die On-Demand-Veranstaltung auf der gemeinsamen Reaktion von SAP und Onapsis auf CVE-2025-31324.

So implementieren Sie Ausgleichsmaßnahmen ohne Betriebsunterbrechungen

Die Implementierung von Ausgleichsmaßnahmen erfordert die Konfiguration Ihrer SIEM- und SAP-Tools zur Erkennung von Bedrohungen, damit diese die spezifischen Rohdaten des mit dem Exploit verbundenen Ereignisses identifizieren und blockieren können. Eine sofortige Installation von Patches ist bei ERP-Systemen in der Produktion nicht immer möglich. Wenn Sie die Installation von Patches verschieben müssen, um ein geplantes Wartungsfenster abzuwarten, sollten Sie eine kontinuierliche Überwachung auf SAP-Bedrohungen einrichten.

Erforderliche SOC- und SIEM-Funktionen

 Eine aktive SIEM-Integration in Ihre SAP-Umgebung und ein eigenes SOC-Team.

  1. Schritt 1: Endpunktüberwachung konfigurieren: Legen Sie in Ihrem SIEM-System Warnregeln fest, um den gesamten Datenverkehr zu überwachen, der für den Endpunkt des SAP NetWeaver Visual Composer HTTP-Metadaten-Uploaders bestimmt ist.
  2. Schritt 2: Warnung bei nicht authentifiziertem Zugriff: Markieren Sie alle nicht authentifizierten Anfragen an diese bestimmte URL. Das SIEM-System muss die Rohdaten des Ereignisses erfassen, einschließlich des Zeitpunkts der Datenextraktion, des Ziel-ERP-Systems und der Quell-IP-Adresse.

Überprüfung

Führen Sie eine harmlose, simulierte, nicht authentifizierte Anfrage an den Endpunkt aus. Vergewissern Sie sich, dass das Ereignis innerhalb einer Minute erfolgreich eine Warnmeldung mit hoher Priorität in Ihrem SIEM-Dashboard auslöst, um sicherzustellen, dass Ihr SOC über die erforderliche Transparenz verfügt, um eine Reaktion auf den Vorfall einzuleiten.

Um genau zu sehen, wie Angreifer diese Schwachstelle ausnutzen und wie die Platform diese Bedrohungen Platform in Echtzeit erkennt, sehen Sie sich Folge 1 von „Hacking & Defending SAP Applications Live“ hier.