Come installare e usare Binwalk per estrarre partizioni bin

In questa guida ti spiego come installare e usare Binwalk per estrarre partizioni. La reverse engineering dei firmware è una pratica fondamentale per chi lavora nel campo della sicurezza informatica e dell’ethical hacking. Uno degli strumenti più potenti e diffusi per analizzare ed estrarre partizioni da file binari è Binwalk. In questa guida vedremo passo-passo come installarlo, configurarlo e utilizzarlo per esplorare il contenuto di un firmware.

Cos’è Binwalk?

Binwalk è un tool open source progettato per analizzare file binari, in particolare firmware di dispositivi embedded. Permette di individuare partizioni, filesystem e compressioni all’interno di un file .bin. È utilizzato da ricercatori, ethical hacker e sviluppatori per capire la struttura interna di un firmware e individuare eventuali vulnerabilità.

Installazione di Binwalk

Su Linux (Ubuntu/Debian):

sudo apt update
sudo apt install binwalk -y

Su macOS (con Homebrew)

brew install binwalk

Come utilizzarlo:

Utilizzo di base:

binwalk nomefile.bin

Mostra l’elenco delle partizioni, filesystem e compressioni rilevate. Ogni riga indica offset, tipo di dato e descrizione.

binwalk -e nomefile.bin

Il comando di sopra, crea una cartella nomefile.bin.extracted con i dati decompressi. Utile per esplorare filesystem come SquashFS, JFFS2, o immagini compressi.

Nel mio caso ho un file chiamato root_uImage.bin andrò ad verificare che tipo di partizione sono in possesso nel mio caso, di un router:

binwalk root_uImage.bin

Output rilevante:

8388608      0x800000         UBI erase count header, version: 1, EC: 0x0, VID header offset: 0x800, data offset: 0x1000

Questo significa:

  • A partire da offset 0x800000 (decimale 8388608) inizia una partizione UBI.
  • È presente un header UBI con contatore di erase (EC) a 0.
  • Il VID header (Volume Identifier) si trova a offset 0x800.
  • I dati reali iniziano a offset 0x1000.

Estrarre automaticamente le partizioni

binwalk -e root_uImage.bin

Opzioni avanzate

  • -Me: estrae e ricostruisce anche file compressi multipli.
  • -r: ricerca pattern specifici (es. magic numbers).
  • –dd=’.*’: estrazione mirata di tutti i file corrispondenti a un pattern.

Binwalk è uno strumento fondamentale per chi vuole capire, documentare e migliorare la sicurezza dei firmware embedded. Con pochi comandi puoi trasformare un file .bin opaco in una struttura leggibile e analizzabile, utile per scopi didattici, investigativi o di sviluppo.

Lascia un commento