openhackai/OpenHack

Open Source Agentic Security Scanner

OpenHack – AI 驱动的开源安全扫描器

功能简介 – OpenHack 是一个命令行工具,使用 LLM 驱动的代理流水线自动查找代码库中的安全漏洞。它模仿了 “Claude Code Security / Codex Security” 服务,但是完全开源,并且可以连接任何开源或商用 LLM。

工作原理 – 扫描分为四个阶段:

  1. Recon – 代理读取每个文件,构建项目的结构模型,并摄取您提供的任何额外上下文。
  2. Hunters – 一组专门的代理(例如:输入验证、SQL 注入、访问控制猎手)在模型中扫描可能的漏洞模式。第二个“feature-hunter”轮次会更深入地挖掘风险代码区域。
  3. Validation – 另一个代理审查每个候选漏洞,检查其影响并决定其是否为真实发现。
  4. Verification (beta) – 该工具可以在 Docker 中启动应用程序并运行无头浏览器来实际执行漏洞利用。成功的漏洞利用会标记为 ✓。

核心 UI – OpenHack 配备了交互式终端 UI (TUI)。在扫描运行时,您会看到一个显示 recon→hunter→validator 实时流程的 Trace 面板,以及一个列出已确认问题(包含严重程度、CVSS 评分、文件位置、代码片段和建议修复方案)的 Findings 面板。所有这些都可以通过键盘快捷键或鼠标进行操作。

CLI / CI 模式 – 为了实现自动化,您可以以无头模式运行相同的流水线:

openhack --scan /path/to/repo   # 打印进度并写入 JSON 报告

其他标志允许您恢复暂停的扫描、列出过去的会话、对框架进行分类或运行单个 “hack” 任务。

模型灵活性 – 初次登录后,您可以通过 /connect 命令连接任何 LLM 提供商(OpenAI, Azure OpenAI, Anthropic, DeepSeek, Kimi 等)。UI 显示一个可搜索的选择器,从 Models.dev 获取模型元数据,并附带离线目录。您可以使用 /models 随时切换模型。

沙箱验证 – 如果可以使用 Docker,/verify sandbox 会在容器内启动应用并发送真实的 HTTP 请求来测试每个发现。/verify browser 会添加一个无头浏览器层,以捕捉 XSS 或 CSRF 等客户端漏洞。

安装 – 该包位于 PyPI 上,可以使用任何 Python 安装程序进行安装:

pipx install openhack      # 隔离环境,推荐
# 或者
uv tool install openhack   # 使用 uv
# 或者
pip install openhack

隐私 – 源代码在本地处理;只有发送到所选 LLM 提供商的提示词会离开您的机器。如果您使用托管的 OpenHack 推理服务,提示词将通过其 API 发送;否则,它们将直接发送到您配置的提供商。

许可证 – MIT,完全开源。欢迎通过 GitHub 进行贡献。


总结 – OpenHack 是一个真正的、AI 驱动的安全分析工具,它允许开发人员在自己的代码上运行多代理漏洞扫描,可选在 Docker 沙箱中验证漏洞利用,并保持对驱动分析的 LLM 的控制权。

相关

  • 项目
  • 项目
  • Dispatch
  • 项目
  • 项目