TL;DR
- In der KakaoTalk-Version
10.4.3 gibt es ein Problem bei der Validierung von Deep Links, durch das ein entfernter Angreifer in einer WebView beliebiges JavaScript ausführen und so das Access Token aus den HTTP-Request-Headern exfiltrieren kann.
- Mit diesem Token kann das Konto eines anderen Nutzers übernommen und auf einem vom Angreifer kontrollierten Gerät registriert werden, sodass Chat-Nachrichten mitgelesen werden können.
- Dieser Bug wurde als CVE-2023-51219 erfasst.
Hintergrund
- KakaoTalk ist Koreas beliebteste Chat-App und wurde mehr als 100 Millionen Mal heruntergeladen.
- KakaoTalk verwendet standardmäßig keine Ende-zu-Ende-Verschlüsselung (E2EE).
- Es gibt zwar eine optionale E2EE-Funktion namens "Secure Chat", diese unterstützt jedoch weder Gruppen-Messaging noch Sprachanrufe.
Entry Point: CommerceBuyActivity
- Die WebView von
CommerceBuyActivity ist ein zentraler Einstiegspunkt, der für Angreifer interessant ist.
- Kann per Deep Link gestartet werden (
adb shell am start kakaotalk://buy)
- JavaScript ist aktiviert (
settings.setJavaScriptEnabled(true);)
- Unterstützt das Schema
intent://, wodurch Daten an andere nicht öffentliche App-Komponenten weitergegeben werden können.
- Die Validierung von
intent://-URIs ist unzureichend, wodurch potenziell auf sämtliche App-Komponenten zugegriffen werden kann.
- Exfiltriert das Access Token im HTTP-Header
Authorization.
DOM XSS über URL-Weiterleitung
Übernahme von Kakao-Mail-Konten per Deep Link
- Über einen bösartigen Deep Link kann das Access Token des Nutzers an einen Server des Angreifers gesendet werden.
- Mit dem Access Token kann das Kakao-Mail-Konto des Opfers übernommen oder ein neues Mail-Konto erstellt werden, um die bestehende E-Mail-Adresse zu überschreiben.
Zurücksetzen des KakaoTalk-Passworts mit Burp
- Mit Zugriff auf das Kakao-Mail-Konto des Opfers kann ein Zurücksetzen des Passworts angestoßen werden.
- Um die Zwei-Faktor-Authentifizierung (2FA) zu umgehen, werden Requests mit Burp abgefangen und verändert.
PoC
- Der Angreifer bereitet einen bösartigen Deep Link vor, der beim Anklicken durch das Opfer das Access Token exfiltriert.
- Mit dem exfiltrierten Access Token setzt er das Passwort des Opfers zurück und registriert sein eigenes Gerät für das KakaoTalk-Konto des Opfers.
Takeaways
- Es gibt weiterhin populäre Chat-Apps, bei denen sich die Nachrichten von Nutzern über keine besonders komplexe Angriffskette kompromittieren lassen.
- Wenn App-Entwickler einige einfache Fehler machen, helfen weder das starke Sicherheitsmodell von Android noch Nachrichtenverschlüsselung.
- Chat-Apps aus Asien werden in der Security-Research-Community weiterhin unterschätzt.
Meinung von GN⁺
- Schwere der Sicherheitslücke: Die in einer weit verbreiteten App wie KakaoTalk entdeckte Sicherheitslücke erinnert erneut daran, wie wichtig der Schutz von Nutzerdaten ist.
- Verantwortung der Entwickler: App-Entwickler müssen Sicherheitsprüfungen gründlich durchführen und insbesondere bei Funktionen mit Bezug zu sensiblen Daten besondere Sorgfalt walten lassen.
- Nutzeraufklärung: Auch Nutzer sollten keine verdächtigen Links anklicken, 2FA aktivieren und insgesamt ein stärkeres Sicherheitsbewusstsein entwickeln.
- Notwendigkeit von Security Research: Sicherheitsforschung zu asiatischen Chat-Apps sollte deutlich aktiver betrieben werden, damit mehr Schwachstellen frühzeitig entdeckt und behoben werden können.
- Aufzeigen von Alternativen: Neben KakaoTalk können auch sicherheitsorientierte Messaging-Apps wie Signal oder Telegram in Betracht gezogen werden.
Noch keine Kommentare.