anthropics/defending-code-reference-harness(7.5k★):用 Claude 做自主漏洞发现与修复的参考实现——源于与多家安全团队的合作经验(Glasswing 项目)。五技能 + 自治 harness,主战场是 C/C++ 内存漏洞。
一句话定位
「侦察→发现→验证→报告→补丁」的完整安全流水线:交互技能管人机协作的圈定与分诊,自治 harness 管无人值守的扫描循环——多级验证管线专门压误报。
五个 Claude Code 技能
/quickstart—— 上手导览/threat-model—— 威胁建模:交互式圈定你要防什么/vuln-scan—— 漏洞扫描:按威胁模型扫/triage—— 分诊:发现项按严重度与置信度分类/patch—— 补丁:生成修复并验证
自治 harness
harness/ 目录的参考管线:recon → find → verify → report → patch,配置为 C/C++ 内存漏洞发现(缓冲区溢出、UAF 一族)。配套博客《Using LLMs to Secure Source Code》与 SDK-only 的 cookbook 版。
方法论精华
1. 多级验证管线压误报——安全工具的死穴是误报淹没真信号:finding 必须过验证级才能进报告。这与法务「分诊出清单不出意见」是同构——机器产出在升级为结论前必须过验证闸。
2. 威胁建模先于扫描:先 /threat-model 圈定「要防什么」,再 /vuln-scan——没有威胁模型的扫描是噪音发生器。
3. 参考实现与托管产品的分层:仓库明示「想要托管版有 Claude Security(付费产品)」——开源参考实现给自建者,托管产品给买服务者,两层之间没有暗墙(best practices 公开)。
4. 战场选 C/C++ 内存漏洞:最长尾、最难修、工具最缺的一段——选战场本身就是产品判断。
编者按
五技能加 harness 的结构是「安全即流水线」的清晰示范:建模(人)→扫描(机器)→验证(管线)→分诊(人机)→补丁(机器)→复核(人)。对有代码资产的团队:/threat-model 的交互式圈定哪怕不用 Claude 也值得照做——多数团队的「安全」死于从未定义过要防什么。