Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
BinAIVulHunter — 使用 IDA PRO HexRays 反编译器与 OpenAI(ChatGPT) 来发现二进制文件中可能存在的漏洞 | Kitploit
工具/GitHubGitHub/ke0z/binaivulhunter
静态分析漏洞分析代码分析漏洞利用逆向工程二进制分析AI 辅助逆向
GitHubke0z/binaivulhunter

BinAIVulHunter

使用 IDA PRO HexRays 反编译器与 OpenAI(ChatGPT) 来发现二进制文件中可能存在的漏洞

查看仓库
372289个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

BinAIVulHunter

一个用于帮助在二进制文件中查找漏洞的 IDA PRO 插件。

使用 IDA PRO HexRays 反编译器结合 OpenAI(ChatGPT)在二进制文件中查找可能的漏洞。

免责声明:使用 AI 在二进制文件中查找漏洞时,返回的结果可能会产生误报,但该工具在我参与过的许多 CTF 比赛中都表现良好(简单/中等……部分困难)。

灵感来源于 Gepetto:https://github.com/JusticeRage/Gepetto

安装:

将 Python 脚本放入 IDA Pro 插件目录。

使用方法:

右键单击反编译代码,选择“在函数中查找可能的漏洞”

image

image

更新:新增生成示例 Python 漏洞利用功能(有时好用,有时糟糕)

image

更新:集成 Gepetto 的重命名和解释函数功能

image

BinAIVulHunter - 基于 AI 的 IDA Pro 漏洞分析插件

Python IDA Pro License

BinAIVulHunter 是一款高级 IDA Pro 插件,利用多种 AI 提供商(OpenAI GPT、Google Gemini 和 Ollama)对反编译函数执行智能漏洞分析、代码解释和安全评估。

🚀 功能特性

  • 多 AI 提供商支持:在 OpenAI GPT、Google Gemini 或 Ollama 之间选择
  • 漏洞检测:基于 CWE(通用弱点枚举)分类法进行自动化扫描
  • 代码解释:对反编译函数进行 AI 驱动的分析和解释
  • 变量重命名:为更优的变量名和函数名提供智能建议
  • 批量处理:通过内存管理扫描二进制文件中的所有函数
  • CWE 参考集成:内置 CWE 查询和详细的漏洞分类
  • 无头模式:支持命令行自动化分析
  • 本地 AI 支持:使用 Ollama 进行注重隐私的分析(无云端依赖)

📋 目录

  • 安装
  • AI 提供商设置
    • OpenAI
    • Google Gemini
    • Ollama(本地 AI)
  • 配置
  • 使用方法
    • 交互模式
    • 右键菜单
    • 控制面板
    • 无头模式
  • 漏洞类别
  • 示例
  • 故障排除
  • 贡献
  • 许可证

🛠 安装

  1. 下载插件:

    root@kitploit:~
    # Save BinAIVulHunter.py to your IDA Pro plugins directory
    # Typically: C:\Program Files\IDA Pro X.X\plugins\
    
  2. 安装基础依赖:

    root@kitploit:~
    pip install psutil
    
  3. 安装 AI 提供商库(选择一个或多个):

    root@kitploit:~
    # For OpenAI
    pip install openai
    
    # For Google Gemini
    pip install google-generativeai
    
    # For Ollama (local AI)
    pip install requests
    
  4. 重启 IDA Pro 以加载插件

🤖 AI 提供商设置

OpenAI

  1. 获取 API 密钥:

    • 访问 OpenAI API 密钥
    • 创建新的 API 密钥
  2. 设置环境变量:

    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. 重启 IDA Pro

Google Gemini

  1. 获取 API 密钥:

    • 访问 Google AI Studio
    • 创建新的 API 密钥
  2. 设置环境变量:

    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. 重启 IDA Pro

Ollama(本地 AI)

  1. 安装 Ollama:

    • 访问 Ollama.ai 并下载安装程序
    • 或使用软件包管理器:
      root@kitploit:~
      # Linux
      curl -fsSL https://ollama.ai/install.sh | sh
      
      # macOS
      brew install ollama
      
  2. 启动 Ollama 服务:

    root@kitploit:~
    ollama serve
    
  3. 拉取 AI 模型:

    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. 可选环境变量:

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

⚙️ 配置

环境变量

提供商选择

设置你首选的 AI 提供商:

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

# Use Google Gemini
set VULCHAT_PROVIDER=gemini

# Use Ollama (local)
set VULCHAT_PROVIDER=ollama

🎯 使用方法

交互模式

  1. 使用你的二进制文件打开 IDA Pro
  2. 导航到反编译器视图(F5)
  3. 通过以下方式访问 VulChat:
    • 菜单:Edit → VulChat
    • 右键菜单:在反编译器视图中右键单击
    • 快捷键(见下文)

右键菜单

在反编译器视图中右键单击以访问:

  • 查找可能的漏洞 - 分析当前函数的安全问题
  • 解释 - 获取函数行为的 AI 解释
  • 重命名变量 - 获取智能变量命名建议
  • 生成安全测试输入 - 为函数创建测试用例
  • 扫描全部 - 对整个二进制文件进行批量漏洞扫描
  • CWE 信息 - 查询 CWE 漏洞详情
  • 控制面板 - 切换 AI 提供商并配置设置

控制面板

通过 Edit → VulChat → Control Panel 或 Ctrl+Alt+P 访问:

  • 切换 AI 提供商:在 OpenAI、Gemini 和 Ollama 之间切换
  • 模型选择:为每个提供商选择特定模型
  • 状态信息:查看当前配置和提供商可用性
  • 设置指南:获取详细的设置说明

快捷键

无头模式

用于自动化分析和 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

无头模式参数

🛡️ 漏洞类别

BinAIVulHunter 基于 CWE-699 软件开发分类法分析代码:

📚 示例

示例 1:基本漏洞扫描

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
"""

示例 2:批量扫描

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"
          }
        ]
      }
    ]
  }
}

示例 3:AI 提供商切换

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

🔧 故障排除

常见问题

  1. “提供商不可用”错误:

    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. 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. 批量处理期间的内存问题:

    root@kitploit:~
    # Reduce batch size in Control Panel or headless mode
    --batch-size 1 --function-pause 10
    
  4. API 速率限制:

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

调试信息

查看 IDA Pro 的输出窗口以获取详细日志:

  • 提供商初始化状态
  • API 请求/响应信息
  • 内存使用统计
  • 错误消息和堆栈跟踪

🏆 推荐的 AI 模型

用于安全分析

性能对比

🤝 贡献

我们欢迎贡献!有关详细信息,请参阅我们的贡献指南。

开发环境设置

  1. Fork 该仓库
  2. 克隆你的 fork:
    root@kitploit:~
    git clone https://github.com/yourusername/BinAIVulHunter.git
    
  3. 安装开发依赖:
    root@kitploit:~
    pip install -e .[dev]
    
  4. 进行你的修改
  5. 提交拉取请求

贡献领域

  • 更多 AI 提供商集成
  • 增强的漏洞检测模式
  • 新的 CWE 类别支持
  • 性能优化
  • 文档改进
  • 测试覆盖率扩展

📄 许可证

本项目采用 MIT 许可证授权 - 有关详细信息,请参阅 LICENSE 文件。

🔗 链接

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

🙏 致谢

  • 感谢 Hex-Rays 提供出色的 IDA Pro 平台
  • 感谢 OpenAI、Google 和 Ollama 团队提供的 AI 技术
  • 感谢 MITRE 提供的全面 CWE 分类法
  • 感谢逆向工程与网络安全社区

⚠️ 免责声明:此工具仅用于教育和合法的安全研究目的。在分析任何软件之前,请务必确保你已获得适当授权。AI 生成的分析应经过人工验证,不能替代专家的审查。

下载工具
变量说明默认值是否必需
OPENAI_API_KEYOpenAI API 密钥无使用 OpenAI 时需要
GEMINI_API_KEYGoogle Gemini API 密钥无使用 Gemini 时需要
OLLAMA_BASE_URLOllama 服务器 URLhttp://localhost:11434否
OLLAMA_MODEL默认 Ollama 模型llama2否
VULCHAT_PROVIDER要使用的 AI 提供商openai否
VULCHAT_MODEL特定模型名称提供商默认值否
OPENAI_BASE_URL自定义 OpenAI 端点官方 API否
快捷键操作
Ctrl+Alt+V查找漏洞
Ctrl+Alt+G解释函数
Ctrl+Alt+R重命名变量
Ctrl+Alt+X生成测试输入
Ctrl+Alt+S扫描所有函数
Ctrl+Alt+WCWE 参考查询
Ctrl+Alt+P控制面板
Ctrl+F5反编译所有函数
参数说明默认值
--scan-all扫描所有函数以查找漏洞-
--decompile-all反编译所有函数-
--batch-size每批处理的函数数量3
--function-pause函数之间的暂停时间(秒)5
--batch-pause批次之间的暂停时间(秒)10
--output结果的 JSON 输出文件无
--cache-dir反编译缓存目录无
类别CWE ID示例
内存缓冲区错误CWE-1218缓冲区溢出、释放后使用
数值错误CWE-189整数溢出、除零
资源管理CWE-399内存泄漏、文件句柄泄漏
数据验证CWE-1215输入验证、注入缺陷
身份验证CWE-1211弱身份验证、绕过
授权CWE-1212权限提升、访问控制
加密问题CWE-310弱加密、密钥管理
信息泄露CWE-199数据暴露、侧信道
错误处理CWE-389未捕获异常、错误状态
初始化CWE-452未初始化变量、清理
提供商模型最适合费用
OpenAIgpt-4全面分析$$$
OpenAIgpt-3.5-turbo快速常规分析$$
Geminigemini-pro均衡性能$$
Ollamacodellama代码聚焦分析免费
Ollamadeepseek-coder漏洞检测免费
Ollamallama2通用用途免费
提供商速度准确性隐私成本
OpenAI GPT-4⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
Gemini Pro⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
Ollama⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐