
radare2 v6.2.0
Framework de ingeniería inversa estilo UNIX y conjunto de herramientas de línea de comandos
Radare2: Framework de ingeniería inversa libre para geeks de Unix
La rama master actual de git es 6.2.3, la próxima versión será 6.2.4.
Descripción
r2 es una reescritura completa de radare. Proporciona un conjunto de bibliotecas, herramientas y
plugins para facilitar las tareas de ingeniería inversa. Distribuido bajo LGPLv3, aunque
cada plugin puede tener licencias diferentes (consulta r2 -Lj para más detalles)
El proyecto radare comenzó como un simple editor hexadecimal de línea de comandos enfocado en forense. Hoy, r2 es una herramienta de línea de comandos de bajo nivel con todas las funciones y soporte para scripting con el intérprete de Javascript integrado o mediante r2pipe.
r2 puede editar archivos en discos duros locales, ver memoria del kernel y depurar programas localmente o mediante servidores gdb/windbg remotos. El amplio soporte de arquitecturas de r2 te permite analizar, emular, depurar, modificar y desensamblar cualquier binario.
Instalación
Descarga los últimos binarios publicados.
La forma recomendada de instalar radare2 es desde el código fuente del repositorio Git:
git clone https://github.com/radareorg/radare2
radare2/sys/install.sh
- Ejecuta
sys/install.shpara la instalación predeterminada acr+make+symlink - Se admiten compilaciones con meson/ninja (muon/samu también funciona) y make.
Nix
radare2 proporciona empaquetado Nix en dist/nix.
Compilación desde el código fuente
- r2 se puede instalar desde
gito mediantepipusandor2env. - Las compilaciones para Windows requieren meson y msvc o mingw como compiladores
- Para desinstalar la compilación actual de r2 ejecuta
make uninstall - Para desinstalar TODAS las instalaciones del sistema de r2 haz:
sudo make purge
En Windows usa los scripts .bat y msvc:
preconfigure.bat REM setup python, meson, ninja
configure.bat REM run meson b + vs project
make.bat REM run ninja -C b
prefix\bin\radare2.exe
Plugins populares:
Usando la herramienta r2pm puedes explorar e instalar muchos plugins y herramientas que usan radare2.
- iaito: La interfaz gráfica oficial de Qt
- keystone Instrucciones del ensamblador usando la biblioteca Keystone
- decai Descompilador basado en IA
- r2ai ¡Ejecuta un Modelo de Lenguaje en localhost con Llama dentro de r2!
- r2dec: Un descompilador basado en r2 escrito en JS, accesible con el comando
pdd - r2diaphora: El motor de diffing binario de Diaphora sobre radare2
- r2flutter: Análisis de snapshots AOT de Dart/Flutter para aplicaciones Android e iOS
- r2frida: El plugin io de frida. Inicia r2 con
r2 frida://0para usarlo - r2ghidra: El descompilador nativo independiente de ghidra accesible con
pdg - r4ghidra: Siente la alegría de radare dentro de tu Ghidra
- r2papi API de alto nivel sobre r2pipe
- r2pipe Scripting de radare2 desde cualquier lenguaje de programación
- r2poke Integración con GNU/Poke para capacidades extendidas de análisis binario
- goresym: Importa símbolos de GoReSym como flags
- r2yara Ejecuta Yara desde r2 o usa primitivas de r2 desde Yara
- radius2: Un motor de ejecución simbólica rápido basado en boolector y esil
- r2sarif importa/extiende/exporta documentos SARIF
- r2hermes Desensamblador y analizador para bytecode Hermes de React Native
- r2renef Plugin IO Renef para Radare2 - Instrumentación dinámica de Android
- r2unity: Inspecciona metadatos de Unity IL2CPP y binarios nativos desde radare2
- warrp Plugin nativo de radare2 para el formato WARP de binary ninja
Uso
Estos son los primeros pasos para usar r2, lee el libro o busca tutoriales para más detalles
$ r2 /bin/ls # open file in read-only
> aaa # analyse the program (r2 -A)
> afl # list all functions (try aflt, aflm)
> px 32 # print 32 byte hexdump current block
> s sym.main # seek to main (using flag name)
> f~foo # filter flags matching 'foo' (internal |grep)
> iS;is # list sections and symbols (rabin2 -Ss)
> pdf; agf # disassembly and ascii-art function graph
> oo+;w hello # reopen in read-write and write a string
> ?*~... # interactive filter in all command help
> q # quit
Muchos plugins están incluidos en r2 por defecto. Pero puedes ampliar sus capacidades usando el gestor de paquetes r2pm.
r2pm -s <word> # search packages matching a word
r2pm -Uci <pkg> # update database and clean install a package
r2pm -u <pkg> # uninstall the given package
r2pm -l <pkg> # list installed packages
Recursos
- Libro oficial: Lee sobre el uso de r2
- COMMUNITY.md: Participación en la comunidad y directrices generales
- CONTRIBUTING.md: Información sobre cómo reportar problemas y contribuir. Consulta también Contributing
- DEVELOPERS.md: Directrices de desarrollo para r2
- SECURITY.md: Instrucciones para reportar vulnerabilidades
- USAGE.md: Algunos comandos de ejemplo
- INSTALL.md: Instrucciones de instalación usando make o meson

