代码写完了,安全吗?绝大多数团队靠人工 code review 或上线前的渗透测试兜底,但 AI 编程助手在帮你写代码的同时,几乎没人让它回头去审自己的产物。Cloudflare 开源的 security-audit-skill 把这件事做成了一套可编排的流程:它让 coding agent 变成一名安全审计员,通过侦察、覆盖驱动的狩猎、候选验证、结构化输出、独立复核和去目标化报告六个阶段,系统性地找出漏洞。
项目基本信息
| 信息项 | 详情 |
|---|---|
| 项目名称 | security-audit-skill |
| GitHub地址 | https://github.com/cloudflare/security-audit-skill |
| 项目描述 | 把 AI 编程助手编排成多阶段安全审计员 |
| 作者 | cloudflare |
| 开源协议 | MIT License |
| 开源状态 | 公开 |
| Languages | JavaScript |
| 支持平台 | Windows / macOS / Linux |
| 最后更新 | 2026-09-14 |
一、项目介绍
security-audit-skill 是一个 coding-agent 技能(skill),它把一个 AI 代理编排成安全审计员。这个技能正是 Cloudflare 内部漏洞发现 harness 的起点——那套系统后来演变成覆盖全机队的、多阶段的审计体系,而这个仓库是它开源出来的单仓库起点。它的工作方式是:父代理协调多个被隔离的子代理,依次走完六个阶段,把审计过程变成可复现、可叠加的记录。
二、核心优势
第一,结构化六阶段。从侦察(Reconnaissance)绘制架构、信任边界、输入面,到覆盖驱动的狩猎(Coverage-led hunting)、候选验证(Candidate validation)、结构化输出、独立记录复核,最后产出去目标化的报告。第二,对抗式验证。检查某个发现的代理,绝不是当初发现它的那个代理,避免自我确认偏差。第三,严重度要有影响。按可能性乘以影响判定,而不是对照清单打分。第四,多次运行提升覆盖。实测中单次运行大约只发现重复运行总量的一半漏洞。第五,零依赖校验。findings 和 coverage ledger 都有零依赖的 cjs 校验器。
三、适用场景
它适合任何希望用 AI 对代码库做安全审查的团队。无论是直接对某个代码仓库做完整审计(full audit mode),还是针对具体安全问题做聚焦的漏洞排查(guidance mode),都能触发。对需要产出正式报告产物的审计任务,它会写出 REPORT.md、FINDINGS-DETAIL.md 和 NEEDS-VALIDATION.md。对于原生目标、LLM 后端目标、HTTP 协议与认证目标、客户端或浏览器目标、供应链与发布目标等,都有专门的狩猎分类文件覆盖。
四、安装教程
通过 Skills CLI 安装:
npx skills add https://github.com/cloudflare/security-audit-skill \
--skill security-audit如果需要用户级安装,加 --global:
npx skills add https://github.com/cloudflare/security-audit-skill \
--skill security-audit \
--global环境要求:一个支持工具调用(tool use)和并行子代理的 coding agent,以及用于运行零依赖校验器的 Node.js。注意,若没有 OS 强制的沙箱(禁用外网、限制资源、只允许写入指定临时路径),workflow 会把涉及执行目标代码的线索保留为 needs_validation,而不是真的去跑。
五、使用示例
在你的代码库目录里启动 coding agent,然后直接提审计请求:
security audit this codebase也可以指定目录:
find security vulnerabilities in ./src或指定输出位置:
do a security review, output to ~/audits/my-project当请求匹配触发词(security audit、find vulnerabilities、pen-test the code 等)时,技能自动激活。完整审计模式下,未指定输出目录时默认写入 ~/security-audit-skill/
六、常见问题
问:它会不会真的去执行目标代码?答:只有在提供 OS 强制沙箱(禁用外网、限制资源、限定写入路径)时才会执行;否则相关线索保留为 needs_validation。问:多次运行会重复还是叠加?答:是叠加的,它会利用先前的 ledger 和 findings 瞄准空白、重新验证改动过的源码。问:verdict 有几种?答:confirmed(有完整源码溯源和有限观察结果)、needs_validation(有未解决的确切事实、无严重度)、rejected(被证伪的候选)。问:需要什么模型?答:支持工具调用和并行子代理的模型即可。
七、总结
security-audit-skill 把让 AI 审 AI 写的代码变成了一套严肃、可复现的工程流程,而不是一句模糊的提示词。它源自 Cloudflare 真实漏洞发现体系,对抗式验证和覆盖驱动的设计让它比一次性扫描更可靠。对于任何把 AI 写代码纳入生产流程的团队,它都是值得接入的一道安全闸门。
评论 0
还没有评论,来说两句吧。