10KBlaze - Hype & Panikmache get_app
Am 19. April 2019 hielten die Sicherheitsforscher Dmitry Chastuhin und Mathieu Geli auf der OPCDE Cyber Security Konferenz in Dubai einen Vortrag mit dem Titel "SAP gateway to Heaven".
Sie haben zwei seit vielen Jahren bekannte Konfigurationsprobleme (im Zusammenhang mit SAP Gateway und SAP Message Server) aufgegriffen, für die es - ebenfalls seit Jahren - detaillierte Anleitungen zur sicheren Konfiguration gibt. Nun aber haben die beiden Forscher diese Konfigurationsprobleme bewundernswert kreativ kombiniert.
Sie zeigten, dass die Standardkonfiguration der Datei secinfo des SAP-Gateways zu einer Schwachstelle führen kann, wenn die Konfiguration des SAP Message-Servers unsicher ist (was in der Standardkonfiguration leider der Fall ist). Ihr Vortrag war technisch sehr detailliert und sie haben auch Python-Skripte zur Nachvollziehbarkeit veröffentlicht. So weit, so gut.
Leider wurden im Anschluss an diesen Vortrag von einigen Sicherheitsfirmen (die augenscheinlich nichts mit der Forschungsarbeit von Dmitry Chastuhin und Mathieu Geli zu tun hatten) eine Welle von Pressemitteilungen und eine Flut von “Eure Systeme werden gehackt“-Mails an Unternehmen mit SAP losgetreten.
Wer diese virtuell apokalyptischen Nachrichten liest, könnte glauben, dass die eigenen SAP-Server jede Sekunde einem Angriff zum Opfer fallen.
Wir schreiben diesen Blog-Post, um wichtige Fakten dazu zu veröffentlichen und die aktuelle Unsicherheit zu verringern. Die Informationen in diesem Blog-Post wurden von erfahrenen Experten zweier weiterer SAP-Sicherheitsunternehmen (EUROSEC und akquinet) validiert.
Zuerst einmal: Wenn Sie Ihren SAP-Gateway sicher konfigurieren, wird selbst eine unsichere SAP Message Server-Konfiguration Ihr Gateway NICHT einer Remote Code Execution aussetzen.
Dmitry Chastuhin und Mathieu Geli erklären in ihrem Vortrag völlig korrekt, dass die secinfo-Einstellung zu einer Schwachstelle führen kann, wenn die SAP Message Server-Konfiguration unsicher ist. Die secinfo-Einstellung USER-HOST=LOCAL ist jedoch sicher, unabhängig davon, was Sie mit einem SAP Message-Server machen. Aber aus irgendeinem mysteriösen Grund gibt es keine Spur von dieser Informationen in den Pressemitteilungen und Warn-Emails.
Der Wert INTERNAL bedeutet, dass alle Serverinstanzen im SID-Cluster (dem man über den SAP Message Server beitreten kann) eine Verbindung zum SAP-Gateway herstellen können. Das kann ein Problem sein. Und in den meisten Fällen benötigen Kunden diesen Wert sogar im produktiven Betrieb.
Der Wert LOCAL bedeutet jedoch, dass sich nur die Netzwerkkarten der Serverinstanz, auf der das SAP-Gateway läuft, mit ihrem Gateway verbinden können. Wenn Sie Ihre secinfo-Einstellungen so konfiguriert haben, kann niemand Ihr SAP-Gateway über das Netzwerk angreifen. Weder von extern noch von intern.
Des Weiteren erfordert der im Vortrag beschriebene Gateway-Angriff einen Netzwerkzugriff auf das SAP-Gateway. Und wenn Ihre Administratoren keine Hasardeure sind, ist Ihr Gateway nicht über das Internet erreichbar. Zugegeben, ein rein interner Zugriff schützt Ihr Unternehmen nicht vor Schaden, aber dies macht die Angriffsoberfläche ziemlich übersichtlich.
Aber abgesehen davon erfordert ein erfolgreicher Angriff mehrere andere Vorraussetzungen, wie im Folgenden erläutert wird.
In der Vergangenheit wurde die gesamte Funktionalität des SAP Message Servers den Clients über einen Port zur Verfügung gestellt. Dazu gehörte auch die Möglichkeit, Applikationsserver zu registrieren, was natürlich eine schlechte Idee war. SAP hat dieses Verhalten bereits vor Jahren geändert. Der SAP-Hinweis 1421005 behandelt die sichere Konfiguration eines SAP Message Servers. Da Clients in der Lage sein müssen, sich mit einem SAP Message Server zu verbinden, wurde der Zugriff auf kritische Funktionen (z.B. die Registrierung eines Servers) an einen separaten Port - den internen Port - delegiert. Natürlich muss dieser Port (TCP 39XX) vor dem Zugriff von Clients geschützt werden. Andernfalls wäre es wenig sinnvoll, den Zugang aufzuteilen.
Aber selbst wenn dieser Port zugänglich ist, kann der SAP Message Server durch geeignete ACL-Konfigurationen geschützt werden. (Siehe SAP-Hinweise 821875 und 1495075.) Diese ACL-Konfiguration ist auch die beste Verteidigungsstrategie. Sie sollte eine Whitelist aller Anwendungsserver-Instanzen enthalten, die auf den SAP Message Server zugreifen dürfen. Dadurch wird der Zugriff von unerwünschten Systemen (mit Netzwerkzugang) verhindert.
Wenn Sie eine SIEM-Lösung betreiben, ist es auch sinnvoll, das Logging auf dem SAP Message Server zu aktivieren, damit Sie Angriffsversuche schnell erkennen können.
Wann besteht nun also ein Risiko? Die folgenden Voraussetzungen sind für die Remote-Ausführung von Code erforderlich:
1. Der interne Port des SAP Message Servers (39XX) ist gegenüber Clients / dem Intranet exponiert.
2. Die SAP Message Server ACL ist nicht (sicher) konfiguriert. Leider ist dies die SAP-Standardeinstellung.
3. Die secinfo-Konfiguration des SAP-Gateways verwendet USER-HOST=INTERNAL oder ist an sich unsicher konfiguriert. Im letzteren Fall sind Unternehmen angreifbar, unabhängig davon, wie ihr SAP Message Server konfiguriert ist.
4. Ein Angreifer benötigt physischen Zugriff auf das Netzwerk (es sei denn, das Gateway ist in Richtung Internet geöffnet).
Nur wenn alle vier Bedingungen zutreffen, stellt 10KBlaze ein zusätzliches Risiko für Ihr Unternehmen dar.
Ein weiterer Grund, Ihren SAP Message Server ausreichend abzusichern, ist der im Vortrag besprochene "Bonusangriff": Ein nicht vertrauenswürdiger Anwendungsserver - registriert über einen ungeschützten Message Server - könnte Anmeldeinformationen stehlen. Dies betrifft Sie allerdings auch nur, wenn Ihr Unternehmen kein SNC (Secure Network Communication) verwendet .
Gemeinsam mit einigen unserer Kunden haben wir den durch die Pressemitteilungen verursachten Panikmodus wieder auf Normalbetrieb runtergefahren. Bisher haben wir dabei keine zusätzlichen Risiken gesehen, die durch 10KBlaze verursacht wurden.
Unser Tipp: Wenn Ihre SAP-Administratoren auch nur entfernt auf SAP-Hinweise achten, ist es sehr wahrscheinlich, dass die von den beiden Forschern gezeigten Exploits keine Auswirkung haben. Sie sollten natürlich trotzdem Ihre Einstellungen überprüfen. Aber tun Sie dies mit Ruhe und Gelassenheit.
Xu Jia & Andreas Wiegenstein