Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
dwarf2json — Convertire le informazioni su simboli e tipi ELF/DWARF nel JSON intermedio di vol3. | Kitploit
Strumenti/GitHubGitHub/volatilityfoundation/dwarf2json
Memory ForensicsReverse EngineeringDigital ForensicsUtilità e FrameworkAnalisi di Binari
GitHubvolatilityfoundation/dwarf2json

dwarf2json

Convertire le informazioni su simboli e tipi ELF/DWARF nel JSON intermedio di vol3.

Vedi Repository
157371 anno faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Introduzione

dwarf2json è un'utilità Go che elabora file contenenti informazioni su simboli e tipi per generare l'output JSON dell'Intermediate Symbol File (ISF) di Volatility3, adatto per l'analisi di Linux e macOS.

build

Per compilare (richiede Go 1.18+):

root@kitploit:~
  $ go build

Per eseguire:

root@kitploit:~
  $ ./dwarf2json --help
  Usage: ./dwarf2json COMMAND

  A tool for generating intermediate symbol file (ISF)

  Commands:
    linux  generate ISF for Linux analysis
    mac    generate ISF for macOS analysis

  Options:
  -h, --help     Show this screen.
  -v, --version  Show tool and output schema version.

Nota: l'elaborazione di file DWARF di grandi dimensioni richiede un minimo di 8GB di RAM.

Elaborazione di Linux

dwarf2json supporta l'elaborazione delle informazioni DWARF e della tabella dei simboli da file ELF e dei simboli da file di input System.map per produrre ISF per l'analisi di Linux.

L'utente può selezionare se includere simboli, tipi, o entrambi per ciascun file di input.

root@kitploit:~
  $ ./dwarf2json linux --help
  Usage: dwarf2json linux [OPTIONS]

        --elf PATH           ELF file PATH to extract symbol and type information
        --elf-symbols PATH   ELF file PATH to extract only symbol information
        --elf-types PATH     ELF file PATH to extract only type information
        --system-map PATH    System.Map file PATH to extract symbol information

Ad esempio, per includere simboli e tipi per un dato file DWARF del kernel Linux si può usare:

root@kitploit:~
  $ ./dwarf2json linux --elf /usr/lib/debug/boot/vmlinux-4.4.0-137-generic > output.json

Gli offset dei simboli estratti dalle informazioni della tabella dei simboli hanno precedenza su quelli estratti dalle informazioni DWARF. Pertanto, i simboli estratti dai file specificati con il flag --elf-symbols hanno precedenza sui simboli estratti dai file specificati con --elf. Gli offset dei simboli da System.Map, specificati con il flag --system-map, hanno la precedenza più alta. In caso di conflitto tra le diverse fonti di informazioni sui simboli, verrà utilizzato l'offset di System.Map.

È consentito fornire più file di input per un dato flag. Ad esempio, ./dwarf2json --elf file1 --elf file2 ... elaborerebbe sia file1 che file2. Quando si incontrano informazioni contrastanti su simboli o tipi, i dati dell'ultimo file specificato nell'invocazione del comando avranno la precedenza.

Elaborazione di macOS

dwarf2json supporta l'elaborazione delle informazioni DWARF e della tabella dei simboli da file Mach-O per produrre ISF per l'analisi di macOS.

L'utente può selezionare se includere simboli, tipi, o entrambi per ciascun file di input.

root@kitploit:~
  $ ./dwarf2json mac --help
  Usage: dwarf2json mac [OPTIONS]

        --arch NAME            architecture for universal FAT files. NAME is one of {i386|x86_64}
        --macho PATH           Mach-O file PATH to extract symbol and type information
        --macho-symbols PATH   Mach-O file PATH to extract only symbol information
        --macho-types PATH     Mach-O file PATH to extract only type information

Ad esempio, per includere simboli e tipi per un dato file DWARF del kernel macOS e i simboli di un kernel macOS si può usare:

root@kitploit:~
  $ ./dwarf2json mac --macho /path/kernel.dSYM/Contents/Resources/DWARF/kernel \
    --macho-symbols /path/kernel > output.json

Gli offset dei simboli estratti dalle informazioni della tabella dei simboli hanno precedenza su quelli estratti dalle informazioni DWARF. Pertanto, i simboli estratti dai file specificati con il flag --macho-symbols hanno precedenza sui simboli estratti dai file specificati con --macho.

È consentito fornire più file di input per un dato flag. Ad esempio, ./dwarf2json --macho file1 --macho file2 ... elaborerebbe sia file1 che file2. Quando si incontrano informazioni contrastanti su simboli o tipi, i dati dell'ultimo file specificato nell'invocazione del comando avranno la precedenza.

Quando si elaborano binari universali FAT Mach-O, il flag --arch deve essere usato per selezionare l'architettura per uno dei file Mach-O incorporati.

Ad esempio, generare il file JSON ISF per l'architettura i386 di un debug kit del kernel OS X 10.7 si può fare con:

root@kitploit:~
  $ ./dwarf2json mac --arch i386 \
  --macho mach_kernel.dSYM/Contents/Resources/DWARF/mach_kernel \
  --macho-symbols mach_kernel > mach_kernel.json
Scarica lo strumento