
Kit per attacchi di impianto su dispositivi IoT
IoT-Implant-Toolkit è un framework di strumenti utili per la ricerca sull'impianto di malware nei dispositivi IoT. È un toolkit composto da strumenti software essenziali per la modifica del firmware, il debug della porta seriale, l'analisi del software e client spia stabili. Con un ambiente shell-like facile da usare ed estensibile, IoT-Implant-Toolkit è un toolkit tutto-in-uno che semplifica il complesso processo di impianto di malware IoT.
Nella nostra ricerca, abbiamo impiantato con successo Trojan in otto dispositivi, tra cui smart speaker, telecamere, registratori di guida e traduttori mobili utilizzando IoT-Implant-Toolkit.
Un video dimostrativo qui sotto:

Assicurati di avere git, python3 e setuptools installati. Per l'elaborazione e la riproduzione audio, devi installare alsa (integrato in Linux), sox e ffplay. Su Ubuntu 18.04:
$ sudo apt install sox ffmpeg
Scarica il codice sorgente dal nostro Github:
$ git clone https://github.com/arthastang/IoT-Implant-Toolkit.git
Configura l'ambiente e installa le dipendenze:
$ cd IoT-Implant-Toolkit/
$ python3 setup.py install
Esegui il toolkit:
$ python3 -B IoT-Implant-Toolkit.py
_____ _______ _____ _ _ _______ _ _ _ _
|_ _| |__ __| |_ _| | | | | |__ __| | | | (_) |
| | ___ | |______| | _ __ ___ _ __ | | __ _ _ __ | |_ ______| | ___ ___ | | | ___| |_
| | / _ \| |______| | | '_ ` _ \| '_ \| |/ _` | '_ \| __|______| |/ _ \ / _ \| | |/ / | __|
_| || (_) | | _| |_| | | | | | |_) | | (_| | | | | |_ | | (_) | (_) | | <| | |_
|_____\___/|_| |_____|_| |_| |_| .__/|_|\__,_|_| |_|\__| |_|\___/ \___/|_|_|\_\_|\__|
| |
|_|
IoT-Implant-Toolkit
-------------------------------------------------------------
A Framework for IoT implantation research.
by Marvel Team
Command:
list - List all tools
run - Run a specific tool
exit - Exit
[Implant-Toolkit]>
Tre comandi supportati:
Ogni strumento software agisce come un plugin che può essere facilmente aggiunto al framework.
Ci sono più di dieci plugin in quattro categorie, che includono argomenti su debug della porta seriale, pacchettizzazione e spacchettamento del firmware, analisi del software e programmi spia impiantati.
Plugin esistenti nel nostro framework:
Struttura del codice:
--IoT-Implant_toolkit.py #Script di avvio
--outputs/ #Cartella predefinita per gli output
--toolkit/
|---core/
|---basic/ #Definizione della classe base per i plugin
|---cli/ #Definizione della CLI shell-like
|---toollist/ #Elenco automatico dei plugin
|---plugins/
|---firmware/ #Plugin per la modifica del firmware
|---implant/ #Plugin per generare programmi spia
|---serialport/ #Plugin per il debug della porta seriale
|---software/ #Plugin per l'analisi del software, specialmente per Android
|---tools/ #Altri strumenti
Crea [nuovoplugin].py nella cartella corrispondente (categoria) e definisci gli attributi init per aggiungere un nuovo plugin a IoT-Implant-Toolkit. Il framework rileverà automaticamente il nuovo plugin all'avvio.
Strumenti hardware essenziali per la ricerca sull'impianto di malware. Vedi le immagini in HardwareTools/.
Non abbiamo aggiunto altri plugin a causa di limitazioni di tempo.
La tabella seguente mostra strumenti che non si adattano al nostro framework, ma possono essere utili.
Speriamo che IoT-Implant-Tookit diventi un toolkit essenziale nell'impianto di malware.
| Categorie | Strumenti | Descrizioni | Riferimento |
|---|
| Debugging porta seriale | pyserial | controllo modem e programma di emulazione terminale | https://github.com/pyserial/pyserial |
| Debugging porta seriale | baudrate.py | trova il baudrate corretto | https://github.com/devttys0/baudrate |
| Pacchettizzazione e spacchettamento firmware | mksquashfs | crea ed estrae filesystem Squashfs | https://github.com/plougher/squashfs-tools |
| Pacchettizzazione e spacchettamento firmware | mkbootimg_tools | Spacchetta e ripacchetta boot.img per Android | https://github.com/xiaolu/mkbootimg_tools |
| Pacchettizzazione e spacchettamento firmware | cramfs | crea filesystem cramfs | https://sourceforge.net/projects/cramfs/files/cramfs/1.1/ |
| Pacchettizzazione e spacchettamento firmware | mountimg | monta e smonta filesystem ext4 per system.img e data.img di Android | Sul nostro github |
| Analisi software | setools-android | setools per Android con sepolicy-inject | https://github.com/xmikos/setools-android |
| Analisi software | crosscomplie | toolchain di cross-compilazione per arm | sul nostro Github più tardi |
| Analisi software | odex unpack | Da Odex a smali per Android | sul nostro Github |
| Impianto binario | spy client&server | un client e server spia stabile, sorgente e binari precompilati | sul nostro Github |
| Impianto binario | denoise tool | strumento di denoising per elaborazione audio | sul nostro Github |
| Nome | Descrizione |
|---|
| Saldatore | Strumenti di saldatura |
| Fil di saldatura | Strumenti di saldatura |
| Pasta saldante | Strumenti di saldatura |
| Treccia dissaldante | Strumenti di saldatura |
| Pistola ad aria calda | Strumenti di saldatura |
| Strumento per reballing | Strumento per reballing |
| USB to TTL | Cavo per debug/console |
| Cavi Dupont | Cavi elettrici |
| Programmatore di EPROM | Programmatore masterizzatore |
| Categorie | Strumenti | Descrizioni | Riferimento |
|---|
| Analisi firmware | binwalk | uno strumento veloce e facile da usare per analizzare, fare reverse engineering ed estrarre immagini firmware | https://github.com/ReFirmLabs/binwalk |
| Modifica firmware | firmware mod kit | una raccolta di script e utility per estrarre e ricostruire immagini firmware basate su Linux | https://github.com/rampageX/firmware-mod-kit |
| Cross-compilatore | buildroot | Cross-compilatore per arm, mips, powerpc | https://buildroot.org/ |