Preisgabe von Tastenschloss-Codes bei Check-in-Terminal von IBIS-Hotel

Nach einem Hackerkongress in Hamburg stellte Pentagrid fest, dass ein Check-in-Terminal eines IBIS-Budget-Hotels die Tastencodes von fast der Hälfte der Hotelzimmer preisgab, wenn ein Benutzer nach einer bestimmten Form einer nicht alphanumerischen Buchungsnummer suchte. Der Zugang zu den Hotelzimmern ermöglicht den Diebstahl von Wertsachen, insbesondere wenn Low-Budget-Hotelzimmer nicht mit einem Zimmersafe ausgestattet sind. Der Hotelkettenbetreiber Accor hat das Problem nach eigenen Angaben mittlerweile behoben.

Timeline

  • 2023-12-31: Schwachstelle in einem Check-in-Terminal in Hamburg gefunden.

  • 2024-01-01: Erster mündlicher Bericht der Schwachstelle an den Franchisenehmer Sczygiel Hotelmanagement GmbH.

  • 2024-01-02: Erster Entwurf des Advisories.

  • 2024-01-02: security.txt für ibis.accor.com gefunden, welche auf das Yagosha-Portal als Kontakt für die Meldung von Sicherheitslücken verweist. Dieses Programm erfordert eine schriftliche Zustimmung zur Veröffentlichung, was nicht zur Coordinated Disclosure Policy von Pentagrid passt. Eine ältere Version der security.txt listet security@accor.com als Kontakt auf, was auch der GPG-Key-Identity in der aktuellen security.txt entspricht.

  • 2024-01-02: Erster Kontakt mit security@accor.com.

  • 2024-01-02: Status an den Franchisenehmer kommuniziert.

  • 2024-01-03: Antwort von security@accor.com mit Wunsch, die Schwachstelle nicht öffentlich zu kommunizieren und das Yagosha-Programm zu nutzen.

  • 2024-01-03: Versuch, das weitere Vorgehen und den Veröffentlichungsmodus zu klären.

  • 2024-01-11: Nach Ausbleiben einer Antwort erneuter Kontakt mit Accor-Sicherheitsteam und Übermittlung von Details zur Schwachstelle. Fristsetzung für erste Reaktion bis 2024-01-15.

  • 2024-01-11: Antwort des Sicherheitsteams, dass sie keine Einreichungen per E-Mail akzeptieren, sondern nur über das Yogosha-Programm, und dass Pentagrid davon absehen sollte, weitere Mails über den E-Mail-Kanal zu versenden.

  • 2024-01-11: Pentagrid informierte, dass die Konsequenz einer nicht fristgerechten Antwort die Veröffentlichung der Schwachstelle ist, in diesem speziellen Fall zumindest vorübergehend ohne Details, die eine Ausnutzung ermöglichen.

  • 2024-01-16: Frist für die Veröffentlichung nach 14 Tagen, wenn keine Reaktion erfolgt, gemäß eingangs mitgeteilter Coordinated Disclosure Policy von Pentagrid. Vorzeitige Veröffentlichung wurde jedoch verschoben.

  • 2024-01-18: Pentagrid bat Accor Security um einen Status bezüglich der Problemverifizierung und des Zeitplans für die Behebung.

  • 2024-01-25: Statusanfrage wegen ausbleibender Antwort wiederholt.

  • 2024-01-26: Accor bestätigte die Reproduzierbarkeit des Problems und die Behebung bei betroffenen Terminals.

  • 2024-04-02: Deadline für Veröffentlichung nach 90 Tagen und Veröffentlichung des Advisories.

Preisgabe von Tastenschloss-Codes

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

Betroffene Komponenten

Pentagrid identifizierte die Schwachstelle bei dem Check-in-Terminal mit der ID 2711 in Hamburg Altona. Der Hersteller und das Produkt des Terminals sind Pentagrid nicht bekannt. Wahrscheinlich sind auch andere Terminals betroffen. Laut einer Google-Bildersuche für diese Art von Check-in-Automaten werden sie bei mehreren Hotels der Marke IBIS Budget in Deutschland und anderen europäischen Ländern eingesetzt.

Zusammenfassung

Wenn die Hotelrezeption nicht besetzt ist, können die Gäste über ein Terminal einchecken. Das Terminal unterstützt auch die Abfrage von bestehenden Buchungen. Mit einer Buchungs-ID können die Gäste ihre Zimmernummer und ihren Tastenschloss-Code anzeigen. Bei Eingabe von "------" als Buchungs-ID listet das Check-in-Terminal jedoch auch die Buchungen und Tastaturcodes anderer Gäste auf.

Auswirkung

Das Check-in-Terminal gibt sensible Informationen wie die Zimmernummer und die Tastenschloss-Codes preis. Der Tastenschloss-Code ändert sich während des Aufenthalts nicht. Daher ermöglichen die Informationen über den Tastenschloss-Code den physischen Zugang zu den Hotelzimmern.

Technische Details

Für die Suche nach bestehenden Buchungen gibt ein Gast die Buchungs-ID ein. Soweit gesehen, handelt es sich dabei um einen achtstelligen Code. Mit einer gegebenen Buchungs-ID kann ein Gast dann die Zimmernummer und den Tastenschloss-Code des Hotelzimmers nachsehen. Der Tastenschloss-Code ist ein sechsstelliger numerischer Code.

Bei einer ungültigen Buchungs-ID zeigt das Terminal eine Meldung an, dass die Buchungs-ID nicht bekannt ist. Wenn ein Gast keine Buchungs-ID eingibt und stattdessen beispielsweise "------", listet das Check-in-Terminal vorhandene Buchungen auf. Jede andere Folge von Bindestrichen wird ebenfalls akzeptiert, wenn sie lang genug ist, um die Schaltfläche "Senden" zu aktivieren. Wegen der variablen Länge wird davon ausgegangen, dass es sich nicht um einen Mastercode, sondern um einen Fehler oder ein nicht deaktivierte Testfunktion handelt.

Eingabe von mindestens sechs Bindestrichen als Buchungscode, bis die Schaltfläche "Senden" aktiviert wird.

Die Liste der Buchungen enthält die Buchungs-ID, einen Zeitstempel (wahrscheinlich das erwartete Ankunftsdatum) und den Gesamtpreis, der einen Hinweis auf die Aufenthaltsdauer des Gastes geben kann.

Ein Ausschnitt der Buchungen aus der Buchungsliste. Die Buchungscodes sind maskiert.

Bei Auswahl einer Buchung werden die Zimmernummer und der Tastenschloss-Code angezeigt, der den Zugang zu den Hotelzimmern anderer Gäste ermöglicht.

Auf dem Bildschirm des Check-in-Terminals werden die Zimmernummer und der Tastenschloss-Code angezeigt (maskiert).

Ein Demonstrationsvideo haben wir auf Vimeo veröffentlicht.

Das Hotel, in dem der Befund festgestellt wurde, hatte 87 Buchungseinträge in der Liste. Nach Angaben des Empfangspersonals verfügt das Hotel über 180 Zimmer.

Nur eine Buchungs-ID zu verlangen, um den Zimmercode zu erhalten, ist für den Gast einfach, aber potenziell mit Risiko behaftet. Buchungs-IDs können durch weggeworfene Rechnungen und Ausdrucke öffentlich werden.

Vorbedingung

Ein Angreifer benötigt physischen Zugang zu einem Check-in-Terminal. Das Terminal muss sich in einem Zustand befinden, in dem es eine Nutzung zulässt, zum Beispiel während der Nachtstunden. Weitere Voraussetzungen sind Pentagrid nicht bekannt, könnten aber vorhanden sein.

Empfehlung

Empfehlungen für Accor/IBIS und den Hersteller:

  • Die Schwachstelle sollte behoben werden. Dabei sollte die Angabe einer gültigen Buchungsnummer erforderlich sein.

  • Das Terminal sollte nach weiteren Daten fragen, die normalerweise nicht in Buchungsbestätigungen oder Rechnungen dokumentiert sind. Andernfalls könnte eine weggeworfene Rechnung oder Buchungsbestätigung einen Zugang zu einem Hotelzimmer ermöglichen. Dies könnte ein PIN-Code sein, da Menschen einen PIN-Code in der Regel als vertrauliche Information erkennen und eher darauf achten, diese Information nicht preiszugeben.

  • Betroffene Hotels sollten so früh wie möglich über die Sicherheitslücke informiert werden und Empfehlungen für erste Maßnahmen erhalten. Sobald eine Lösung verfügbar ist, sollten die Empfehlungen für Maßnahmen aktualisiert und die Hotels über die Änderung informiert werden.

  • Buchungen sollten vorsichtshalber so früh wie möglich aus dem Terminal entfernt werden, zum Beispiel nach dem Ausdrucken der Zimmerdaten oder nach dem Einsehen der Buchung.

Empfehlungen für Franchisenehmer:

  • Das Terminal sollte deaktiviert werden, solange das Problem nicht behoben ist.

  • Sobald Softwareaktualisierungen verfügbar sind, sollte der Franchisenehmer das Software-Update installieren und überprüfen, ob das Problem gelöst ist.

Credits

Das Sicherheitsproblem wurde versehentlich von Martin '------' Schobert (Pentagrid) gefunden.