Kiosk-Modus-Bypass bei Hotel-Check-in-Terminal mit Ariane Allegro Scenario Player

Ein Threat-Modelling-Workshop verschlug uns an einen entfernt gelegenen Ort mit neuem Hotel. Das Hotel war so klein, dass es kein Personal für den Check-in gab, dafür aber ein Selbstbedienungs-Terminal für den Check-in. Es passierte, was passieren musste.

Das Hotel-Check-in-Terminal basiert auf dem Ariane Allegro Scenario Player. Die Software läuft in einem Kiosk-Modus. Bei Eingabe eines Anführungszeichens in die Gästesuche stürzte die Anwendung ab und beendete den Kiosk-Modus. Dadurch war ein Zugriff auf den Windows-Desktop möglich. Nach Angaben von Ariane war in dem neuen Hotel eine alte Softwareversion installiert.

Nach Eigenangaben von Ariane Systems, ist Ariane "der weltweit führende Anbieter von Self-Check-in und Check-out Lösungen für die Hotelbranche. [...] Ariane bedient derzeit 3.000 Hotels und 500.000 Zimmer in mehr als 25 Ländern. Dazu gehört ein Drittel der 100 größten Hotelketten weltweit."

Timeline

  • 2024-03-05: Verwundbarkeit entdeckt in einem Check-in-Terminal.

  • 2024-03-06: Vorläufiges Advisory verschriftlicht.

  • 2024-03-06: Informationen zur Verwundbarkeit an den betroffenen Hotelbetrieb gesendet und nach Versionsinformationen gefragt.

  • 2024-03-07: Kontaktinformationen für das Mitteilen von Schwachstellen an Ariane Systems recherchiert. Der Hersteller nutzt für die Kontaktmitteilung weder security.txt noch einen entsprechenden TXT-Record im DNS. Auf der Herstellerwebseite gibt es keinen Hinweis auf ein Produktsicherheitsteam. Daher kontaktierte Pentagrid initial den Support via support@ariane.com.

  • 2024-03-14: Erneute Kontaktaufnahme über den Support von Ariane Systems, da keine Rückmeldung erfolgte.

  • 2024-03-14: Statusinformation an das betroffene Hotel gesendet.

  • 2024-03-14: Kontaktaufnahme mit technischem Leiter und Chief Product Officer von Ariane Systems via Linkedin. Der Chief Product Officer empfahl, sich an dataprivacy@ariane.com zu wenden.

  • 2024-03-14: E-Mail an dataprivacy@ariane.com gesendet.

  • 2024-03-14: Überprüfung anhand von eigenen Mailserverlogs, ob alle E-Mails früherer Kommunikationsversuche vom Mailserver von Ariane Systems empfangen wurden.

  • 2024-03-15: Versucht, über Linkedin eine Empfangsbestätigung vom Chief Product Officer zu erhalten, nachdem Rückmeldung ausblieb.

  • 2024-03-18: Kontaktierungsversuch Chief Product Officer per E-Mail mittels Erraten der E-Mail-Adresse wegen ausbleibender Antwort, aber das Erraten der E-Mail-Adresse ist fehlgeschlagen.

  • 2024-03-18: Kontaktaufnahme Chief Product Officer via Linkedin zur Bestätigung des Mailerhalts.

  • 2024-03-18: Öffentlich Kontaktaufnahme mit Ariane System's via Linkedin.

  • 2024-03-18: Übermittlung der Details zur Verwundbarkeit an dataprivacy@ariane.com nach erster Kontaktbestätigung via E-Mail.

  • 2024-03-18: Gemäß Ariane Systems erster Reaktion handelt es sich um Altsysteme, die USB-Ports seien deaktiviert und Mitteilung dass „keine personenbezogenen Daten oder verwertbaren Daten vom Kiosk abgerufen werden können“.

  • 2024-03-25: Rückmeldung an Ariane Systems und Bestreiten der Behauptung, dass keine personenbezogenen Daten abgerufen werden können, da das Terminal als Teil des Systemdesigns Rechnungsdateien erstellt und zugänglich hält.

  • 2024-04-11: Call mit Ariane Systems.

  • 2024-05-31: Status bei Ariane Systems angefragt, aber ohne Antwort.

  • 2024-06-05: Veröffentlichung nach 90 Tagen.

  • 2024-06-06: CVE-2024-37364 wurde zugewiesen.

Umgehung des Kios-Modus

CVSS:3.1/AV:P/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H, 6.8 Mittel

Betroffene Komponenten

Bei dem Check-in-Terminal handelt es sich wahrscheinlich um ein Terminal der Serie Ariane Duo 6000. Auf diesem läuft die Software Ariane Allegro Scenario Player.

Eine Hotelkette in Liechtenstein und der Schweiz nutzt das Check-in-Terminal für kleinere Hotelstandorte. Das Check-in-Terminal unterstützt sowohl die Zimmerbuchung als auch das Einchecken im Hotel. Es leitet den Zahlungsvorgang über ein POS-Terminal ein, stellt RFID-Transponder für die Hotelzimmeröffnung aus und druckt eine Rechnung.

Zusammenfassung

Das Check-in-Terminal ermöglicht die Suche nach bestehenden Zimmerreservierungen. Reservierungen können mittels Buchungscode oder Nachnamen gesucht werden. Wenn man eine Reservierung anhand eines Namens sucht und der Name ein Hochkomma enthält, hängt der Allegro Scenario Player. Bei erneutem Berühren des Touchscreens fragt Windows, ob die Anwendung beendet werden soll. Das Beenden der Anwendung beendet dann auch den Kiosk-Modus.

Auswirkung

Wenn die Anwendung gestoppt wird, wird der Kiosk-Modus beendet und man erhält Zugriff auf einen Windows-Desktop.

Mit dem Zugriff auf den Windows-Desktop werden Angriffe auf das Hotelnetz möglich, ebenso wie der Zugriff auf die auf dem Terminal gespeicherten Daten, einschließlich personenbezogener Daten, Reservierungen und Rechnungen. Mit der Möglichkeit eigenen Programmcode einzuschleusen und auszuführen, wäre es möglich, Zimmerschlüssel für andere Zimmer zu erstellen, da die Funktionalität zur RFID-Transponderprovisionierung auf dem Terminal implementiert ist.

Technische Details

Bei Suche einer bestehenden Reservierung anhand eines Nachnamens und Eingabe eines zusätzlichen Hochkommas bleibt die Anwendung hängen. Eine Beispieleingabe, die diesen Effekt verursacht, ist „O'YOLO“.

Eingabe eines Namens in das Suchfeld mit einem einfachen Anführungszeichen. In diesem Beispiel wird „O'YOLO“ eingegeben. Das Logo der Hotelkette ist im Foto maskiert.

Die Anwendung bleibt hängen. Bei erneutem Berühren des Elo-Displays fragt Windows, ob die Anwendung beendet oder weiter gewartet werden soll.

Windows fragt, ob die Anwendung fortgeführt oder gestoppt werden soll.

Bei Abbruch der Anwendung wird der Windows-Desktop sichtbar.

Der Windows-Desktop ist nach dem Beenden des Kiosk-Modus zugreifbar.

Vorbedingung

Ein Angreifer benötigt physischen Zugang zu einem Check-in-Terminal und je nach Angriffsvorbereitung zusätzliche Zeit am Terminal. Das Terminal muss sich in einem Zustand befinden, in dem es Selbstbedienung zulässt, beispielsweise wenn es nur abends aktiviert wäre.

Empfehlung

Nach Angaben von Ariane Systems wurde das Problem im Allegro Scenario Player behoben. Pentagrid empfiehlt daher Hotels, welche das Terminal nutzen:

  • sicherzustellen, dass eine aktuelle Version der Software installiert ist. Die Version, die das Problem behebt, ist Pentagrid nicht bekannt. Daher wäre Ariane Systems zu fragen.

  • Check-in-Terminals zu isolieren, so dass bei Kompromittierung kein Angriff auf weitere Infrastruktur möglich wird.

Credits

Die Verwundbarkeit wurde versehentlich von Martin "O'YOLO" Schobert (Pentagrid) entdeckt.