c't 7/2018
S. 60
c’t deckt auf
Sicherheitslücke in Notruf-Protokoll
Aufmacherbild
Bild: Thomas Warnack

Security-Notruf

Sicherheitslücke in Notfall-App legt Einsatzdaten offen

Mit einem Anruf bei 112 beginnt im Hintergrund der kontinuierliche Datenaustausch zwischen Zentrale und Rettungsdiensten. c’t hat in einer App für Rettungskräfte ein Datenleck entdeckt – das bis vor kurzem Einsatzdaten inklusive detaillierten Patienteninfos offenlegte.

Lebensrettung beginnt oft mit einem Datenbankeintrag. Schon während Sie beim Anruf bei 112 einen Notfall schildern, beginnt der Mitarbeiter der Leitstelle die wichtigsten Informationen, die er von Ihnen erhält, in einem IT-System zu erfassen. Wo ist der Notfallort? Was ist passiert? Wie viele Verletzte gibt es? Welche Verletzungen und Erkrankungen liegen vor? All diese Daten werden in einer Datenbank gespeichert, ehe die Einsatzkräfte alamiert werden.

c’t hat in einem der daran beteiligten Systeme ein schwerwiegendes Datenleck entdeckt, durch das der Zugriff auf die sensiblen Einsatz- und Patientendaten möglich war. Sogar eine Manipulation der Einsatzdaten wäre möglich gewesen. Um die volle Tragweite zu verstehen, muss man die Hintergründe kennen.

Vernetzt und getrackt

Rettungswagen sind mit einigen stark vernetzten IT-Systemen ausgestattet. So sind zum Beispiel neben dem bekannten Funkgerät in vielen Rettungsdienstfahrzeugen Systeme des Typs „rescuetrack“ der Firma Convexis GmbH verbaut, die über Mobilfunk in ständiger Verbindung zu einem zentralen Server stehen. Über dieses System erhält die Fahrzeugbesatzung alle Einsatzinformationen, kann navigieren, aber auch Rückmeldungen geben und die Anmeldung an ein Klinikum vornehmen. Über ein Webinterface sehen die Beteiligten wie die Leitstelle und das Krankenhaus den Standort der Einsatzfahrzeuge in Echtzeit. Im Fahrzeug besteht das System aus drei Komponenten: Der Kommunikationseinheit, dem Navigationssystem und einem Kartenlesegerät für die Gesundheitskarte. Die Kommunikation der Komponenten untereinander erfolgt per Kabel und Bluetooth.

Außerdem befinden sich in vielen Fahrzeugen der Rettungsdienste Tablets mit spezieller Software, über welche die detaillierte medizinische Dokumentation eines jeden Einsatzes erfolgt. Eingesetzt werden können hierfür verschiedene Systeme wie die iPad-App „NaProt“ der Berliner Firma pulsation IT, die laut Hersteller unter anderem bei Rettungsdienstorganisationen wie dem Deutschen Roten Kreuz, der Johanniter-Unfall-Hilfe e. V., dem Malteser Hilfsdienst und auch der Bundespolizei zum Einsatz kommt. Über eine Million Einsätze sollen damit bisher erfasst worden sein. Das Unternehmen spricht von 2000 Einsätzen pro Tag in 900 angebundenen Fahrzeugen. Hiermit sind sie nach telefonischer Aussage Marktführer in Deutschland.

Diese Systeme können mit vielen der im Rettungswagen eingesetzten Geräte wie dem EKG per Bluetooth kommunizieren, um die damit erhobenen Daten ins Einsatzprotokoll aufzunehmen. Zudem sind die Systeme per Mobilfunk mit einem Server verbunden. Von diesem erhalten sie relevante Informationen und spielen alle im Einsatz erhobenen Daten wieder dorthin zurück. Um die Arbeit der Einsatzkräfte zu erleichtern, werden die relevanten Daten, welche die Leitstelle in ihre Datenbank einträgt, automatisch der NaProt-App zur Verfügung gestellt. NaProt erfährt auch Daten, die zum Beispiel durch Einlesen der Gesundheitskarte im System „rescuetrack“ erfasst wurden. So finden sich in der App zu Einsatzbeginn bereits häufig Name, Geburtsdatum und Adresse des Patienten sowie der Notfallort. Nach Abschluss eines jeden Einsatzes wird das Einsatzprotokoll an den Server übertragen, bleibt dort gespeichert und für einen berechtigten Personenkreis über ein Web-Portal lesbar. Trotz dieser starken Vernetzung müssen solche Daten im System natürlich gut geschützt sein.

Sicherheitscheck

Seit Jahren kann man immer wieder davon lesen: Um die IT-Sicherheit im medizinischen Bereich ist es nicht sehr gut bestellt. Immer wieder werden Fälle angreifbarer Röntgengeräte, Infusionspumpen und sogar Beatmungsgeräte bekannt. Diese Geräte stehen in Krankenhäusern und sind – hoffentlich – nicht so einfach über das Internet erreich- und attackierbar. Apps zur medizinischen Dokumentation müssen jedoch über das Internet kommunizieren; Angreifer können Sicherheitslücken also potenziell aus der Ferne ausnutzen.

Der Screenshot zeigt den Demomodus der Notfall-App mit fiktiven Einsatzdaten. Durch ein Sicherheitsleck konnte man auch auf echte Einsätze zugreifen.

Um uns einen Eindruck von der Sicherheit solcher Systeme zu verschaffen, haben wir exemplarisch einen Blick auf die iPad-App NaProt geworfen. Diese ist frei in Apples AppStore erhältlich und im Demomodus auf jedem iPad nutzbar. Wir installierten die App auf einem iPad mit Jailbreak und starteten auf einem PC den Man-in-the-Middle-Proxy Burp, um den verschlüsselten HTTPS-Traffic im Klartext mitlesen zu können. Auf den ersten Blick sah alles durchdacht und ordentlich aus: Nach einer kurzen Einführung konnte man entweder einen zwölfstelligen Aktivierungscode eingeben oder die App in der Demo-Version starten. Da wir keinen Aktivierungscode hatten, entschieden wir uns für den Demomodus. Im Traffic konnten wir anschließend beobachten, wie die App den Code 0000-0000-0000 an das Online-Backend des Herstellers übertrug. Dieses antwortete mit der Adresse eines Servers, zu dem sie anschließend eine Verbindung aufbaute. Die App authentifizierte sich mit einer leicht zu erratenden Kombination aus Benutzername und Passwort gegenüber diesem Server, was wir jedoch als unkritisch einstuften – schließlich agierte das System lediglich in einem Demonstrationsmodus. Nach der HTTP-Basic-Authentification lud die App fiktive Fahrzeug-, Mitarbeiter- und Einsatzlisten nach, mit denen wir das System ausprobieren konnten.

Fatales Datenleck

Der nächste Schritt war ein flüchtiger Blick auf die Binärdatei der App – ganz simpel in einem Hex-Editor. Dort machten wir eine überraschende Entdeckung: Fest enkodiert waren über 50 Aktivierungscodes in dem Format, das beim Start der App abgefragt wurde. Zudem waren 39 Server-Adressen und Zugangsdaten fester Bestandteil der App. Es zeigte sich, dass es sich tatsächlich um die echten Adressen der Gegenstellen handelte, die mit realen Einsatzdaten hantieren. Viele der Server waren über das Internet erreichbar. Auch die Aktivierungscodes waren offenbar gültig und ermöglichten die Nutzung der App im regulären Modus. Zu allem Überfluss waren alle Zugänge mit der gleichen Kombination aus Benutzername und Passwort geschützt – das identische Login hatten wir bereits im Demomodus gesichtet.

Die Server lieferten nach der Authentifizierung mit den bekannten Zugangsdaten bereitwillig echte Informationen über Rettungsdienstfahrzeuge, Mitarbeiter sowie laufende Einsätze inklusive Einsatzort und Notfallmeldung. Abrufen konnten wir sogar detaillierte Patientendaten wie Name, Adresse, Geburtsdatum, Details zur Krankenkasse und zum Teil die Zielklinik. Für den Datenabgriff war nicht mal die App nötig: Wer die Adresse des Backends und die Zugangsdaten kannte, konnte die sensiblen Informationen auch einfach mit dem Browser abrufen. Namen und Adressen der Patienten waren zwar teilweise gesondert verschlüsselt – die Daten ließen sich jedoch innerhalb der NaProt-App im Klartext anzeigen, schließlich lagen sämtliche zur Nutzung der App nötigen Informationen vor. Weiterhin wurden die Daten häufig zusätzlich auch unverschlüsselt übertragen. Wer böse Absichten verfolgt, hätte sogar dafür sorgen können, dass das iPad des wirklichen Rettungsmittels den Einsatz nicht mehr über NaProt erhalten hätte. Auch die Erfassung falscher Daten wäre durch das Sicherheitsleck möglich gewesen – schließlich konnte man sich als legitimer Mitarbeiter mit allen Rechten am System anmelden. Die Integrität aller bisher im System verarbeiteten Einsatzprotokolle ist hierdurch nicht mehr gewährleistet. Da im Rettungseinsatz mehrere unterschiedliche Systeme parallel laufen, hätte ein Angreifer jedoch nicht den Einsatz komplett verhindern können Dies zumindest ist beruhigend.

Hersteller alamiert

Wir hatten pulsation IT am 31. Januar über das Problem in Kenntnis gesetzt. Aufgrund der Schwere des Datenlecks und den möglichen, fatalen Auswirkungen hatten wir eine Behebungsfrist von vier Wochen vereinbart. Der Geschäftsführer von pulsation IT war sehr kooperativ: Nach nur drei Wochen wurde ein Update veröffentlicht, in das die Aktivierungscodes und Server-Adressen nicht mehr einkodiert sind. Der Hersteller verteilt diese Informationen nun per Post an seine Kunden. Zudem hat pulsation IT die verschlüsselte Kommunikation abgesichert: Die App nutzt in der neuen Version Certificate Pinning, um das eingesetzte SSL/TLS-Zertifikat genauer zu überprüfen. Damit kann man sich nicht mehr so einfach mit einem Analyseproxy in den verschlüsselten Datenverkehr einklinken.

Auch die Zugangsdaten für den Zugriff auf die Backend-Server wurden geändert. Die Server müssen allerdings aktualisiert werden, damit sie nicht länger über die ehemals in der App enthaltene Kombination aus Benutername und Passwort erreichbar sind. Dieser Vorgang ist offenbar noch im Gang: Am 11. März war es bei Kenntnis der richtigen URLs mit dem alten Login noch immer möglich, auf einige mit NaProt verwaltete Einsätze in Deutschland zuzugreifen. Weitere Verbesserungen sollen nach Aussage von pulsation IT im Laufe der kommenden Wochen folgen. (rei@ct.de)