OpenHack 是一个用于 AI 辅助源码安全审计 的文件式工作空间和工具包,其中包含:
这些组件共同决定了 LLM 如何分析代码、如何记录证据以及如何报告漏洞。
该工具可以直接运行在多种 AI 编程代理环境中,例如:
这些环境允许 AI 代理读取代码仓库、执行任务并理解项目上下文,使安全审计能够在开发流程中自动完成,而不必完全依赖人工安全审计。
如果只是给模型一个简单提示,比如“找出这个仓库的漏洞”,通常会出现几个问题:
Hadrian 的思路是:不要让模型“自由发挥”,而是用严格的审计流程约束 AI 的推理路径。
OpenHack 的核心理念之一是 按攻击场景进行分析。
与其让 AI 在整个代码库里“随便找问题”,工作流会让它专注于具体攻击路径,例如:
这种方法能显著缩小模型的注意范围,让它围绕明确的攻击目标进行推理,从而减少泛泛而谈的安全建议。
OpenHack 另一个关键机制是 把漏洞发现与漏洞确认分成两个阶段。
一个典型流程如下:
复核阶段通常会要求提供具体证据,例如:
这种结构化流程能过滤掉大量质量较低的报告,从而降低误报率。
Hadrian 表示,他们曾使用类似方法审计荷兰政府机构使用的多个开源应用。
根据公司披露,这次 AI 辅助审计在数小时内发现了数百个安全问题。
其中一个案例涉及一条完整攻击链:
不过需要注意,这些成果主要来自厂商自身披露,目前仍需要更多独立研究验证其效果。
Hadrian 将 OpenHack 以 MIT 许可证 发布到 GitHub,并提供:
公司表示,这样做是为了“让防守方拥有同样的 AI 漏洞发现能力”。如果这类技术只掌握在少数组织或攻击者手中,防御者可能会处于劣势。
OpenHack 反映出软件安全领域的一大趋势:使用 AI 代理规模化探索代码库漏洞。
现代 AI 开发工具已经能够:
像 OpenHack 这样的结构化工作流,则试图把这些能力转化为系统化漏洞研究能力,让通用大模型变成可重复、可验证的安全审计工具,而不是不可预测的自动评论员。
随着 AI 编程环境越来越普及,强调范围限定、证据收集和独立验证的审计方法,很可能会成为 AI 安全代码审计可信度的关键。