32C3: Mobile-Banking der Sparkasse erneut ausgehebelt

Problematisch erweist sich dabei, dass Banking-App und TAN-Generator auf einem Gerät betrieben werden. Sobald dieses gerootet ist, können Angreifer die Sicherheitsfunktionen aushebeln und Überweisungen umleiten. Die Schwachstelle betrifft prinzipiell auch Apps von anderen Banken, die nach dem gleichen Prinzip funktionieren.
Der Erlanger Informatik-Student Vincent Haupert hat auf dem auf dem 32. Chaos Communication Congress (32C3) die Schwachstellen von mobilen Banking-Lösungen demonstriert. Auf einem gerooteten Android-Smartphone konnte er mit der aktuellen Sparkassen-App und dem dazugehörigen TAN-Generator Überweisungen umleiten. Die jüngste Version der PushTAN-App der Sparkasse verfügt zwar über eine verbesserte Root-Erkennung, diese lässt sich aber leicht aushebeln. Bereits ein einfaches Umbenennen der Binary von su, mit der der Nutzerkontext gewechselt werden kann, reicht dafür aus.
Haupert baute auf früheren Forschungen auf, die er zusammen mit Tilo Müller im Oktober vorgestellt hatte. Sie erforderten nicht nur ein gerootetes Smartphone, das zu dem Zeitpunkt noch nicht erkannt wurde, sondern auch das Framework Xposed, das unter Android ab 4.0.3 tiefgreifende Änderungen am Verhalten von Apps und Eingreifen in ihre Kommunikation erlaubt – in dem Fall die Übertragung zwischen den beiden Apps der Sparkasse. Haupert und Müller zeigten so, dass die Integration von Onlinebanking-App und TAN-App auf einem einzigen Smartphone ein immenses Sicherheitsrisiko darstellt.
Besonders beanstandeten sie die leicht zu umgehenden Sicherheitsmechanismen der App. Die Sparkasse besserte nach und baute die erwähnte Rootkit-Erkennung ein, die von der Firma norwegischen Firma Promon zugeliefert wird. Außerdem untersucht die App nun, ob Xposed oder ein ähnliches Framework installiert ist. Haupert umging auch diesen Mechanismus, indem er Dateien umbenannte und Xposed (das quelloffen ist) neu kompilierte, wobei er jegliche Nennung des Namens eliminierte.
Das eigentliche Problem ist Haupert zufolge die Nutzung eines einzigen Geräts für beide Komponenten einer Zwei-Faktor-Authentifizierung. Auch sei das Szenario keineswegs nur unter Laborbedingungen reproduzierbar. Das über 100.000-mal aus Google Play heruntergeladene Spiel Brain Test habe sich schließlich auch als Rootkit-Malware erwiesen, die also unter anderem das System rootete, um die Kontrolle übernehmen zu können. Im übrigen habe auch die Bankenaufsicht BaFin empfohlen (PDF) Online-Banking-App und TAN-Generator nicht auf einem einzigen Gerät zu betreiben. Haupert selbst verwendet fürs mobile Online-Banking einen TAN-Generator. Die BaFin stuft Mobile-Banking insgesamt als unsicherer ein als andere Formen des Online-Bankings. Verbraucher sollten deshalb kritisch hinterfragen, ob es wirklich notwendig ist, Finanztransaktionen per Smartphone abzuwickeln.
Natürlich seien TAN-Apps anderer Anbieter wahrscheinlich ebenso angreifbar, erklärte Haupert auch. Er habe sich die Sparkasse als Beispiel ausgesucht, weil sie so groß sei und er dort selbst ein Konto habe. Und auch der Angriff auf die Transaktion zwischen den Apps sei nur einer von mehreren möglichen: Alternativ ließe sich die PushTAN-App klonen und verändern, man könne aber auch das Kommunikationsprotokoll der beiden Apps dechiffrieren und einen eigenen Client dafür schreiben.