Sicherheitslücke in Bezahl-SDKs führt zu Phishing-Angriffen

Originalartikel von Weichao Sun, Mobile Threats Analyst

Schwachstellen in Apps sind immer ein Grund zur Sorge, vor allem wenn die betroffenen Apps mit kritischen Informationen umgehen müssen. Eine Analyse der zwei weit verbreiteten In-App Payment (IAP) SDKs, nämlich Google Wallet und die chinesische Bezahlplattform Alipay, ergab, dass diese eine Sicherheitslücke enthalten, die für Phishing-Angriffe missbraucht werden kann.
Es handelt sich um die Versionen 2 und 3 von Google IAP sowie Alipay SDK 1.0. Die Entwickler wurden über die Analyseergebnisse informiert, und Alipay hat die Sicherheitslücke bereits gepatcht. Google wiederum rät Entwicklern eine neuere, mit besseren Sicherheitsmechanismen ausgestattete Version der Plattform zu nutzen. Auch hat der Anbieter die Entwickler mehrerer Apps, die dieses bestimmte SDK einsetzen, benachrichtigt.

Das Problem mit Intents und Intent-Filtern

Die Sicherheitslücke steht in Zusammenhang mit dem Intent und den eingesetzten Intent-Filtern. Der Intent ist ein “Messaging-Objekt”, das dazu verwendet werden kann, um eine Aktion oder einen Prozess von einer App-Komponente anzufordern. Intents dienen der Kommunikation zwischen App-Komponenten, und explizite Intents werden eingesetzt, wenn der Entwickler eine Aktion von einer bestimmten Komponenten oder anderen Apps ausführen lassen will. Soll eine App etwa den bestimmten Standort eines Nutzer anzeigen, so kann der Intent einer anderen App erlauben, GPS-Standortdaten zu erhalten.

Die Android-Plattform nutzt Intent-Filter, um festzulegen, welche App den impliziten Intent durchführen kann. Enthält eine App den passenden Filter, so kann sie die vom Intent geforderte Aufgabe durchführen.

Doch anscheinend gibt es einen Fehler in der Kommunikation zwischen der mobilen Bezahlanwendung und den Bezahl-Clientanwendungen. Die mobile Bezahlanwendung nutzt einen impliziten Intent, der von einer bösartigen App über einen hochpriorisierten Intent-Filter abgefangen werden kann.

Der Fehler im Google Wallet SDK

Bei Transaktionen mit dem betroffenen Google Wallet SDK muss die App mit der Google Play App auf dem Gerät kommunizieren, damit Google Play den Nutzer über die Zahlung informieren und dann eine Bestätigung fordern kann.



Bild 1. Bestätigungsnachricht

Das IAP SDK nutzt einen impliziten Intent, ACTION=”com.android.vending.billing.MarketBillingService.BIND”, der vom Intent-Filter action android:name=”com.android.vending.billing.MarketBillingService.BIND” abgefangen werden kann. Eine bösartige App kann denselben Intent-Filter dazu nutzen, um eine Phishing-Seite darzustellen:



Bild 2. Beispiel der Phishing-Nachricht

Phishing über das Alipay SDK

Alipay nutzt den gleichen Prozess wie Google Wallet. Wenn ein Nutzer den “Bezahlen”-Knopf drückt, so kommuniziert die App mit dem mobilen Alipay-Client, der eine Bestätigungsnachricht anzeigt. Wie bei Google Wallet auch kann diese Kommunikation durch eine bösartige App abgefangen werden. In diesem Fall handelt es sich um den Intent-Filter action android:name=”com.alipay.android.app.IAlixPay”. Die bösartige App kann ihre eigene Nachricht statt der legitimen senden.


Bild 3. Falsche Alipay-Nachricht

Apps von Drittanbietern nutzen Google Wallet oder Alipay SDK für die Kommunikation mit dem entsprechenden SDK und für den tatsächlichen Bezahlprozess. Bezahlt ein Nutzer etwa über eine App eines Drittanbieters, so erwartet er das legitime Google Wallet oder Alipay zu sehen. Stattdessen könnte hier eine Phishing-App die tatsächliche App imitieren. Traut der Nutzer der Fälschung, so gibt er dort das Passoert und die Konteninformationen preis.

Das könnte lediglich der Anfang sein, denn sobald Cyberkriminelle Zugriff auf die Nutzerkonten haben, werden sie die Daten daraus stehlen – und das könnten Kreditkarten- oder andere Bezahlinformationen sein. Die Daten nutzen Cyberkriminelle selbst oder verkaufen sie im Untergrund.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*