Viele von euch sind bestimmt schon mal über Kali NetHunter gestolpert, zum Beispiel beim Stöbern auf der Website von Kali Linux, ohne genau zu wissen, was das eigentlich ist, und was man damit machen kann. Die „Mobile Penetration Testing Platform for Android devices, based on Kali Linux“ wirkt auf den ersten Blick für sich genommen schon spannend, aber irgendwie auch immer komplex und die Installation einschüchternd. In diesem Blog-Beitrag wollen wir deswegen Aufklärungsarbeit betreiben über Kali NetHunter und die Stärken und Schwächen der Pentest-Suite für die Hosentasche.
Grob zusammengefasst ist Kali NetHunter eine Zusammenstellung von mehreren Apps, die ein komplettes Kali Linux Betriebssystem auf Android-Smartphones ermöglichen. Je nachdem, welches Smartphone ihr besitzt und welche Edition ihr installiert, sind Angriffe auf verschiedene Protokolle wie WLAN oder Bluetooth sogar direkt vom Smartphone aus ohne extra Hardware möglich.
Rootless, Lite oder Full
Der große Vorteil von Kali NetHunter ist die Flexibilität, die mit den verschiedenen Editionen zur Verfügung steht. So gibt es die Rootless Edition, die auf eigentlich jedem mordernen Smartphone funktionieren sollte, da sie keinerlei Root Berechtigungen benötigt. Sie bietet aber auch den geringsten Funktionsumfang. Die Lites Edition hingegen benötigt Root-Rechte, z.B. mittels Magisk, und erweitert den Funktionsumfang schon deutlich. Am meisten Nutzen bringt jedoch die Full Edition, die das Nutzen der internen Interfaces wie WLAN, Bluetooth und USB für Angriffe ermöglicht, vorrausgesetzt, die Hard- und Software erlaubt das. Was zum Beispiel bei allen Editionen funktioniert, ist das Nutzen von Kali NetHunter als Desktop mittels KeX, einer eigenen App, die mittels VNC einen Bildschirm über USB ansteuern kann. Dabei wird eine Reihe an Smartphones unterstützt, von älteren Geräten wie einem Google Nexus 5, über einigen Modellen von Xiaomi, bis hin zu etlichen Samsung Smartphones. Eine Übersicht, für welche Modelle es bereits vorgefertigte Images gibt, findet sich auf dieser Übersichtsseite.
Im Detail unterscheiden sich die verschiedenen Editionen wie folgt:
Feature | NetHunter Rootless | NetHunter Lite | NetHunter Full |
App Store | Ja | Ja | Ja |
Kali CLI | Ja | Ja | Ja |
Alle Kali Packete | Ja | Ja | Ja |
KeX | Ja | Ja | Ja |
Metasploit ohne DB | Ja | Ja | Ja |
Metasploit mit DB | Nein | Ja | Ja |
NetHunter App | Nein | Ja | Ja |
Benötigt eigene Recovery | Nein | Ja | Ja |
Benötigt Root-Rechte | Nein | Ja | Ja |
WLAN Angriffe | Nein | Nein | Ja |
HID Angriffe | Nein | Nein | Ja |
Bluetooth Arsenal | Nein | Nein | Ja |
CAN Bus Arsenal | Nein | Nein | Ja |
Features von Kali NetHunter
Kali NetHunter unterstützt eine Reihe von verdeckten Angriffen, direkt vom Smartphone aus, wobei für viele Techniken bei der vollständigen Installation nicht einmal zusätzliche Hardware benötigt wird. Durch dieses Angriffswerkzeug im Hosentaschenformat ist es wie gemacht für Red-Team Engagements und anderer verdeckte Operationen, bei denen unauffällig vorgegangen wird.
Angriffe gegen WLAN
So zum Beispiel können verschiedenste Angriffe auf WLAN-Netzwerke durchgeführt werden. In der NetHunter App direkt integriert ist eine Version von OneShot, welcher verschiedene WPS-Angriffe ermöglicht.
Mit Wifipumpkin3 könnt ihr direkt Evil-Accesspoint-Attacken durchführen, also gefälschte Access-Points erstellen, sowohl mit oder auch ohne Captive-Portal.
Je nach Kali NetHunter Version und Hardware könnt ihr dafür das interne WLAN-Interface nutzen, oder aber über einen externen WLAN-Adapter den Access-Point aufspannen. Und auch die populäre Aircrack-ng Suite zum Aufzeichnen und Überprüfen von WLAN-Authentifzierungen ist mit dem richtigen externen WLAN-Adapter direkt auf dem Handy einsetzbar, wenn auch „nur“ aus dem Terminal heraus.
USB Angriffe
Eine weitere sehr wichtige Kategorie, für die Kali NetHunter prädestiniert ist, sind Angriffe über USB. Dabei bietet NetHunter zwei verschiedene wichtige Möglichkeiten an. Der erste Angriff nennt sich „BadUSB MitM Attack“, der zweite nennt sich HID Keyboard Attack. Für beide Angriffe muss das Smartphone per Daten-USB-Kabel mit dem anzugreifenden System verbunden sein.
Mit dem BadUSB MitM Attack erkennt der PC euer Smartphone als Netzwerk-Adapter. Anschließend leitet der PC den gesamten Netzwerkverkehr über NetHunter, wodurch ihr eine Man-in-the-Middle (MitM) Position einnehmt. Dadurch könnt ihr den Netzwerkverkehr mitschneiden, ggf. unverschlüsselte Zugangsdaten abgreifen, als auch z.B. Spoofing Angriffe durchführen.
Anders als bei der HID Keyboard Attack. Hier gibt sich das Smartphone dem PC gegenüber als Tastatur aus. Anschließend kann es automatisch oder manuell ausgelöst vorher konfigurierte Tastenanschläge „eingeben“ und somit Befehle auf dem PC ausführen. Ihr könnt somit die Konsole öffnen, Schadsoftware herunterladen, oder auch den PC sonst fernsteuern. Ihr könnt dafür eigene Skripte schreiben, als auch bekannte und öffentliche Rubber Ducky Skripte mittels DuckHunter Attacks für NetHunter konvertieren. Zusätzlich dazu gibt es verschiedene Einstellungsmöglichkeiten für verschiedene Betriebssysteme, z.B. einen UAC (User Account Controll) Bypass für Windows Systeme.
Vollständiges Kali / KeX
Das Beste ist jedoch, dass ihr mit Kali NetHunter eben nicht nur vordefinierte und angepasste Programme, die für Smartphones zugeschnitten sind, ausführen könnt, sondern ein ganz normales Kali Linux mit (fast) keinen Einschränkungen zur Verfügung habt. So könnt ihr auf den meisten Smartphones mit den richtigen OTG-Adaptern USB-Geräte und Antennen anschließen, so die Hardware-Funktionalität noch erweitern.
Mittels KeX ist es sogar möglich, das Kali NetHunter als vollständigen Kali Linux Desktop zu nutzen.
Installation
Die Installation von Kali NetHunter kann sehr unterschiedlich ausfallen, und variiert sehr stark von Handy-Modellen, vorinstallierter Android-Version, und welche Edition ihr installieren wollt. Die grundlegenden nötigen Schritte zur Installation von einem vollständigen Kali NetHunter sind dabei wie folgt, und im Detail auf der offiziellen Website „Installing NetHunter“ gefunden werden:
Anmerkung:
NSIDE ATTACK LOGIC übernimmt keinerlei Haftung, falls die Anleitung misslingt, Daten verloren gehen, oder das Smartphone und die Software sonstigen Schaden nimmt. Die Installation von Kali NetHunter erfolgt auf eigene Gefahr.
- Herunterladen einer existierenden Images
Offensive Security stellt für etliche Smartphone Modelle bereits vorbereitete Images bereit, die hier von der offiziellen Seite heruntergeladen werden können. - Das Smartphone in den „Entwicklermodus“ versetzen
Um den Entwicklermodus freizuschalten, muss in den Einstellungen » Über das Telefon 7-10 mal auf die „Build-Nummer“ geklickt werden. Anschließend gibt das Menü Einstellungen » System » Entwickleroptionen. Dort muss anschließend „USB-Debugging“ aktiviert werden, um ADB (Android Debug Bridge) nutzen zu können. - Den Bootloader entsperren
Damit ihr die Firmware und den Kernel auf dem Smartphone ändern könnt, muss der Bootloader entsperrt sein, der regulär ab Werk i.d.R. gesperrt ist. Je nach Hersteller kann der Bootloader sehr einfach oder aber umständlich entsperrt werden. Eine gute Anlaufstelle, um passend zu eurem Herstellermodell eine Anleitung zu finden, ist das Forum com.Warnung:
Einen Bootloader zu entsperren, setzt das Handy auf Werkseinstellungen zurück und löscht alle Daten. - Ein „Custom Recovery Image“ installieren
Zum Installieren von Modulen und Paketen wird ein „Custom Recovery Image“ benötigt. Als moderne State-of-the-Art Custom Recovery hat sich TWRP einen Namen gemacht. Je nach unterstützter Android-Version von Kali NetHunter kann aber auch die Android Distribution LineageOS eine Alternative sein, wenn die werkseitige Android-Version zu niedrig für NetHunter ist. LineageOS bringt dabei seine eigenes Custom Recovery mit, somit kann dann auf TWRP verzichtet werden.
Mit welcher Tastenkombination ihr bei eurem Smartphone in den Recovery Modus startet, hängt dabei ganz von eurem Handymodell ab. - Das Smartphone rooten
Durch das „Rooten“ wird es anschließend ermöglicht, administrative Rechte auf dem Android zu nutzen. Dies wird für viele Kali NetHunter Features benötigt, insbesondere wenn es um das Nutzen interner Hardware wie WLAN oder Bluetooth geht. Empfohlen wird hier Magisk, was praktikabel und zudem für Kali NetHunter die empfohlene Lösung ist.
Die heruntergeladene Zip-Datei von Magisk wird hierbei per USB auf das Smartphone kopiert, und anschließend im Custom Recovery „geflasht“, also installiert. - Für Android 9 oder höher: ForceEncrypt deaktivieren
Ab Android 9 wird standardmäßig die Data-Partition verschlüsselt. Kali NetHunter jedoch benötigt diese unverschlüsselt. Deswegen muss über den Recovery Modus der Universal DM-Verity, ForceEncrypt Disabler geflasht werden. Anschließend kann das Smartphone neugestartet werden.Anmerkung:
Sollte das Android nicht mehr sauber hochfahren, bzw. sich aufhängen, kann die gesamte Installation erneut durchgeführt werden, und dieser Schritt testweise weggelassen werden. - NetHunter über Magisk installieren
Fahrt anschließend das Smartphone regulär hoch. Das kann ggf. ein paar Minuten dauern, wenn es ein frisch installiertes Android ist. Anschließend könnt ihr die heruntergeladene Zip-Datei von Kali NetHunter über USB auf das Smartphone übertragen. Anschließend könnt ihr über die App „Magisk“ die Zip-Datei als Modul installieren. Der Bildschirm sollte dabei dauerhaft entsperrt bleiben, ansonsten kann es zu Problemen kommen.
Wenn ihr die oben beschriebenen Schritte erfolgreich durchgeführt habt, dann solltet ihr jetzt beim Start mit einem Kali Logo als Hintergrundbild begrüßt werden. Im Hauptmenü, wo alle installierten Apps aufgelistet sind, solltet ihr jetzt vier neue Apps vorfinden, die zusammen Kali NetHunter ergeben.
Der „NetHunter Store“, in manchen Versionen auch einfach „F-Droid“ genannt, ist ein alternativer App-Store, über die ihr von Offensive Security kuratierte Anwendungen für den Hacking-Alltag nachladen und installieren könnt. Gleichzeitig können hierüber die weiteren NetHunter-Apps aktualisiert werden.
Das „NetHunter Terminal“ ist eine eigene Terminal-Awendung, die euch eine vollständige Kali-Root-Shell zur Verfügung stellt. Hierüber können z.B. Updates und Installationen der zugrundeliegenden Kali-Installation gemacht werden. Aber auch Angriffe, z.B. mittels Wifite oder Aircrack-NG sind möglich.
Mittels des integrierten VNC Servers namens KeX habt ihr sogar die Möglichkeit, auf ein reguläres Kali Linux mit GUI zuzugreifen. Das kann entweder über einen regulären VNC Client passieren, ihr habt allerdings auch die Möglichkeit, über den KeX Client, also die App „NetHunter KeX“ und mittels USB-Typ-C auf HDMI Adapter direkt auf einen Monitor zu streamen. Dann braucht ihr nur noch eine Bluetooth Maus und Tastatur, und habt ein vollständig nutzbares Kali Linux als Desktop Version.
Die App „NetHunter“ ist jedoch die wichtigste, da sie das Herzstück von Kali NetHunter darstellt. Hierüber wird das Chroot initialisiert, könnt ihr Einstellungen und Netzwerkinterfaces verwalten, Software nachinstallieren und integrierte Angriffe auf WLAN, Bluetooth und gegen USB und HID fahren.
Fazit
Mit einem Kali NetHunter auf dem richtigen Gerät seid ihr für stets gerüstet für (fast) alle Herausforderungen, die ein Red Teaming oder Social Engineering mit sich bringen kann. Ihr könnt mit dem Handy selber Angriffe gegen WLAN oder Bluetooth fahren, und habt damit sogar immer euer eigenes portables Kali Linux in der Hosentasche mit dabei. Unauffällig, aber funktional. Ideal, um anzugreifen.
Wollt ihr selbst mal erleben, wie ein richtiger Angriff aussehen kann, so fragt uns gerne an. Wir vermitteln unser Wissen zu Angriffen, und wie man sie vermeiden kann, in verschiedensten Workshops und Kursen, und untersützen euch gerne bei der Einschätzung ihrer Verteidigungsmaßnahmen gegen reale Hacker-Angriffe durch proaktive Maßnahmen wie Red-Teamings mit Social Engineering oder auch strukturierten Penetrationstests ihrer Infrastruktur.