
Strumento di steganografia bruteforce veloce scritto in Rust utile per CTF
stegbrute è un veloce strumento di brute force per la steganografia scritto in Rust
Stegbrute non può funzionare senza steghide! Per installare steghide esegui:
apt-get install -y steghide
se non sei su una distribuzione Debian puoi scaricarlo dal sito web di steghide
stegbrute può essere installato in diversi modi:
tramite cargo (gestore pacchetti di Rust)
se non hai cargo puoi installarlo tramite apt o scaricando il linguaggio Rust
cargo install stegbrute
questo funziona su ogni piattaforma
se hai Ubuntu/Kali o altre distribuzioni Debian puoi installare il file .deb che trovi nella sezione releases, poi decomprimere il file ed eseguirlo
wget https://github.com/R4yGM/stegbrute/releases/download/0.1.1/stegbrute_0.1.1_amd64.deb &&
dpkg --install stegbrute_0.1.1_amd64.deb
se non hai docker installato puoi seguire la loro guida
prima devi scaricare l'immagine docker (solo 4.93 MB) dal registro docker, puoi vederla qui, se non vuoi scaricare l'immagine puoi anche clonare il repository e poi costruire l'immagine dal Dockerfile
docker pull r4yan/stegbrute:latest
puoi anche decidere di scaricare immagini diverse sostituendo 'latest' con una versione di stegbrute, es.
docker pull r4yan/stegbrute:0.1.0
se non vuoi scaricare l'immagine puoi scaricare/copiare il Dockerfile di stegbrute che si trova qui e poi costruire l'immagine dal Dockerfile
poi se vuoi avviare il container devi prima creare un volume per condividere i tuoi file con il container
docker volume create --name stegbrute_data
quindi sposta o copia i file che vuoi usare per stegbrute nella cartella del volume che di solito si trova qui /var/lib/docker/volumes/stegbrute_data/_data semplicemente facendo
cp wordlist.txt /var/lib/docker/volumes/stegbrute_data/_data && cp file.jpg /var/lib/docker/volumes/stegbrute_data/_data
e ora esegui stegbrute
docker run -v stegbrute_data:/stegbrute_data -it --rm --name stegbrute r4yan/stegbrute:latest <opzioni>
sostituisci <opzioni> con le opzioni/argomenti che vuoi dare a stegbrute,
una volta fatto tutto non devi più scaricare/ricostruire l'immagine, solo se ci sono nuovi aggiornamenti o funzionalità
Salva sempre i tuoi risultati all'interno del volume e non nel container perché poi verranno cancellati! puoi salvarli aggiungendo questa opzione -x /$NOME_VOLUME/risultati.txt o --extract-file /$NOME_VOLUME/risultati.txt
se hai aggiunto questo e fatto tutto correttamente alla fine di ogni attacco troverai i risultati nella cartella /var/lib/docker/volumes/stegbrute_data/_data
questo funziona su ogni piattaforma
puoi anche scaricare il programma già compilato ed eseguirlo, esempio:
wget https://github.com/R4yGM/stegbrute/releases/download/0.1.1/stegbrute && chmod +x stegbrute
mv stegbrute /usr/local/bin/
stegbrute è molto semplice da usare e offre molte opzioni, puoi visualizzare l'aiuto del programma con l'opzione -h o --help
============================================================
____ _ ____ _
/ ___|| |_ ___ __ _| __ ) _ __ _ _| |_ ___
\___ \| __/ _ \/ _` | _ \| '__| | | | __/ _ \
___) | || __/ (_| | |_) | | | |_| | || __/
|____/ \__\___|\__, |____/|_| \__,_|\__\___|
|___/
StegBrute v0.1.1 - Di R4yan
https://github.com/R4yGM/StegBrute
StegBrute 0.1.1
R4yan <[email protected]>
Strumento di brute force per steganografia
USO:
stegbrute [FLAGS] [OPZIONI] --file-name <file-name> --wordlist <wordlist>
FLAGS:
-h, --help Stampa le informazioni di aiuto
-V, --version Stampa le informazioni sulla versione
-v, --verbose Mostra ogni tentativo eseguito dal programma
OPZIONI:
-x, --extract-file <extract-file> Il percorso del file in cui scrivere i risultati [predefinito:
stegbrute_results.txt]
-f, --file-name <file-name> Il percorso del file da decifrare
-t, --threads <threads> Numero di thread per il brute force del file [predefinito: 3]
-w, --wordlist <wordlist> Percorso della wordlist
per esempio:
Opzioni:
-x o --extract-file con <nome_file> salverà i risultati dei dati estratti nel nome_file, se non viene specificato alcun file stegbrute salverà i tuoi risultati nel file ./stegbrute_results.txt
-t o --threads con <numero_thread> lancerà un numero di programmi per forzare il file contemporaneamente, aumentare il numero di thread non significa sempre che funzionerà più velocemente, dipende da quanti thread la tua macchina può gestire
-f o --file_name con <nome_file> il nome del file che stegbrute attaccherà, deve essere uno di questi formati supportati: JPEG, BMP, WAV o AU
-w o --wordlist con <wordlist> il file da cui stegbrute prenderà le password riga per riga e poi inizierà a provarle sul file che vuoi decifrare, se non ne hai una puoi installare ad esempio
benchmark di stegbrute su diverse wordlist utilizzando 3 thread
| Password wordlist | Tempo |
|---|---|
| 100 | 841.12ms |
| 1000 | 8.57s |
| 10000 | 77.79s |
| 100000 | 775.93s |