Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
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.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
ipyida — Integración de consola IPython para IDA Pro | Kitploit
Herramientas/GitHubGitHub/eset/ipyida
Ingeniería InversaScripting y AutomatizaciónAnálisis de Binarios
GitHubeset/ipyida

ipyida

Integración de consola IPython para IDA Pro

Ver Repositorio
85076hace 2 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

= IPyIDA

IPyIDA es una solución basada únicamente en Python para añadir una consola de IPython a IDA Pro. Usa <Shift-.> para abrir una ventana con una consola Qt integrada. Así podrás beneficiarte del autocompletado de IPython, la ayuda en línea, el campo de entrada con fuente monoespaciada, los gráficos, etc.

También puedes conectarte al kernel fuera de IDA usando ipython console --existing.

image::ipyida-screenshot.png[Captura de IPyIDA,width=100%]

== Instalación

IPyIDA debería ser compatible con IDA 6.6 y versiones posteriores en Windows, OS X y Linux. Se ha probado con IDA hasta la versión 9.2.

=== Instalación rápida y sencilla

Se proporciona un script para instalar IPyIDA y sus dependencias automágicamente desde la consola de IDA. Simplemente copia la siguiente línea en la consola de IDA.

.Python 2 [source,python]

import urllib2; exec urllib2.urlopen('https://github.com/eset/ipyida/raw/stable/install_from_ida.py').read()

.Python 3 [source,python]

import urllib.request; exec(urllib.request.urlopen('https://github.com/eset/ipyida/raw/stable/install_from_ida.py').read())

En macOS, Python3.framework no proporciona un archivo CA de confianza. Puedes usar el archivo del sistema /etc/ssl/cert.pem.

[source,python]

import urllib.request; exec(urllib.request.urlopen('https://github.com/eset/ipyida/raw/stable/install_from_ida.py', cafile="/etc/ssl/cert.pem").read())

El script hará lo siguiente:

  1. Instalar pip si no está ya instalado
  2. Instalar el paquete ipyida desde https://pypi.org/project/ipyida/[PyPi]
  3. Copiar ipyida_plugin_stub.py al directorio plugins del usuario
  4. Cargar el plugin de IPyIDA

Puedes inspeccionar el script link:install_from_ida.py[] si quieres ver exactamente lo que hace.

==== Actualización

Vuelve a ejecutar el script de instalación para actualizar a la última versión y reinicia IDA.

=== Instalarlo a la manera de IDA

Si prefieres gestionar las dependencias y las actualizaciones tú mismo, puedes copiar ipyida_plugin_stub.py y el directorio ipyida dentro del directorio plugins de IDA.

Este método requiere que gestiones las dependencias por tu cuenta. IPyIDA requiere los paquetes ipykernel y qtconsole, y el paquete qasync si se usa ipykernel versión 5 o superior.

== Integración con Jupyter Notebook

IPyIDA incluye un comando mágico, %open_notebook, para abrir un navegador con un notebook conectado a IPyIDA. El comando se encarga de instalar las dependencias en su primera ejecución y de iniciar un servidor Notebook si no hay uno ya en ejecución. Consulta la ayuda del comando (escribiendo %open_notebook?) para más opciones.

== Personalización de la consola de IPython

Por defecto, la consola no tiene ningún global disponible. Si quieres tener un módulo importado antes de que se abra la consola, IPyIDA leerá el archivo ipyidarc.py del directorio de usuario de IDA (idaapi.get_user_idadir()). Todo lo que importes en este archivo estará disponible en la consola de IPython.

Esto es similar al archivo idapythonrc.py.

=== Modo oscuro

Con un tema oscuro en IDA Pro, es más conveniente tener también un tema oscuro en la consola de IPython. Para activar el tema oscuro integrado en qtconsole, añade lo siguiente en tu ipyidarc.py:

[source, python]

import qtconsole.styles import ipyida.ida_qtconsole ipyida.ida_qtconsole.set_widget_options(dict( style_sheet = qtconsole.styles.default_dark_style_sheet, syntax_style = qtconsole.styles.default_dark_syntax_style ))

== Integración con IDE

Una de las características notables de IPyIDA es la capacidad de integrarse con el IDE PyCharm. Esto permite funcionalidades como ejecutar el código paso a paso, resaltado de sintaxis, integración con Github CoPilot, etc. Para usar esta característica, simplemente lanza IDA y abre una base de datos, crea un Jupyter Notebook en PyCharm, añade algo de código y haz clic en ejecutar. IPyIDA hace toda la magia en segundo plano.

image::pycharm-screenshot.png[Captura de IPyIDA,width=100%]

== Advertencias

=== La consola externa no responde si la ventana de IDA está en segundo plano durante demasiado tiempo

Este problema es específico de la función App Nap de OS X en OS X 10.9 y versiones posteriores. Al ejecutar Deshabilitar App Nap para IDA Pro parece solucionar el problema, pero es un hack por ahora y consumirá más batería en un portátil; deberíamos encontrar una mejor solución.

Así es como se deshabilita App Nap para IDA Pro:

[source,bash]

defaults write com.hexrays.idaq NSAppSleepDisabled -bool YES defaults write com.hexrays.idaq64 NSAppSleepDisabled -bool YES

== Trabajos similares

@james91b también integró con éxito un kernel de IPython en IDA. Al ser un usuario de IDA que no usa Windows, necesitaba algo multiplataforma y adopté un enfoque exclusivamente Python para implementarlo. Aunque algunas de las ideas de implementación provienen de ese proyecto, IPyIDA fue escrito desde cero. Un reconocimiento a @james91b y a todos los contribuyentes de IDA_IPython. IDA_IPython está disponible en Github en https://github.com/james91b/ida_ipython.

Descargar herramienta