Die bisher vorgestellten Microcontroller für BadUSB-Angriffe waren meist auf möglichst günstige Komponenten (Digispark) oder auf einfache Anwendbarkeit getrimmt (Rubber Ducky). Mit der Unterstützung von WiFi durch den Cactus WHID gab es einen ersten Eindruck, wie die Bandbreite der Angriffsszenarien durch die Steuerung über ein Webinterface erweitert werden kann. Zusätzlich hat der Bash Bunny aufgezeigt, wie komplex BadUSB-Angriffe realisiert werden können, wenn die Hardware leistungsfähiger ist. Dies alles wird noch getoppt, wenn auf den Raspberry Pi Zero W zurückgegriffen wird.
Die erste Version von P4wnP1, welche von Marcus Mengs entwickelt worden ist, basiert auf dem Standardbetriebssystem Raspbian. Hier wurde P4wnP1 als zusätzlicher Installer eingebunden. Das Nachfolgesystem P4wnP1 A.L.O.A. nimmt einen komplett anderen Ansatz. Es basiert auf einem Kali Linux System für den Raspberry Pi und wird als komplettes Image angeboten und sogar kann bei Offensive Security die aktuellste Kali Version heruntergeladen werden.
P4wnP1 A.L.O.A. erstellt ein eigenes WiFi-Netz, worüber eine Verbindung hergestellt werden kann. Auf dem Raspberry Pi läuft ein Webserver, dadurch erfolgt die weitere Einrichtung und Nutzung über den Web-Browser.
Einrichtung
Die Voraussetzungen für die Nutzung von P4wnP1 A.L.O.A. sind ein Raspberry Pi in der Zero W, eine Micro-SD-Speicherkarte und die Möglichkeit, auf diese zuzugreifen. Weitere Informationen gibt es im offiziellen Wiki.
Hardware
Für P4wnP1 A.L.O.A. kann nur ein Raspberry Pi in der Zero W Variante verwendet werden. Denn der USB-Controller des Raspberry Pi Zero unterstützt die Simulation von USB-Geräten. Ein „normaler“ Raspberry Pi kann dafür nicht verwendet werden. Die W-Variante Raspberry Pi Zero ergänzt die Funktionen noch um Bluetooth und WiFi. In diesem Artikel werde ich aus Gründen der Einfachheit das W nicht immer dazu schreiben.
Da der Raspberry Pi Zero auf der Unterseite Pins für einen USB-Anschluss besitzt, kann er einfach um eine „normale“ (USB-A) USB-Schnittstelle erweitert und somit wie ein USB-Stick eingesetzt werden. Diese Adapterplatinen gibt es zum Beispiel auf eBay in unterschiedlichen Varianten.
Installation
Die Installation erfolgt wie üblich bei einem Raspberry Pi auf der Micro SD-Karte. Als Erstes muss das aktuellste Image auf der offiziellen Seite von Offensive Security heruntergeladen werden. Das Image „Kali Linux P4wnP1 ALOA“ ist im Akkordeon unter dem Punkt „RaspberryPi Foundation“ ganz unten zu finden.
Anschließend muss die Micro SD-Karte über ein Lesegerät oder einen Adapter an den Rechner angeschlossen und das Image auf die Speicherkarte geschrieben werden. Dazu kann zum Beispiel die Software „Win32 Disk Imager“ verwendet werden
.Startvorgang
Ist der Kopiervorgang abgeschlossen, kann die Speicherkarte in den Raspberry Pi Zero gebaut werden. Um den Raspberry Pi zu starten, können Sie ihn an einen Rechner stecken, entsprechender USB-A Adapter vorausgesetzt, oder ein USB-Netzteil anschließen. Für die BadUSB-Funktionen kann alternativ ein USB-Kabel verwendet werden.
Verbindung
Nachdem der Raspberry Pi Zero gestartet ist, aktiviert er ein eigenes WiFi-Netzwerk. Mit diesem Netz müssen Sie sich mit einem Rechner verbinden. Der Name des Netzes (SSID) besteht aus mehreren Icons und dem etwas verfremdeten Namen „P4wnP1“, das Standardpasswort lautet „MaMe82-P4wnP1“. Sobald die Verbindung besteht, kann in einem beliebigen Web-Browser die URL http://172.24.0.1:8000 aufgerufen werden.
Funktionsweise
Über das Webinterface von P4wnP1 A.L.O.A. kann die Konfiguration angepasst und BadUSB-Angriffe gestartet werden.
Im ersten Menüpunkt „USB SETTINGS“ kann konfiguriert werden, als welches Gerät sich der Raspberry Pi gegenüber einem Rechner ausgibt. Dazu können die IDs und Bezeichnungen frei angepasst werden. Auf der rechten Seite wird eingegeben, welche Art von USB-Gerät das P4wnP1 A.L.O.A. System simulieren soll.
Über den Menüpunkt „HIDSCRIPT“ werden die eigentlichen BadUSB-Angriffe gestartet. Die Skripte können in das Textfeld eingetragen werden und über den Button „RUN“ gestartet werden. Bis zu acht Skripte können parallel ausgeführt werden. Die Skripte basieren auf JavaScript, wodurch flexiblere Konstrukte für Berechnungen bei der Programmierung zur Verfügung stehen. Über den Button „LOAD & REPLACE“ können die hinterlegten Skripte geladen werden. Zum Teil sind sie sehr komplex, aber sie bieten einen sehr guten Einstieg, um einen Überblick über die zur Verfügung stehenden Funktionen zu bekommen.
Tutorials
- Im YouTube-Tutorial „Exfiltrating Files With A Pi Zero | P4wnP1 A.L.O.A.“ von Seytonic wird gezeigt, wie Dateien vom Opfer auf den Raspberry Pi kopiert werden können.
- Im zweiten YouTube-Tutorial „PC Backdoor With Pi Zero | P4wnP1 A.L.O.A Tutorial“, ebenfalls von Seytonic, wird erklärt, wie eine Reverse-Shell realisiert wird.
- Rubber Ducky – BadUSB Klassiker
- Digispark – günstiges BadUSB Device
- MalDuino – BadUSB mit Schalter
- Teensy – BadUSB mit Arduino
- DSTIKE WIFI Duck – Keystroke Injection
- Cactus WHID – BadUSB mit WiFi
- USBNinja – getarnter BadUSB
- Bash Bunny – BadUSB Multitool
- P4wnP1 A.L.O.A. – BadUSB Supertool
- USB Killer – Rechner zerstören
- 21.05.2025 (Vortrag) VDI-Vortrag Hacking-Hardware, VDI Zollern-Baar, Albstadt (weitere Infos)
- 24.06.2025 (Workshop) Hacking- und Pentest-Hardware Workshop, Scheible UG, Mannheim (weitere Infos)
- 26.06.2025 (Workshop) Hacking- und Pentest-Hardware Workshop, Scheible UG, Zürich (weitere Infos)
- 10.07.2025 (Workshop) Hacking- und Pentest-Hardware Workshop, Scheible UG, Stuttgart (weitere Infos)
Fazit P4wnP1 A.L.O.A.
Der Rapsberry Pi Zero W ist ein Gerät mit einem sehr guten Preis-Leistungs-Verhältnis. Zusammen mit dem P4wnP1 A.L.O.A. Framework steht eine flexible und kostengünstige Pentesting-Plattform zur Verfügung. Durch den günstigen Preis und die flexible Nutzung des Rapsberry Pi Zero stellt diese Kombination die anderen Hardware Tools, vor allem die sehr kommerziell ausgerichteten teuren Gadgets, in den Schatten. Die hier beschriebenen Funktionen kratzen nur an der Oberfläche von dem, was alles mit P4wnP1 A.L.O.A. möglich ist.
Durch die offene Architektur kann das System weiter an die eigenen Anforderungen angepasst werden. Zum Beispiel könnte mit einem kleinen Akku vorab ein Bootvorgang durchgeführt werden und dann mit einem Add-on Board mit Display und Schalter vorab eine Angriffsart konfiguriert werden. So könnte eine Auswahl des Betriebssystems, ob Daten kopiert oder Code ausgeführt werden soll, erfolgen. Oder es könnte über einen OTG-Adapter einfach die IDs (VID & PID) vom vorhandenen Eingabegerät ausgelesen werden und diese direkt übernehmen, um BadUSB-Schutzmaßnahmen zu umgehen.
USB Artikelserie
Dieser Artikel ist Teil der Artikelserie Angriffe per USB, die dem Themenschwerpunkt Hacking Hardware angehört. In dieser Artikelserie beschreibe ich verschiedene Arten von Angriffsmethoden über die USB-Schnittstelle, damit diese erkannt und effektive Gegenmaßnahmen getroffen werden können.