
新发布Sep 4, 2026
noir v1.3.1
搜寻您代码中的每个端点,暴露影子API,映射攻击面
搜寻代码中的每一个端点,暴露影子 API,绘制攻击面。
文档 • 安装 • 用法 • Github Action • 贡献 • 更新日志
Noir 是一款 SAST 工具,它读取源代码并提取应用程序暴露的端点——路径、方法、参数、请求头、Cookie 以及它们背后的源文件。影子 API、已弃用的路由和未文档化的处理程序都会作为同一份清单的一部分被提取出来;它们并不是单独的模式。
这份清单服务于三类受众:
- 人工审查者。 安全工程师和代码审计人员可以获得一份聚焦于攻击者可触达入口点的列表——路径、参数、源文件、标签——而无需浏览整个代码仓库。
- AI 审计者。 基于 LLM 的 SAST 代理可以获得同样的聚焦列表,外加每个端点的审查上下文(
--include callee用于 1 跳被调用者,--ai-context用于守卫、汇聚点、验证器和信号)。 - DAST 工具。 ZAP、Burp Suite、Caido 和 Gori 可以获得一份真实的路由列表用于扫描,包括它们通过爬取永远无法到达的路径。
Noir 的功能
- 端点提取。 对 206 个框架进行静态分析。返回端点、参数、请求头、Cookie 以及它们来源的源文件。
- LLM 回退。 当静态规则不适用时,将不支持的框架(或一次性自定义路由)交给 OpenAI / Ollama / 等处理。
- 为下一阶段输出。 JSON、YAML、OpenAPI、SARIF、cURL、Postman、HTML——无论流水线中的下一个工具读取哪种格式。
- DAST 集成。 直接作为代理目标接入 ZAP、Burp Suite、Caido 或 Gori,或导出 OpenAPI 供它们导入。
- AI SAST 上下文。 端点清单(以及使用
--include callee时每个处理程序调用的 1 跳函数)是 LLM 审计者发现攻击者可触达漏洞所需的聚焦上下文。--ai-context更进一步,为每个端点附加聚合的审查上下文——守卫、被调用者、汇聚点、验证器和信号——这样 LLM 就不必重新发现它们。 - CI/CD。 GitHub Action、SARIF 输出、退出码——适配你现有的流水线。
用法
noir -h
示例
noir scan <source_dir>
如果你将其与 Github Action 一起使用,请参考此文档。

更多详情,请访问我们的文档页面。
路线图
Noir 最初是一个白盒测试辅助工具:从源代码中提取端点,以便 DAST 能够更准确地扫描它们。这项工作已经发展——同一份清单现在也服务于人工审计者和 AI SAST 代理。从这里开始的目标是同等出色地服务这三类使用者:审查代码的人类、审计代码的 LLM 以及扫描代码的 DAST 工具。
从这里出发:
- 拓宽语言和框架覆盖范围;通过每个框架的测试夹具保持准确性。
- 在静态分析无法触及的场景中更多地借助 LLM。
- 丰富每个端点的审查上下文(守卫、被调用者、汇聚点、验证器、信号),使人工审查者和 AI 审计者共享对每个处理程序的同一聚焦视图。
- 保持 DAST 集成的一流地位——OpenAPI、代理目标,以及向 ZAP / Burp / Caido / Gori 的直接交接。
OWASP 项目
OWASP Noir 于 2024 年 6 月加入 OWASP 基金会。
- 官方项目页面:https://owasp.org/projects/noir
- OWASP Nest:https://nest.owasp.org/projects/noir
新闻与更新
- 2026 年 5 月:发布 v1.0.0——在所有分析器、标记器、被动扫描中引入稳定的 1.x 系列,以及全新的以动词为中心的 CLI 结构。
- 2026 年 5 月:更新路线图——Noir 的目标现在是作为同一份端点清单的使用者,同等服务人类、AI 审计者和 DAST 工具。
- 2025 年 8 月:在 OWASP 首尔聚会上发表演讲。(Open Source Gardening)
- 2024 年 11 月:在 ZAP 博客上发表客座博文"Powering Up DAST with ZAP and Noir"。
- 2024 年 6 月:作为 OWASP Noir 加入 OWASP
- 将 GitHub 组织从 noir-cr 重命名为 owasp-noir
- 过渡为与 @ksg97031 共同领导
- 2023 年 11 月:将 Noir 仓库迁移到 noir-cr GitHub 组织。
- 2023 年 8 月:作为 @hahwul 的个人项目启动。
核心团队
贡献
Noir 是一个用 ❤️ 打造的开源项目。 如果你想贡献,请查看 CONTRIBUTING.md 并提交 Pull Request。
吉祥物
![]() | 我们的吉祥物是 Hak(학),一只象征着优雅与精准地发现隐藏缺陷的鹤。在韩语中,"학"意为"鹤",代表着一位敏锐的盟友,深入挖掘以发现你代码中的漏洞和攻击面。 有关 Hak 的更多艺术作品和资源,请查看 noir-artwork 仓库。 |
|---|
