
Android-Binder-Transaktionen mit Burp Suite abfangen, modifizieren, wiederholen und angreifen
BadIntent ist das fehlende Glied zwischen der Burp Suite und dem zentralen Android-IPC/Messaging-System. BadIntent besteht aus zwei Teilen: einem Xposed-basierten Modul, das auf Android läuft, und einem Burp-Plugin. Aufgrund dieses Zusammenspiels ist es möglich, den üblichen Arbeitsablauf von Burp sowie alle beteiligten Tools und Erweiterungen zu nutzen, da die Abfang- und Wiederholungsfunktionalität bereitgestellt wird. BadIntent hakt tief in das Android-System ein, führt verschiedene Methodenumleitungen in Parcels durch und fügt zusätzliche Dienste hinzu, um die beschriebenen Funktionen bereitzustellen. Besonders hervorzuheben ist, dass BadIntent systemweit (experimentell) funktioniert und nicht auf einzelne Benutzer-Apps beschränkt ist.
BadIntent kann für verschiedene Pentesting-Aktivitäten verwendet werden, wie die folgenden Beispiele:
Der einfachste Ansatz ist, BadIntent Android aus dem Xposed Module Repository zu installieren und BadIntent Burp aus dem Burp BApp Store. Beide wurden vor der Arsenal-Präsentation von BadIntent auf der Black Hat Las Vegas 2017 zur Verfügung gestellt/eingereicht.
BadIntent wurde auf Genymotion mit Xposed v87 unter Android Marshmallow (6.0) und Burp Suite 1.7.23 (Free und Pro) getestet.
Es gibt bekannte Einschränkungen beim Hooking aller System-Apps und aller Schnittstellen. Während des Bootvorgangs verbleibt das Android-System in einer Boot-Schleife und Sie können BadIntent nicht von Ihrem Android-Gerät deinstallieren. Daher wird dringend empfohlen, die genannte Einrichtung zu verwenden, falls alle System-Apps gehooked werden.
Weitere Details finden Sie im Wiki.
BadIntent wird unter einer 3-Klausel-BSD-Lizenz veröffentlicht. Die vollständigen Details finden Sie in der LICENSE.