Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
dwarf2json — Convierte información de símbolos y tipos ELF/DWARF al JSON intermedio de vol3. | Kitploit
Herramientas/GitHubGitHub/volatilityfoundation/dwarf2json
Forensia de MemoriaIngeniería InversaForensia DigitalUtilidades y FrameworksAnálisis de Binarios
GitHubvolatilityfoundation/dwarf2json

dwarf2json

Convierte información de símbolos y tipos ELF/DWARF al JSON intermedio de vol3.

Ver Repositorio
15737hace 1 añoRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Introducción

dwarf2json es una utilidad de Go que procesa archivos que contienen información de símbolos y tipos para generar la salida JSON de Intermediate Symbol File (ISF) de Volatility3, adecuada para el análisis de Linux y macOS.

build

Para compilar (se requiere Go 1.18+):

root@kitploit:~
  $ go build

Para ejecutar:

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: el procesamiento de archivos DWARF grandes requiere un mínimo de 8 GB de RAM.

Procesamiento de Linux

dwarf2json admite el procesamiento de información DWARF y de tablas de símbolos de archivos ELF, y de símbolos de archivos de entrada System.map para producir ISF para el análisis de Linux.

El usuario puede seleccionar si desea incluir símbolos, tipos, o ambos para cada archivo de entrada.

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

Por ejemplo, para incluir símbolos y tipos de un archivo DWARF de un kernel de Linux determinado, se puede hacer con:

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

Los offsets de los símbolos extraídos de la información de la tabla de símbolos tienen prioridad sobre los extraídos de la información DWARF. Por lo tanto, los símbolos extraídos de los archivos especificados con la opción --elf-symbols tienen prioridad sobre los símbolos extraídos de los archivos especificados con --elf. Los offsets de los símbolos de System.Map, especificados con la opción --system-map, tienen la prioridad más alta. Si existe un conflicto entre las diferentes fuentes de información de símbolos, se utilizará el offset de System.Map.

Se permite proporcionar varios archivos de entrada para una misma opción. Por ejemplo, ./dwarf2json --elf file1 --elf file2 ... procesaría tanto file1 como file2. Cuando se encuentre información de símbolos o tipos en conflicto, los datos del último archivo especificado en la invocación del comando tendrán prioridad.

Procesamiento de MacOS

dwarf2json admite el procesamiento de información DWARF y de tablas de símbolos de archivos Mach-O para producir ISF para el análisis de macOS.

El usuario puede seleccionar si desea incluir símbolos, tipos, o ambos para cada archivo de entrada.

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

Por ejemplo, para incluir símbolos y tipos de un archivo DWARF de un kernel de macOS determinado y símbolos de un kernel de macOS, se puede hacer con:

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

Los offsets de los símbolos extraídos de la información de la tabla de símbolos tienen prioridad sobre los extraídos de la información DWARF. Por lo tanto, los símbolos extraídos de los archivos especificados con la opción --macho-symbols tienen prioridad sobre los símbolos extraídos de los archivos especificados con --macho.

Se permite proporcionar varios archivos de entrada para una misma opción. Por ejemplo, ./dwarf2json --macho file1 --macho file2 ... procesaría tanto file1 como file2. Cuando se encuentre información de símbolos o tipos en conflicto, los datos del último archivo especificado en la invocación del comando tendrán prioridad.

Al procesar binarios universales FAT de Mach-O, es necesario utilizar la opción --arch para seleccionar la arquitectura de uno de los archivos Mach-O integrados.

Por ejemplo, la generación de un archivo JSON de ISF para la arquitectura i386 de un kit de depuración del kernel de OS X 10.7 se puede hacer con:

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