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
BinAIVulHunter — Usa el descompilador IDA PRO HexRays con OpenAI(ChatGPT) para encontrar posibles vulnerabilidades en binarios | Kitploit
Herramientas/GitHubGitHub/ke0z/binaivulhunter
Análisis EstáticoAnálisis de VulnerabilidadesAnálisis de CódigoExplotaciónIngeniería InversaAnálisis de BinariosReversing Asistido por IA
GitHubke0z/binaivulhunter

BinAIVulHunter

Usa el descompilador IDA PRO HexRays con OpenAI(ChatGPT) para encontrar posibles vulnerabilidades en binarios

Ver Repositorio
37228hace 9 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

BinAIVulHunter

Un complemento de IDA Pro para ayudar a encontrar vulnerabilidades en binarios.

Utiliza el descompilador HexRays de IDA Pro con OpenAI (ChatGPT) para encontrar posibles vulnerabilidades en binarios.

Aviso legal: las posibles respuestas al intentar encontrar vulnerabilidades en binarios mediante una IA pueden dar lugar a falsos positivos; sin embargo, ha funcionado en muchos CTF en los que he trabajado (sencillos/medianos ... algunos difíciles).

Inspirado en Gepetto: https://github.com/JusticeRage/Gepetto

Instalación:

Coloca el script de Python en la ubicación de complementos de IDA Pro.

Uso:

Haz clic derecho en el código descompilado y selecciona "Buscar posible vulnerabilidad en la función"

image

image

Actualizado con la creación de exploits de muestra en Python (a veces bueno, a veces una mierda)

image

Actualizado con las funciones de renombrado y explicación de Gepetto

image

BinAIVulHunter - Complemento de análisis de vulnerabilidades impulsado por IA para IDA Pro

Python IDA Pro License

BinAIVulHunter es un complemento avanzado de IDA Pro que aprovecha múltiples proveedores de IA (OpenAI GPT, Google Gemini y Ollama) para realizar análisis inteligente de vulnerabilidades, explicación de código y evaluación de seguridad de funciones descompiladas.

🚀 Características

  • Compatibilidad con múltiples proveedores de IA: Elige entre OpenAI GPT, Google Gemini u Ollama
  • Detección de vulnerabilidades: Escaneo automatizado basado en la taxonomía CWE (Common Weakness Enumeration)
  • Explicación de código: Análisis y explicación de funciones descompiladas mediante IA
  • Renombrado de variables: Sugerencias inteligentes para mejores nombres de variables y funciones
  • Procesamiento por lotes: Escanea todas las funciones de un binario con gestión de memoria
  • Integración de referencias CWE: Búsqueda integrada de CWE y categorización detallada de vulnerabilidades
  • Modo headless: Soporte de línea de comandos para análisis automatizado
  • Soporte de IA local: Análisis centrado en la privacidad con Ollama (sin dependencias en la nube)

📋 Tabla de contenidos

  • Instalación
  • Configuración de los proveedores de IA
    • OpenAI
    • Google Gemini
    • Ollama (IA local)
  • Configuración
  • Uso
    • Modo interactivo
    • Menú contextual
    • Panel de control
    • Modo headless
  • Categorías de vulnerabilidades
  • Ejemplos
  • Solución de problemas
  • Contribuciones
  • Licencia

🛠 Instalación

  1. Descarga el complemento:

    root@kitploit:~
    # Save BinAIVulHunter.py to your IDA Pro plugins directory
    # Typically: C:\Program Files\IDA Pro X.X\plugins\
    
  2. Instala las dependencias base:

    root@kitploit:~
    pip install psutil
    
  3. Instala las bibliotecas de los proveedores de IA (elige una o más):

    root@kitploit:~
    # For OpenAI
    pip install openai
    
    # For Google Gemini
    pip install google-generativeai
    
    # For Ollama (local AI)
    pip install requests
    
  4. Reinicia IDA Pro para cargar el complemento

🤖 Configuración de los proveedores de IA

OpenAI

  1. Obtén tu clave de API:

    • Visita Claves de API de OpenAI
    • Crea una nueva clave de API
  2. Configura la variable de entorno:

    root@kitploit:~
    # Windows Command Prompt
    set OPENAI_API_KEY=sk-your-openai-key-here
    
    # PowerShell
    $env:OPENAI_API_KEY="sk-your-openai-key-here"
    
    # Linux/Mac
    export OPENAI_API_KEY="sk-your-openai-key-here"
    
  3. Reinicia IDA Pro

Google Gemini

  1. Obtén tu clave de API:

    • Visita Google AI Studio
    • Crea una nueva clave de API
  2. Configura la variable de entorno:

    root@kitploit:~
    # Windows Command Prompt
    set GEMINI_API_KEY=your-gemini-key-here
    
    # PowerShell
    $env:GEMINI_API_KEY="your-gemini-key-here"
    
    # Linux/Mac
    export GEMINI_API_KEY="your-gemini-key-here"
    
  3. Reinicia IDA Pro

Ollama (IA local)

  1. Instala Ollama:

    • Visita Ollama.ai y descarga el instalador
    • O usa los gestores de paquetes:
      root@kitploit:~
      # Linux
      curl -fsSL https://ollama.ai/install.sh | sh
      
      # macOS
      brew install ollama
      
  2. Inicia el servicio de Ollama:

    root@kitploit:~
    ollama serve
    
  3. Descarga los modelos de IA:

    root@kitploit:~
    # For general code analysis
    ollama pull llama2
    
    # For coding tasks (recommended)
    ollama pull codellama
    
    # Other specialized models
    ollama pull mistral
    ollama pull deepseek-coder
    
  4. Variables de entorno opcionales:

    root@kitploit:~
    # Custom Ollama server (if not localhost:11434)
    set OLLAMA_BASE_URL=http://your-server:11434
    
    # Set default model
    set OLLAMA_MODEL=codellama
    

⚙️ Configuración

Variables de entorno

Selección de proveedor

Establece tu proveedor de IA preferido:

root@kitploit:~
# Use OpenAI (default)
set VULCHAT_PROVIDER=openai

# Use Google Gemini
set VULCHAT_PROVIDER=gemini

# Use Ollama (local)
set VULCHAT_PROVIDER=ollama

🎯 Uso

Modo interactivo

  1. Abre IDA Pro con tu archivo binario
  2. Navega hasta la vista del descompilador (F5)
  3. Accede a VulChat mediante:
    • Menú: Edit → VulChat
    • Menú contextual: Haz clic derecho en la vista del descompilador
    • Atajos de teclado (ver más abajo)

Menú contextual

Haz clic derecho en la vista del descompilador para acceder a:

  • Buscar posible vulnerabilidad - Analiza la función actual en busca de problemas de seguridad
  • Explicar - Obtén una explicación de IA del comportamiento de la función
  • Renombrar variables - Obtén sugerencias inteligentes de nombres para variables y funciones
  • Generar entradas de prueba seguras - Crea casos de prueba para la función
  • Escanear todo - Escaneo masivo de vulnerabilidades en todo el binario
  • Información CWE - Consulta los detalles de vulnerabilidades CWE
  • Panel de control - Cambia entre proveedores de IA y configura los ajustes

Panel de control

Accede mediante Edit → VulChat → Control Panel o Ctrl+Alt+P:

  • Cambiar proveedores de IA: Cambia entre OpenAI, Gemini y Ollama
  • Selección de modelo: Elige modelos específicos para cada proveedor
  • Información de estado: Consulta la configuración actual y la disponibilidad de los proveedores
  • Guía de configuración: Obtén instrucciones detalladas de configuración

Atajos de teclado

Modo headless

Para análisis automatizado e integración con CI/CD:

root@kitploit:~
# Scan all functions for vulnerabilities
ida64.exe -A -S"BinAIVulHunter.py --scan-all --output results.json" binary.exe

# Decompile all functions with caching
ida64.exe -A -S"BinAIVulHunter.py --decompile-all --cache-dir ./cache" binary.exe

# Custom batch settings
ida64.exe -A -S"BinAIVulHunter.py --scan-all --batch-size 5 --function-pause 3 --batch-pause 15" binary.exe

Parámetros del modo headless

🛡️ Categorías de vulnerabilidades

BinAIVulHunter analiza el código basándose en la taxonomía de desarrollo de software CWE-699:

📚 Ejemplos

Ejemplo 1: Escaneo básico de vulnerabilidades

root@kitploit:~
# Navigate to a function in IDA Pro
# Press Ctrl+Alt+V or right-click → "Find Possible Vulnerability"

# Example output:
"""
POTENTIAL VULNERABILITIES:

1. Buffer overflow in strcpy operation
   CWE: CWE-120 | Severity: High
   Mitigation: Replace strcpy with strncpy and validate buffer sizes

2. Integer overflow in arithmetic operation
   CWE: CWE-190 | Severity: Medium  
   Mitigation: Add overflow checks before arithmetic operations
"""

Ejemplo 2: Escaneo por lotes

root@kitploit:~
# Command line batch scan
ida64.exe -A -S"BinAIVulHunter.py --scan-all --output vuln_report.json" malware.exe

# Results in vuln_report.json:
{
  "scan_results": {
    "total_functions": 245,
    "vulnerable_functions": 12,
    "functions": [
      {
        "name": "sub_401000",
        "address": "0x401000", 
        "vulnerabilities": [
          {
            "description": "Unsafe string function used",
            "cwe_id": "CWE-120",
            "severity": "High",
            "mitigation": "Use safe string functions"
          }
        ]
      }
    ]
  }
}

Ejemplo 3: Cambio de proveedor de IA

root@kitploit:~
# Set environment variables
os.environ['VULCHAT_PROVIDER'] = 'ollama'
os.environ['OLLAMA_MODEL'] = 'codellama'

# Or use Control Panel in IDA Pro:
# Edit → VulChat → Control Panel → Provider Menu → Ollama

🔧 Solución de problemas

Problemas comunes

  1. Error "Proveedor no disponible":

    root@kitploit:~
    # Check environment variables
    echo %OPENAI_API_KEY%
    echo %GEMINI_API_KEY%
    
    # Verify API keys are valid
    # Restart IDA Pro after setting variables
    
  2. Error de conexión con Ollama:

    root@kitploit:~
    # Check if Ollama is running
    curl http://localhost:11434/api/tags
    
    # Start Ollama if needed
    ollama serve
    
    # Verify models are installed
    ollama list
    
  3. Problemas de memoria durante el procesamiento por lotes:

    root@kitploit:~
    # Reduce batch size in Control Panel or headless mode
    --batch-size 1 --function-pause 10
    
  4. Límites de velocidad de la API:

    root@kitploit:~
    # Increase pause times
    --function-pause 10 --batch-pause 30
    
    # Or switch to Ollama for unlimited local processing
    

Información de depuración

Consulta la ventana de salida de IDA Pro para ver registros detallados:

  • Estado de inicialización del proveedor
  • Información de solicitudes/respuestas de la API
  • Estadísticas de uso de memoria
  • Mensajes de error y trazas de pila

🏆 Modelos de IA recomendados

Para análisis de seguridad

Comparación de rendimiento

🤝 Contribuciones

¡Agradecemos las contribuciones! Consulta nuestras Directrices para contribuciones para más detalles.

Configuración del desarrollo

  1. Haz un fork del repositorio
  2. Clona tu fork:
    root@kitploit:~
    git clone https://github.com/yourusername/BinAIVulHunter.git
    
  3. Instala las dependencias de desarrollo:
    root@kitploit:~
    pip install -e .[dev]
    
  4. Realiza tus cambios
  5. Envía una solicitud de extracción (pull request)

Áreas de contribución

  • Integraciones adicionales de proveedores de IA
  • Patrones mejorados de detección de vulnerabilidades
  • Soporte para nuevas categorías CWE
  • Optimizaciones de rendimiento
  • Mejoras de documentación
  • Ampliación de la cobertura de pruebas

📄 Licencia

Este proyecto está licenciado bajo la Licencia MIT; consulta el archivo LICENSE para más detalles.

🔗 Enlaces

  • IDA Pro: https://www.hex-rays.com/products/ida/
  • API de OpenAI: https://platform.openai.com/
  • Google Gemini: https://aistudio.google.com/
  • Ollama: https://ollama.ai/
  • Base de datos CWE: https://cwe.mitre.org/

🙏 Agradecimientos

  • Hex-Rays por la excelente plataforma IDA Pro
  • Los equipos de OpenAI, Google y Ollama por sus tecnologías de IA
  • MITRE por la completa taxonomía CWE
  • La comunidad de ingeniería inversa y ciberseguridad

⚠️ Aviso legal: Esta herramienta es exclusivamente para fines educativos y de investigación de seguridad legítima. Asegúrate siempre de contar con la autorización adecuada antes de analizar cualquier software. El análisis generado por IA debe verificarse manualmente y no sustituye la revisión de un experto humano.

Descargar herramienta
VariableDescripciónPredeterminadoRequerida
OPENAI_API_KEYClave de API de OpenAINingunaPara OpenAI
GEMINI_API_KEYClave de API de Google GeminiNingunaPara Gemini
OLLAMA_BASE_URLURL del servidor de Ollamahttp://localhost:11434No
OLLAMA_MODELModelo de Ollama predeterminadollama2No
VULCHAT_PROVIDERProveedor de IA a utilizaropenaiNo
VULCHAT_MODELNombre del modelo específicoPredeterminado del proveedorNo
OPENAI_BASE_URLEndpoint personalizado de OpenAIAPI oficialNo
AtajoAcción
Ctrl+Alt+VEncontrar vulnerabilidades
Ctrl+Alt+GExplicar función
Ctrl+Alt+RRenombrar variables
Ctrl+Alt+XGenerar entradas de prueba
Ctrl+Alt+SEscanear todas las funciones
Ctrl+Alt+WConsulta de referencia CWE
Ctrl+Alt+PPanel de control
Ctrl+F5Descompilar todas las funciones
ParámetroDescripciónPredeterminado
--scan-allEscanea todas las funciones en busca de vulnerabilidades-
--decompile-allDescompila todas las funciones-
--batch-sizeFunciones por lote3
--function-pausePausa entre funciones (segundos)5
--batch-pausePausa entre lotes (segundos)10
--outputArchivo de salida JSON con los resultadosNinguno
--cache-dirDirectorio para la caché de descompilaciónNinguno
CategoríaID CWEEjemplos
Errores de búfer de memoriaCWE-1218Desbordamientos de búfer, use-after-free
Errores numéricosCWE-189Desbordamiento de enteros, división por cero
Gestión de recursosCWE-399Fugas de memoria, fugas de descriptores de archivo
Validación de datosCWE-1215Validación de entrada, fallos de inyección
AutenticaciónCWE-1211Autenticación débil, bypass
AutorizaciónCWE-1212Escalada de privilegios, control de acceso
Problemas criptográficosCWE-310Criptografía débil, gestión de claves
Fugas de informaciónCWE-199Exposición de datos, canales laterales
Manejo de erroresCWE-389Excepciones no capturadas, estados de error
InicializaciónCWE-452Variables sin inicializar, limpieza
ProveedorModeloIdeal paraCoste
OpenAIgpt-4Análisis exhaustivo$$$
OpenAIgpt-3.5-turboAnálisis general rápido$$
Geminigemini-proRendimiento equilibrado$$
OllamacodellamaAnálisis centrado en códigoGratis
Ollamadeepseek-coderDetección de vulnerabilidadesGratis
Ollamallama2Uso generalGratis
ProveedorVelocidadPrecisiónPrivacidadCoste
OpenAI GPT-4⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
Gemini Pro⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
Ollama⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐