
Time Travel Debugging IDA plugin
⚠️ Atención usuarios de IDA 8: usar ttddbg con IDA 8 requiere una solución temporal por el momento, consulte Problemas conocidos
Este plugin añade un nuevo depurador a IDA que permite cargar trazas de Time Travel Debugging generadas con WinDBG Preview.

Este plugin admite trazas tanto de x86 como de x64 y, por extensión, IDA e IDA64.
La instalación del plugin se puede realizar mediante el instalador de la página de versiones. El instalador instalará automáticamente las dependencias requeridas, siempre que tenga instalada una copia de WinDBG Preview.
Una vez instalado, puede utilizar el plugin seleccionando el depurador ttddbg en la interfaz de IDA y especificando su archivo *.run como "Aplicación". Para obtener ayuda sobre cómo generar un archivo .run, consulte HOWTO_TIME_TRAVEL.md.


Desde la versión 1.1.0, ttddbg admite una nueva funcionalidad que denominamos "trazado de funciones". Mientras está en la vista de depuración, es posible marcar funciones para su trazado haciendo clic derecho sobre ellas en las interfaces de Funciones o Módulo. Una vez que una función está trazada, cualquier llamada a esta función, así como cualquier sentencia return, se registrará en la nueva ventana de Eventos de traza.
Utilizando la información de funciones de su trabajo de ingeniería inversa, ttddbg también extrae los parámetros pasados a la función, así como su valor de retorno. Los símbolos se imprimen automáticamente de forma legible (pretty-printed) según la información disponible para IDA, como los valores de enumeración.
picture_search, que es nuevo en IDA 8. Eliminar temporalmente picture_search.dll y picture_search64.dll de la carpeta plugins soluciona este problema. El problema ya se ha comunicado a Hex-Rays.Requisitos previos:
TTDReplay.dll (normalmente en C:\Program Files\WindowsApps\[WinDBG folder]\amd64\ttd\)TTDReplayCPU.dll (normalmente en C:\Program Files\WindowsApps\[WinDBG folder]\amd64\ttd\)¡Y deje que CMAKE haga su magia!
$ git clone [email protected]:airbus-cert/ttddbg.git --recursive
$ mkdir build
$ cd build
$ cmake ..\ttddbg -DIDA_SDK_SOURCE_DIR=[PATH_TO_IDA_SDK_ROOT_FOLDER] -DCPACK_PACKAGE_INSTALL_DIRECTORY="IDA Pro 7.7"
$ cmake --build . --target package --config release
Para crear una solución de desarrollo:
$ git clone [email protected]:airbus-cert/ttddbg.git --recursive
$ mkdir build
$ cd build
$ cmake ..\ttddbg -DIDA_SDK_SOURCE_DIR=[PATH_TO_IDA_SDK_ROOT_FOLDER] -DBUILD_TESTS=ON
Saludos a commial por su trabajo en ttd-bindings!
| Icono | Acción |
|---|
![]() | Ir al punto de interrupción anterior |
![]() | Simular una ejecución completa del programa |
![]() | Paso atrás individual (RIP - una instrucción) |
![]() | Gestionar la línea de tiempo de eventos interesantes (Hilos creados/finalizados, Módulo cargado/descargado, Excepciones, Personalizado) |
![]() | Gestionar las funciones actualmente trazadas |
![]() | Ver eventos de traza |