Menü
Security

Vivy: Gravierende Sicherheitsmängel in Krankenkassen-App aufgedeckt

Die App, die bei Millionen von Versicherten und 16 Kassen im Einsatz ist, hatte schwerwiegende Sicherheitsmängel. Die Verantwortlichen sehen das anders.

Von
vorlesen Drucken Kommentare lesen 221 Beiträge
Vivy: Gravierende Sicherheitsmängel in Krankenkassen-App aufgedeckt

Sicherheitsforscher sind mit der Absicherung der digitalen Krankenakte der App Vivy nicht zufrieden.

(Bild: dpa, Michael Kappeler)

Seit Mitte September können rund 13,5 Millionen Kunden von 14 gesetzlichen und zwei privaten Krankenversicherungen ihre Krankenakte digital in der App Vivy verwalten. Direkt nach dem Start geriet die App heftig in die Kritik, da die Entwickler eine Reihe von Tracking-Tools eingebaut hatten – das wiederum rief Datenschützer auf den Plan und die Entwickler mussten nachbessern. Jetzt steht den App-Entwicklern allerdings ein noch größerer Aufschrei ins Haus, da Sicherheitsforscher schwerwiegende Mängel bei der Sicherheit der App und der damit verbundenen Server-Infrastruktur entdeckt haben. Die gefundenen Mängel stellen sich als besonders peinlich dar, weil die Vivy-Macher seit dem Start ihrer App lautstark mit deren Sicherheit Werbung machen.

Da war es eigentlich nur eine Frage der Zeit, bis findige Sicherheitsforscher Lücken im Panzer der Patienten-App finden. Und tatsächlich haben Mitarbeiter der Firma Modzero schon am 21. September eine Reihe von Sicherheitslücken an die Entwickler gemeldet. Da die Schwachstellen mittlerweile behoben wurden, gingen die Forscher jetzt mit ihren Erkenntnissen an die Öffentlichkeit. Zum einen haben sie konzeptionelle Schwächen in einer Funktion ausgemacht, mit der Patienten kurzfristig Dokumente mit ihrem Arzt teilen können – diese Funktion war nur schlecht vor neugierigen Dritten geschützt. Zum andern war die Ende-zu-Ende-Verschlüsselung der App nicht so sauber programmiert, wie man sich das eigentlich wünschen würde. Durch Schwächen in der Schlüsselverwaltung hätten Angreifer so etwa die geheimen Schlüssel der Ärzte auslesen und Daten entschlüsseln können.

Die Vivy-App enthält eine Funktion, mittels der ein Patient vom Smartphone aus Dokumente mit seinem Arzt teilen kann. Das ist für die kurzfristige Benutzung in der Praxis gedacht und wurde deshalb wohl von den App-Entwicklern aus Sicherheits-Gesichtspunkten etwas stiefmütterlich behandelt. Das Dokument wurde unter einer pseudozufälligen Kennung, bestehend aus fünf Kleinbuchstaben, unter der Domain vivy.com öffentlich erreichbar gemacht. Schlimm genug, dass ein Angreifer mögliche Dokumenten-URLs relativ einfach per Gewalt herausfinden und abrufen konnte. Darüber hinaus wurden die URLs von der App aber auch noch an insgesamt vier Drittanbieter in den USA und in Singapur geschickt.

Um die Dokumente abzurufen, hätte der Angreifer eine vierstellige PIN eingeben müssen. Auch die hätte man allerdings durch stumpfes Probieren herausfinden können. Vivy hatte hier nach eigenen Angaben Bruteforce-Schutzmaßnahmen eingebaut. Diese hielten die Forscher von Modzero aber laut ihres Berichtes nicht erfolgreich vom Angriff auf die Dokumente ab. Falls das Dokument bereits vom Arzt abgerufen wurde, wenn der Angreifer sich Zugriff verschafft, geht dieser trotzdem nicht leer aus. Die Antwort des Servers enthielt immerhin den Klarnamen, das Geburtsdatum, die E-Mail-Adresse, die Versicherung und die Versicherungsnummer des Patienten. Außerdem wird der behandelnde Arzt in der Server-Antwort genannt.

Sollte der Angreifer allerdings Zugriff erhalten, bevor der Arzt das Dokument abgerufen hat, hat ein Angriff noch weitaus schwerwiegendere Konsequenzen. Der Angreifer kann dem Arzt nun nämlich einen beliebigen öffentlichen Schlüssel unterschieben. Weder das Server-Backend noch die empfangende App prüfen diesen Schlüssel. Da der Angreifer das geheime Gegenstück zu diesem öffentlichen Schlüssel besitzt, kann er die mit dem öffentlichen Schlüssel gesicherten Dokumente entschlüsseln.

Die viel beworbene Ende-zu-Ende-Verschlüsselung (E2E) der App hatte laut den Sicherheitsforschern ebenfalls einige Mängel. Das erste Problem ergibt sich schon aus den Designentscheidungen der Plattform: Ein Ende des E2E-Kanals ist die Smartphone-App, beim Arzt endet die Verbindung allerdings im Browser. Die Implementierung als Web-App ist hier wenig ideal, da der Nutzer kaum Kontrolle darüber hat, welcher Code auf seinem System ausgeführt wird. Ein Angreifer, der in die Vivy-Server eindringt, könnte so etwa die Ende-zu-Ende-Verschlüsselung durch Manipulation der Web-App aushebeln – eigentliche soll E2E-Verschlüsselung die Nutzer ja gerade vor kompromittierten Servern schützen.

Modzero fand außerdem eine Reihe von groben Cross-Site-Scripting-Fehlern in der Web-App, über die ein Patient etwa eigenen Code im Browser eines Arztes hätte ausführen können. So hätten sie etwa einem manipulierten Nutzerbild dessen System angreifen und private Schlüssel des Arztes extrahieren können. Auch die bei der Ende-zu-Ende-Verschlüsselung zum Einsatz kommenden Techniken entsprachen zum Teil nicht der Höhe der Zeit. Unter anderem kam Cipher Block Chaining (CBC) zum Einsatz, eine Technik, die verschlüsselte Daten nicht vor bösartiger Manipulation schützt – das könnte schlimmstenfalls ähnliche Angriffsmöglichkeiten wie im bei der Efail-Lücke eröffnen.

Die Sicherheitsforscher von Modzero haben ihre Erkenntnisse in einem sehr detaillierten Report zusammengefasst. In einer eigenen Stellungnahme versuchen die Vivy-Entwickler diese Darstellung hingegen zu relativieren. Sie bezeichnen die sehr konkreten Angriffsszenarien der Sicherheitsforscher als "eine Reihe hypothetischer Angriffsmöglichkeiten". Die Entwickler betonen, dass Angreifer für einen Großteil der Angriffe den Rechner eines Arztes oder eine Smartphone-Installation der Vivy-App hätte kompromittieren müssen, um die Angriffe auszuführen. Die Stellungnahme lässt offen, warum die Entwickler dies als große Hürde für einen eben solchen Angriff betrachten. Auch ihr Einwand, Angreifer hätten so nur "maximal fragmentierte Datensätze einzelner Nutzer, nie jedoch größere Datenbestände" einsehen können, scheint wenig nachvollziehbar. Erfahrungen entsprechender Angriffe in der Vergangenheit zeigen, dass über Bruteforce-Angriffe auf solchen Wegen eben auch große Datenmengen zusammenkommen können.

Die auch in dem Statement erneut aufgeführte Behauptung, Vivy basiere "auf einer vielschichtigen Sicherheitsarchitektur, die auf dem neuesten Stand der Technik beruht" muss spätestens seit dem Fund der unauthentifizierten CBC-Technik durch die Modzero-Forscher als widerlegt betrachtet werden. Wie die App unter diesen Voraussetzungen vom TÜV Rheinland ein Zertifikat für "verschlüsselte Kommunikation gemäß dem Stand der Technik" erhalten hat, wirkt befremdlich (siehe Security-Whitepaper für die App vom Fraunhofer-Institut für Angewandte und Integrierte Sicherheit / AISEC). Im Statement von Vivy heißt es, dass ein erfolgreicher Angriff auf die von den Modzero-Forschern kritisierte Verschlüsselung "Wissen über die Struktur der unverschlüsselten Daten auf Seiten des Angreifers" und eine "unbemerkte Kompromittierung der Vivy-Server" voraussetzen würde. Dass Reverse-Engineering solchen Wissens ebenso wie eine unbemerkte Kompromittierung von Servern in der Praxis ständig vorkommen, lassen die Entwickler unbenannt.

Die Entwickler der Vivy-App haben anscheinend vorbildlich auf den Bericht der Sicherheitslücken durch Modzero reagiert. Trotzdem ist es erschreckend, dass die Forscher wenige Tage nach dem Startschuss der App solch gravierende Sicherheitslücken aufdecken konnten. Vor allem angesichts der vielen Sicherheitsfirmen und -Organisationen, die laut Fraunhofer AISEC an der sicherheitstechnischen Überprüfung der App beteiligt waren. Hier zeigt sich mal wieder, dass Sicherheits-Checks und im Brustton der Überzeugung vorgetragene Werbeversprechen noch lange nicht die Sicherheit einer App und der dazugehörigen Server-Infrastruktur garantieren. Vor allem bei sensiblen Themen wie der digitalen Krankenakte würde man sich von einem Anbieter in dieser Situation in Ermangelung von mehr Vorbereitung wohl wenigstens etwas Demut wünschen. (fab)