Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
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.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
ret-sync — ret-sync es un conjunto de plugins que ayuda a sincronizar una sesión de depuración (WinDbg/GDB/LLDB/OllyDbg2/x64dbg) con los desensambladores IDA/Ghidra/Binary Ninja. | Kitploit
Herramientas/GitHubGitHub/bootleg/ret-sync
Análisis Dinámico (Sandboxing)Ingeniería InversaDepuradoresUtilidades y FrameworksAnálisis de Binarios
GitHubbootleg/ret-sync

ret-sync

ret-sync es un conjunto de plugins que ayuda a sincronizar una sesión de depuración (WinDbg/GDB/LLDB/OllyDbg2/x64dbg) con los desensambladores IDA/Ghidra/Binary Ninja.

Ver Repositorio
2.4k30744hace 8 mesesRevisado 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

ret-sync

ret-sync significa Synchronization de Herramientas de Ingeniería Inversa. Es un conjunto de plugins que ayudan a sincronizar una sesión de depuración (WinDbg/GDB/LLDB/OllyDbg/OllyDbg2/x64dbg) con un desensamblador (IDA/Ghidra/Binary Ninja). La idea subyacente es simple: tomar lo mejor de ambos mundos (análisis estático y dinámico).

Los depuradores y el análisis dinámico nos proporcionan:

  • vista local, con contexto dinámico en vivo (registros, memoria, etc.)
  • características/API especializadas integradas (ej.: !peb de WinDbg, !drvobj, !address, etc.)

Los desensambladores y el análisis estático nos proporcionan:

  • vista macro sobre módulos
  • análisis de código, firmas, tipos, etc.
  • vista de gráficos elegante
  • descompilación
  • almacenamiento persistente de conocimiento dentro de IDBs/GPRs

Características clave:

  • sincronizar vistas de gráfico y descompilación con el estado del depurador
  • no es necesario lidiar con ASLR, las direcciones se reubican sobre la marcha
  • pasar datos (comentarios, salida de comandos) del depurador al desensamblador
  • múltiples IDBs/GPRs pueden sincronizarse al mismo tiempo permitiendo rastrear fácilmente a través de múltiples módulos
  • el desensamblador y el depurador pueden estar en diferentes hosts/VMs

ret-sync es un fork de qb-sync que desarrollé y mantuve durante mi estancia en Quarkslab.


Tabla de contenidos

  • Contenido del repositorio
  • Requisitos previos generales
  • Versión binaria
  • Configuración de ret-sync
  • Instalación
    • Extensión para IDA
    • Extensión para Ghidra
    • Extensión para Binary Ninja
    • Extensión para WinDbg
    • Instalación de GNU gdb (GDB)
    • Instalación de LLDB
    • Instalación de OllyDbg 1.10
    • Instalación de OllyDbg2
    • Instalación de x64dbg
  • Uso
    • Comandos del depurador ret-sync
    • Uso de IDA
    • Uso de Ghidra
    • Uso de Binary Ninja
    • Uso de WinDbg
    • Uso de GNU gdb (GDB)
    • Uso de LLDB
    • Uso de OllyDbg 1.10
    • Uso de OllyDbg2
    • Uso de x64dbg
    • Uso de la librería Python
  • Extender
  • TODO
  • Errores/Limitaciones conocidos
  • Licencia
  • Agradecimientos

Contenido del repositorio

Los plugins del depurador:

  • ext_windbg/sync: archivos fuente de la extensión WinDbg, una vez compilado: sync.dll
  • ext_gdb/sync.py: plugin de GDB
  • ext_lldb/sync.py: plugin de LLDB
  • ext_olly1: plugin de OllyDbg 1.10
  • ext_olly2: plugin de OllyDbg v2
  • ext_x64dbg: plugin de x64dbg

Los plugins del desensamblador:

  • ext_ida/SyncPlugin.py
  • ext_ghidra/dist/ghidra_*_retsync.zip: plugin de Ghidra
  • ext_bn/retsync: plugin de Binary Ninja

Y el plugin de librería:

  • ext_lib/sync.py: librería Python independiente

Requisitos previos generales

Los plugins de IDA y GDB requieren una instalación válida de Python. Se soportan Python 2 (>=2.7) y Python 3.

Versión binaria

Se ofrecen binarios precompilados para los depuradores WinDbg/OllyDbg/OllyDbg2/x64dbg a través de un pipeline de Azure DevOps: Build Status

Seleccione la última compilación y verifique los artefactos en la sección Related: 6 published.

Se proporciona un archivo de plugin precompilado del plugin de Ghidra en ext_ghidra/dist.

Configuración de ret-sync

ret-sync debería funcionar sin configuración previa para la mayoría de los usuarios con una configuración típica: depurador y desensamblador(es) en el mismo host, nombres de módulos coincidentes.

Aún así, en algunos escenarios se puede utilizar una configuración específica. Para ello, las extensiones y plugins buscan un archivo de configuración global opcional llamado .sync en el directorio personal del usuario. Debe ser un archivo .INI válido.

Adicionalmente, los plugins de IDA y Ghidra también buscan el archivo de configuración primero en el directorio del IDB o del proyecto (<project>.rep) para permitir configuraciones locales por IDB/proyecto. Si hay un archivo de configuración local, se ignora el archivo de configuración global.

Los valores declarados en estos archivos de configuración anulan los valores predeterminados. Tenga en cuenta que no se crea ningún archivo .sync de forma predeterminada.

A continuación detallamos tres escenarios comunes donde un archivo de configuración es útil/necesario:

  • Depuración remota
  • Discrepancia en nombres de módulos
  • PID faltante

Depuración remota: el depurador y el desensamblador están en diferentes hosts

La sección [INTERFACE] se utiliza para personalizar la configuración relacionada con la red. Supongamos que uno quiere sincronizar IDA con un depurador ejecutándose dentro de una máquina virtual (o simplemente otro host), escenario común de depuración remota del kernel.

Simplemente cree dos archivos .sync:

  • uno en la máquina donde está instalado IDA, en el directorio IDB:
  • Para Ghidra, colóquelo en el directorio home, ej. "/home/user" o "C:\Users\user".``` [INTERFACE] host=192.168.128.1 port=9234
Le dice al complemento **ret-sync** ``IDA`` que escuche en la interfaz ``192.168.128.1`` con el puerto ``9234``. No hace falta decir que esta interfaz debe ser accesible desde el host remoto o la máquina virtual.

* uno en la máquina donde se ejecuta el depurador, en el directorio home del usuario:```
[INTERFACE]
host=192.168.128.1
port=9234

Le indica al complemento de depurador ret-sync que se conecte al complemento ret-sync IDA configurado previamente para escuchar en esta interfaz.

NOTA: Debes especificar una IP real aquí y no usar 0.0.0.0. Esto se debe a que la variable es utilizada por múltiples fuentes tanto para enlazar como para conectar, por lo que usar 0.0.0.0 resultará en errores extraños.

Los nombres de los módulos de IDB y del depurador son diferentes```

[ALIASES] ntoskrnl_vuln.exe=ntkrnlmp.exe

La sección ``[ALIASES]`` se utiliza para personalizar el nombre que emplea un desensamblador (IDA/Ghidra) para registrar un módulo en su despachador/administrador de programas.

Por defecto, los complementos del desensamblador usan el nombre del archivo de entrada. Sin embargo, es posible que se haya renombrado el archivo previamente y que ya no coincida con el nombre del proceso real o del módulo cargado según lo ve el depurador.

Aquí simplemente le decimos al despachador que coincida con el nombre `ntkrnlmp.exe` (nombre real) en lugar de `ntoskrnl_vuln.exe` (nombre IDB).

## gdb con frontend de depuración de Qt Creator
Descargar herramienta