IDA

  • Posted on: 17 December 2018
  • By: ReYDeS

IDA es un desensamblador y depurador multi procesador para Windows, Linux o Mac OS X, el cual ofrece muchas características . IDA es un desensamblador interactivo, el cual permite a los usuarios tomar participación activa en el proceso de desensamblamiento. IDA no es un analizador automático de programas. IDA proporcionará sugerencias sobre instrucciones sospechosas, problemas no resueltos, etc. Es el trabajo del profesional informar a IDA como debe proceder. Todos los cambios hechos son guardados hacia el disco. Cuando se ejecute IDA nuevamente, toda la información del archivo siendo desensamblado es leído desde el disco, de tal manera se podrá reiniciar el trabajo en el punto pertinente.

IDA es quizás la herramienta por excelencia para desensamblar. IDA entiende un gran número de lenguajes máquina y formatos de archivos ejecutables. En su núcleo, IDA es de hecho una aplicación de base de datos. Cuando un archivo binario es cargado para su análisis, IDA carga cada byte del binario dentro de una base de datos, y asocia varias opciones o banderas con cada byte. Estas opciones o banderas pueden indicar si un byte representa código, datos, o información más específica como el primer byte de una instrucción de múltiples bytes. Los nombres asociados con diversas ubicaciones del programa o comentarios generados por IDA, o ingresados por el usuario son también almacenados dentro de la base de datos.

IDA puede analizar un programa cuando este no está ocupado realizando una acción solicitada. Es factible desensamblar un programa junto con IDA, pero las solicitudes tienen la prioridad.

El estado de un análisis en segundo plano es mostrado en la esquina superior derecha de la pantalla. Es factible también deshabilitar el análisis automático, pero en este caso algunas funciones de IDA producirán resultados extraños (por ejemplo, si se intenta convertir datos en instrucciones, IDA no rastreará todos los hilos del control de flujo, y los datos serán convertidos en instrucciones únicamente sobre la pantalla).

La versión de pago de IDA tiene las siguientes funcionalidades:

  • Capacidades para crear gráficos del código y representar relaciones de funciones
  • Capacidades de diagramas de flujo para representar flujos de funciones
  • Una ventana de cadenas para mostrar secuencias de caracteres ASCII o UNICODE contenidas en el archivo binario
  • Una gran base de datos de disposiciones comunes de estructuras de datos y prototipos de funciones
  • Una poderosa arquitectura de “plugins”, el cual permite extender fácilmente las capacidades de IDA
  • Un motor de scripting para automatizar muchas tareas de análisis
  • Varios depuradores integrados

IDA tiene una versión “freeware” para Windows, Linux y Mac OS X con las siguientes limitaciones:

  • No está permitido su uso comercial
  • Ausencia de todas las características incorporadas en IDA versión mayor a 7.0
  • Ausencia de soporte para muchos procesadores, formatos de archivos, depuradores, etc.
  • Viene sin soporte técnico.

IDA tiene un gran equipo de soporte y una activa comunidad. Así mismo tiene una gran cantidad de documentación técnica sobre los diferentes aspectos y capacidades de la herramienta.

Fuentes:

https://www.hex-rays.com/products/ida/
https://www.hex-rays.com/products/ida/support/idadoc/415.shtml
https://www.hex-rays.com/products/ida/support/download_freeware.shtml

Sobre el Autor


Alonso Eduardo Caballero Quezada - ReYDeS
Instructor y Consultor en Hacking Ético, Forense Digital & GNU/Linux
Correo Electrónico: ReYDeS@gmail.com
Twitter: @Alonso_ReYDeS
LinkedIn: pe.linkedin.com/in/alonsocaballeroquezada
Facebook: https://www.facebook.com/alonsoreydes
Youtube: http://www.youtube.com/c/AlonsoCaballero
Resumen de mi CV: http://www.reydes.com/d/?q=node/1