Shein ist schick. Die Shopping-App fürs iPhone, spezialisiert auf Damenmode, wird auch überwiegend gut bewertet und gehört zu den beliebtesten Anwendungen im deutschen App Store. Aber der Einkauf über die App ist nicht ganz risikolos. Thomas Jansen, ein Hamburger IT-Sicherheitsspezialist, hat eine Sicherheitslücke entdeckt, die es Angreifern erlaubt, die Log-in-Daten der Nutzer abzufangen.

Um genauer zu sein: Er hat diese und ganz ähnliche Lücken in mehr als der Hälfte der 200 in Deutschland beliebtesten kostenlosen iOS-Apps (Stand: Ende September) gefunden. In 111, um genau zu sein.

Jansen ist promovierter Informatiker, hat acht Jahre lang bei Apple in den USA gearbeitet und ist heute Geschäftsführer der auf Softwareentwicklung und Informationssicherheit spezialisierten Firma Crissy Field. Er zeigt nicht als Erster, aber anhand vieler aktueller Beispiele, dass auch in offiziellen App Stores keineswegs nur unbedenkliche Anwendungen angeboten werden. Und dass Apples obligatorische Überprüfung vor der Freigabe einer Anwendung keine Garantie für Sicherheit ist.

Beispielhaft zeigt Jansen das an Shein, aus dem App Store heruntergeladen am 26. Oktober 2017. Im folgenden Video ist zu sehen, dass er auf seinem Laptop sehen kann, welcher Benutzername und welches Passwort in der App eingegeben werden:

Wie "Shein"-Nutzer gehackt werden können

Das Grundproblem ist in allen betroffenen Apps gleich. Ihre Entwickler sichern die Übertragung sensibler Daten wie Benutzernamen und Passwort nicht oder nur unzureichend durch eine verschlüsselte Übertragung ab. Was auf Websites mittlerweile selbstverständlich sein sollte, ist in mobilen Anwendungen alles andere als der Normalfall.

Shein ist nicht einmal das krasseste Beispiel, immerhin werden die Log-in-Daten der Nutzer durchaus über einen verschlüsselten Kanal übertragen. Nur überprüft die App nicht, ob das für die Verschlüsselung nötige Zertifikat vom richtigen Server kommt. Die Authentifizierung findet schlicht nicht statt. Ein Angreifer kann der App daher ein beliebiges Zertifikat unterjubeln, die übertragenen Daten entschlüsseln und später selbst damit einkaufen. Oder versuchen, sich mit den Zugangsdaten in anderen beliebten Diensten anzumelden – viele Menschen verwenden ihre Passwörter schließlich mehrfach.

Anfällig für Man-in-the-middle-Angriffe

Nutzer von Shein oder den anderen betroffenen Apps sind allerdings nicht ohne Weiteres hackbar. Jede Attacke wäre gezielt und mit einem gewissen Aufwand verbunden. Ein Täter muss die Kommunikation zwischen App und ihrem Anbieter, beziehungsweise dessen Server, mindestens beobachten können. Oder er muss sich, wie im Video oben, zu einem Teil des Netzwerks machen und den Datenverkehr über sein eigenes Gerät umleiten. Am einfachsten geht das, wenn er mit dem gleichen WLAN verbunden ist wie das iPhone oder iPad, zum Beispiel in einem Café. Für beide Varianten dieses sogenannten Man-in-the-middle-Angriffs gibt es kostenlose Software und günstige Hardware. Aber auch Arbeitgeber, die ihr Firmennetzwerk kontrollieren, wären technisch dazu in der Lage, solche Überwachungsaktionen durchzuführen. Ebenso wie Internetanbieter, die je nach Gesetzeslage von Strafverfolgern dazu gezwungen werden könnten.

Apple wollte genau diese Szenarien eigentlich verhindern, als es 2016 auf seiner Entwicklerkonferenz ankündigte, dass Apps ab Ende des Jahres HTTPS für die Übertragung von Nutzerdaten verwenden müssen. ATS nennt Apple das bereits 2015 eingeführte Feature – App Transport Security. Sauber implementiert, würde es Angriffe wie die von Jansen demonstrierten unmöglich machen. Nutzer sollen dank ATS darauf vertrauen können, schreibt Apple in seiner offiziellen Entwickler-Dokumentation, dass ihre Apps beim Senden von Daten diese nicht versehentlich an Unbefugte verraten.

Doch im Dezember vergangenen Jahres veröffentlichte das Unternehmen eine Mitteilung an Entwickler, in der es einen Aufschub für die Implementierung von ATS gewährte: "Um Ihnen mehr Zeit für die Vorbereitung zu geben, haben wir die Frist verlängert und wir werden uns mit einem Update melden, sobald es eine neue gibt." Das ist bis heute, fast ein Jahr später, nicht passiert.

Apple will sich nicht äußern

Dennoch steht in der Entwickler-Dokumentation einiges zum Thema ATS. Zum Beispiel, dass das Feature standardmäßig aktiviert ist. Entwickler dürfen zwar Ausnahmen bestimmen, müssen diese aber begründen. Jede Änderung "löst vor der Freigabe für den App Store eine Überprüfung aus", die Begründungen werden nach Apples Angaben dabei geprüft.

Welche Gründe die Entwickler haben könnten, dem Schutz von Nutzerdaten nicht die oberste Priorität einzuräumen, kann Jansen nur vermuten: "Der Wunsch, die frisch entwickelte App so schnell wie möglich in den App Store zu bringen, verleitet viele Entwickler anscheinend dazu, 'Abkürzungen' zu nehmen und am falschen Ende zu sparen. Und während am Anfang gehofft wird, dass man noch zu klein und daher nicht im Fokus eines Angreifers ist, so wird später damit argumentiert, dass es bisher ja auch immer gut gegangen ist."

Ob die Entwickler aller 111 betroffenen Apps valide Gründe genannt haben, ATS zu ignorieren, oder ob es im Überprüfungsprozess von Apple Schwächen gibt, bleibt unklar. Apple will sich auf Anfrage von ZEIT ONLINE nicht dazu äußern.

Jansen hat seinerseits versucht, die Unternehmen hinter den betroffenen Apps zu kontaktieren. "Insgesamt 51 fehlerhafte Apps bei 24 verschiedenen Unternehmen habe ich bisher gemeldet, die ersten am 12. September", sagt er. "Bis heute haben 16 von ihnen geantwortet, aber nur fünf haben die Schwachstellen beseitigt. Im Schnitt musste ich zwei Mal nachhaken, bevor jemand reagiert hat." Manche haben keine leicht auffindbare Kontaktadresse für solche Fälle. Manche antworteten erst nach dem sechsten Kontaktversuch, andere gar nicht. Darunter Shein, das nach eigenen Angaben in New Jersey sitzt und schon im April den Verbraucherschützern in Niedersachsen aufgefallen war. Die nennen die Seite einen "Fake-Shop" und raten davon ab, dort etwas zu bestellen. Auch auf eine Anfrage von ZEIT ONLINE reagierte das Unternehmen nicht. Die Sicherheitslücke besteht weiterhin, vor der App kann also nur gewarnt werden.

Eines der Unternehmen, die ihre Apps nach dem Hinweis von Jansen zumindest verbessert haben, ist die Scout24 AG, Betreiber unter anderem von ImmoScout24 und AutoScout24. Beide iOS-Apps sind anfällig für eine code injection, also das Unterschieben von bösartigem Code, weil die Verbindung zwischen App und Server in Teilen ungesichert ist und mit überschaubarem Aufwand manipuliert werden kann. Auch das demonstriert Jansen in einem Video – zunächst ist die normale ImmoScout24-App in der Version vom 26. Oktober zu sehen, dann blendet Jansen in der Rolle des Angreifers ein täuschend echt aussehendes Log-in-Fenster ein, über das er Zugangsdaten abfangen kann:

Wie ImmoScout24-Nutzer getäuscht werden können

Die im Scout24-Vorstand für Datenschutz zuständige Anja Schulz sagt: "Der von Dr. Jansen angesprochene Sachverhalt existierte nur für eine kurze Zeit und wurde sofort behoben. Persönliche sowie spezifische Kunden- und Nutzerdaten werden in verschlüsselter Form – und damit sicher – übermittelt." 

Jansen widerspricht. In der aktuellen ImmoScout24-App vom 27.10. sei zwar eines der drei von ihm gemeldeten Probleme behoben, die anderen beiden aber nicht. Der im Video demonstrierte Angriff funktioniere nach wie vor.

CCC: Dafür gibt es keine Entschuldigung

Linus Neumann, einer der Sprecher des Chaos Computer Clubs (CCC), hat Jansens Funde an einer der 111 betroffenen Apps exemplarisch nachvollzogen und bestätigt. Er sagt: "Für die Übertragung von Zugangsdaten im Klartext – also unverschlüsselt – gibt es heutzutage keine Entschuldigung mehr." Das Gleiche gelte für das, was unter anderem Shein tut: die Übertragung zwar zu verschlüsseln, aber das verwendete Zertifikat nicht zu prüfen.

Jansen hat nur iOS-Apps überprüft. Dass auch viele Android-Apps Nutzerdaten gar nicht oder schlecht gesichert übertragen, ist aber wahrscheinlich. Für normale Nutzer ist nicht zu erkennen, unabhängig von ihrem Betriebssystem. Umso mehr sollten sie beherzigen, was Sicherheitsexperten ohnehin empfehlen: In jedem WLAN, das jemand anderem gehört, sollte man ein VPN (Virtual Private Network) benutzen, das alle Daten durch eine Art verschlüsselten Tunnel schickt und damit für eine zusätzliche Sicherheitsschicht sorgt. Wie das geht, erklären wir hier.