Kritischer Sage X3 RCE-Fehler ermöglicht vollständige Systemübernahme

  • Sicherheitslücken in der ERP-Plattform könnten es Angreifern ermöglichen, geschäftskritische Prozesse der Opfer zu manipulieren oder zu sabotieren und Daten abzufangen.

    Vier Schwachstellen betreffen die beliebte Sage X3 Enterprise Resource Planning (ERP)-Plattform, fanden Forscher heraus – darunter ein kritischer Fehler, der auf der CVSS-Schweregrad-Skala mit 10 von 10 bewertet wird. Zwei der Fehler könnten miteinander verkettet werden, um komplette Systemübernahmen zu ermöglichen, mit potenziellen Auswirkungen auf die Lieferkette, sagten sie.

    Sage X3 richtet sich an mittelständische Unternehmen – vor allem an Hersteller und Händler -, die eine All-in-One-ERP-Funktionalität suchen. Das System verwaltet Vertrieb, Finanzen, Lager, Einkauf, Kundenbeziehungsmanagement und Fertigung in einer integrierten ERP-Softwarelösung.

    Die Rapid7-Forscher Jonathan Peterson, Aaron Herndon, Cale Black, Ryan Villarreal und William Vu, die die Schwachstellen (CVE-2020-7387 bis -7390) entdeckten, sagten, dass die schwerwiegendsten der Fehler in der Remote-Administrator-Funktion der Plattform bestehen. Sie sagten, dass ein erfolgreicher Angriff Auswirkungen auf die Versorgungskette (a la Kaseya) haben könnte, wenn die Plattform von Managed Service Providern genutzt wird, um Funktionen für andere Unternehmen bereitzustellen.

    “Bei der Kombination von CVE-2020-7387 und CVE-2020-7388 kann ein Angreifer zunächst den Installationspfad der betroffenen Software in Erfahrung bringen und diese Informationen dann verwenden, um Befehle an das Host-System weiterzuleiten, die im SYSTEM-Kontext ausgeführt werden sollen”, so die Forscher in einem Posting vom Mittwoch. “Dies kann es einem Angreifer ermöglichen, beliebige Betriebssystembefehle auszuführen, um Benutzer auf Administrator-Ebene zu erstellen, bösartige Software zu installieren und anderweitig die vollständige Kontrolle über das System für beliebige Zwecke zu übernehmen.”

    Kritische Authentifizierungs-Bypass-Sicherheitsschwachstelle

    Der kritische Fehler (CVE-2020-7388) ermöglicht laut Rapid7 eine unauthentifizierte Remote-Befehlsausführung (RCE) mit erhöhten Rechten in der Komponente AdxDSrv.exe. AdxAdmin ist eine Funktion, die für die Remote-Administration von Sage X3 über die Hauptkonsole verantwortlich ist, so die Forscher – und ein Exploit könnte einem Angreifer erlauben, Befehle auf dem Server als hochprivilegierter “NT AUTHORITY/SYSTEM”-Benutzer auszuführen.

    Der administrative Dienst wird standardmäßig auf Port TCP/1818 unter dem Prozess “AdxDSrv.exe” ausgeführt. Das Problem liegt laut Rapid7 in dem benutzerdefinierten Protokoll, das Sage X3 für die Interaktion zwischen der Sage X3-Konsole und AdxDSrv.exe verwendet.

    Die Sage X3-Konsole erstellt eine Authentifizierungsanfrage mit einer Byte-Sequenz, die ein Passwort enthält, das mit einem benutzerdefinierten Mechanismus verschlüsselt wurde. Als Antwort sendet die AdxDSrv.exe vier Bytes, die anzeigen, dass die Authentifizierung erfolgreich war.

    “Diese Bytes werden immer mit x00x00 vorangestellt und dann zwei scheinbar zufällige Bytes, etwa so: ‘x00x00x00x08x14′”, so die Forscher.

    Nach Erhalt einer Antwort, dass die Authentifizierung erfolgreich war, ist es dann möglich, Remote-Befehle auszuführen, so der Hinweis.

    “Zuerst wird das temporäre Verzeichnis vom Client mit dem Namen der cmd-Datei angegeben, die auf den Server geschrieben werden soll”, erklären die Forscher. “Die Batch-Datei mit dem angegebenen cmd-Dateinamen wird auf die Festplatte geschrieben und enthält den Befehl ‘whoami’. Nachdem der Dienst AdxDSrv.exe die temporäre Batch-Datei in den genannten Ordner geschrieben hat, führt er sie unter dem Sicherheitskontext der angegebenen Benutzeranmeldeinformationen über einen Windows-API-Aufruf an CreateProcessAsUserAs aus.”

    Um das Problem auszunutzen und den Authentifizierungsprozess zu umgehen, könnte ein böswilliger Akteur eine spezielle Anfrage an den exponierten Dienst stellen. Der Cyberangreifer müsste zwei Komponenten umgehen, die am Senden eines auszuführenden Befehls beteiligt sind, so die Forscher.

    Erstens muss der Angreifer das Installationsverzeichnis des AdxAdmin-Dienstes kennen, damit er den vollständigen Pfad angeben kann, in den die auszuführende cmd-Datei geschrieben werden soll.

    “Das Installationsverzeichnis zu erlangen, kann entweder mit Vorkenntnissen, durch geschickte Vermutungen oder über eine nicht authentifizierte, entfernte Sicherheitslücke zur Offenlegung von Informationen (CVE-2020-7387) erfolgen”, so die Forscher. “Die Namen der Installationspfade sind bei der meisten Unternehmenssoftware ziemlich vorhersehbar – fast alle Benutzer installieren in ein Standardverzeichnis auf einem der wenigen Laufwerksbuchstaben.”

    Zweitens müssen die Angreifer die Autorisierungssequenz verwechseln, die das verschlüsselte Kennwort enthält. Dies kann mit einer Reihe von Paketen geschehen, die das Authentifizierungs- und Befehlsprotokoll von AdxDSrv.exe vortäuschen, allerdings mit einer entscheidenden Änderung.

    “Ein Angreifer kann einfach ein Byte austauschen und den Dienst dazu bringen, die bereitgestellten Benutzeranmeldeinformationen zu ignorieren und stattdessen unter dem aktuellen Sicherheitskontext des Prozesses AdxDSrv.exe auszuführen, der als NT AUTHORITYSYSTEM läuft”, erklärten die Forscher. “Ein bisschen Fuzzing hat ergeben, dass die Verwendung von ‘0x06’ anstelle von ‘0x6a’ während des Starts der Autorisierungssequenz erlaubt [the client] die Authentifizierung komplett zu umgehen. In diesem Modus wird der angeforderte Befehl als SYSTEM ausgeführt, anstatt sich als ein bereitgestelltes Benutzerkonto auszugeben.”

    Das Problem betrifft die Versionen V9, V11 und V12 der Plattform.

    Mittelschwere Bugs in Sage X3

    Die anderen drei Probleme werden als mittelschwer eingestuft:

    • CVE-2020-7387: Offenlegung sensibler Informationen für einen nicht autorisierten Akteur in AdxAdmin (CVSS-Rating 5.3, betrifft die Versionen V9, V11 und V12)
    • CVE-2020-7389: Fehlende Authentifizierung für kritische Funktion in der Entwicklerumgebung in Syracuse (CVSS-Rating 5.5, betrifft die Versionen V9, V11 und V12)
    • CVE-2020-7390: Persistent Cross-Site Scripting (XSS) in Syracuse (CVSS-Einstufung von 4.6, betrifft nur V12). Dieses Problem wurde laut Rapid7 bereits im Januar von Vivek Srivastav von Cobalt Labs an den Hersteller gemeldet.

    Wie bereits erwähnt, erlaubt der als CVE-2020-7387 verfolgte Fehler Angreifern, den Pfadnamen für das benötigte Installationsverzeichnis aufzudecken, um damit den kritischen RCE-Fehler auszunutzen.

    “Beim Fuzzing des Authentifizierungs- und Befehlsprotokolls, das von AdxAdmin.exe verwendet wird, wie in CVE-2020-7388 beschrieben, wurde entdeckt, dass das Senden des ersten Bytes als ‘0x09’ statt ‘0x6a’ mit drei nachgestellten Null-Bytes das Installationsverzeichnis zurückgibt, ohne dass eine Authentifizierung erforderlich ist”, erklärten die Forscher.

    In der Zwischenzeit ist CVE-2020-7389 ein System CHAINE Variable Skript Befehlsinjektion Fehler – aber Sage sagte, dass es nicht das Problem zu beheben, da die Funktionalität, wo der Fehler lebt sollte nur in Entwicklungsumgebungen, nicht in Produktionsumgebungen zur Verfügung stehen.

    “Einige Web-Anwendungsskripte, die die Verwendung der ‘System’-Funktion erlaubten, konnten mit der ‘CHAINE’-Variablen gepaart werden, um beliebige Befehle auszuführen, einschließlich solcher, die von einer entfernten SMB-Freigabe stammten”, so die Analyse. “Die Seite ist über die Menüpunkte Entwicklung -> Skript-Wörterbuch -> Skripte zu erreichen.”

    Und schließlich handelt es sich bei der Sicherheitslücke CVE-2020-7390 um einen Stored-XSS-Bug. Gespeicherte XSS, auch bekannt als persistentes XSS, tritt auf, wenn ein bösartiges Skript direkt in eine verwundbare Webanwendung injiziert wird. Im Gegensatz zu reflektiertem XSS erfordert ein gespeicherter Angriff nur, dass ein Opfer eine kompromittierte Webseite besucht. In diesem Fall besteht das Problem auf der Seite “Bearbeiten” für Benutzerprofile, wobei die Felder für Vorname, Nachname und E-Mail-Felder anfällig für eine gespeicherte XSS-Sequenz sind, so die Forscher.

    Ein erfolgreicher Exploit könnte es einem normalen Benutzer von Sage X3 ermöglichen, privilegierte Funktionen als aktuell angemeldeter Administrator auszuführen oder Administrator-Sitzungs-Cookies für eine spätere Impersonation als aktuell angemeldeter Administrator zu erfassen, so Rapid7.

    “[The bug] kann nur von einem authentifizierten Benutzer ausgelöst werden und erfordert Benutzerinteraktion [convincing the authenticated person to visit the correct webpage] um den Angriff abzuschließen”, erklärten die Forscher.

    Patching-Informationen für Sage ERP-Sicherheitslücken

    Die drei in Frage kommenden Sicherheitslücken wurden in aktuellen Versionen für Sage X3 Version 9 (die Komponenten, die mit Syracuse 9.22.7.2 ausgeliefert werden), Sage X3 HR & Payroll Version 9 (die Komponenten, die mit Syracuse 9.24.1.3 ausgeliefert werden), Sage X3 Version 11 (Syracuse v11.25.2.6) und Sage X3 Version 12 (Syracuse v12.10.2.8) behoben. Hinweis: Es gab keine kommerziell erhältliche Version 10 von Sage X3.

    Wenn die Updates nicht sofort eingespielt werden können, haben Kunden laut Rapid7 andere Möglichkeiten zur Behebung:

    • Für CVE-2020-7388 und CVE-2020-7387 darf der TCP-Port AdxDSrv.exe auf keinem Host, auf dem Sage X3 läuft, dem Internet oder anderen nicht vertrauenswürdigen Netzwerken ausgesetzt werden. Als weitere Vorbeugungsmaßnahme sollte der AdxAdmin-Dienst während der Produktion vollständig gestoppt werden.
    • Wegen CVE-2020-7389 sollten Benutzer diese Webapp-Schnittstelle nicht dem Internet oder anderen nicht vertrauenswürdigen Netzwerken aussetzen. Darüber hinaus sollten Benutzer von Sage X3 sicherstellen, dass die Entwicklungsfunktionalität nicht in Produktionsumgebungen verfügbar ist. Weitere Informationen dazu finden Sie in der Dokumentation der Best Practices des Herstellers.
    • Für den Fall, dass eine Netzwerksegmentierung aufgrund von geschäftskritischen Funktionen nicht möglich ist, sollten nur Benutzer, die mit der Systemadministration der Maschinen, auf denen Sage X3 gehostet wird, betraut sind, einen Login-Zugang zur Webanwendung erhalten.

    “Generell sollten Sage X3-Installationen nicht direkt dem Internet ausgesetzt sein, sondern bei Bedarf über eine sichere VPN-Verbindung zur Verfügung gestellt werden”, heißt es in der Analyse. “Durch die Befolgung dieser operativen Ratschläge werden alle vier Schwachstellen effektiv entschärft, obwohl die Kunden immer noch dazu angehalten sind, gemäß ihrer üblichen Patch-Zyklen zu aktualisieren.”

    Schauen Sie sich unsere kommenden kostenlosen Live- und On-Demand-Webinar-Veranstaltungen an – einzigartige, dynamische Diskussionen mit Cybersecurity-Experten und der Threatpost-Community.

    [Blocked Image: https://media.threatpost.com/wp-content/uploads/sites/103/2021/07/07140358/ERP-e1625681098750.jpg]

    Einige Teile dieses Artikels stammen aus:
    threatpost.com