|
Ida-Minsc es un complemento para IDA Pro que ayuda a un usuario a secuestrar el complemento Idapython que está incluido con el desascado. Este complemento agrupa los diferentes aspectos de la API Idapython en un formato más simple que permite que un ingeniero inverso guarde diferentes aspectos de su trabajo con muy poca inversión.
Se introducen varios conceptos, como un sistema de etiquetado, soporte para funciones multicadas y filtrado con la intención de que la mayoría de los problemas de búsqueda y anotación se puedan realizar con solo unas pocas líneas de código. Esto debería permitir que un usuario escriba un código temporal rápido, hacky y que se pueda usar para aumentar sus esfuerzos de inversión sin distracción.
La instalación debe ser bastante simple y requiere simplemente clonar el repositorio directamente en el directorio de usuario de IDA del usuario. En la plataforma Windows, esto generalmente se encuentra en %APPDATA%/Hex-Rays/IDA Pro . Mientras que en la plataforma Linux esto se puede encontrar en $HOME/.idapro . Este contenido de este repositorio debería reemplazar ese directorio. Si tiene algún archivo que reside actualmente allí, simplemente muévalos al directorio del repositorio. Después de la instalación, IDA Pro debe cargar su complemento Idapython, lo que debería dar como resultado el idapythonrc.py que pertenece a Ida-Minsc que se ejecuta, lo que reemplazará el espacio de nombres predeterminado de Idapython con el que pertenece al complemento.
Para clonar el repositorio en un directorio $TARGET , uno simplemente puede hacer:
$ git clone https://github.com/arizvisa/ida-minsc "$TARGET"
Después de clonar el repositorio, el usuario deberá instalar sus dependencias de Python requeridas en sus paquetes de sitio. Esto se puede hacer usando pip , que es una herramienta que está inclinada con Python. El archivo que contiene los requisitos del usuario está en la raíz del repositorio como requirements.txt .
Para instalar las dependencias de Python requeridas, se puede ejecutar pip como así:
$ pip install -r "requirements.txt"
En este punto, cuando el usuario inicia IDA Pro, Ida-Minsc reemplazará el espacio de nombres de Idapython con el suyo, en cuyo punto se puede usar de inmediato. Para verificar que Ida-Minsc se instaló correctamente, se puede escribir lo siguiente en el indicador Idapython:
> database.config.version()
Esto debería devolver el número 0 ya que no se ha cargado ninguna base de datos.
Después de instalar las dependencias de Python, puede hacer algo como lo siguiente para enumerar todas las funciones en su base de datos:
> database.functions.list()
O para iterar a través de todas las funciones en la base de datos, puede probar:
> for ea in database.functions():
print(hex(ea))
Consulte la documentación para obtener más detalles sobre lo que este complemento pone a disposición de usted.
La documentación integral está disponible en la página del proyecto en Github.io, o se puede construir localmente a través de la rama "Docs".
Si el usuario desea crear documentación para uso local, primero deberá instalar el paquete Sphinx. Posteriormente, la totalidad de la documentación reside dentro de la rama "Docs". Simplemente consulte la rama, cambie el directorio a "documentos" y luego ejecute GNU Make como:
$ make html
Esto dará como resultado que el sistema de compilación analice los módulos disponibles y luego convierta toda la documentación en el directorio _build en relación con los docs/Makefile . La documentación se puede generar para varios formatos diferentes. Para enumerar todos los formatos disponibles, escriba make help en el símbolo del sistema.
Consulte Contriping.MD para las mejores prácticas sobre temas de informes o para agregar funcionalidad a este proyecto.
Gracias a una serie de personas anónimas y no anónimas que han ayudado con el desarrollo de este complemento durante todos estos años.