OWASP Noir是一个开源静态分析工具,它读取应用程序的源代码,并列出它公开的端点:路径、HTTP方法、参数、标题和cookie,每个都与它所来的文件和行绑定。

这就是它变得有用的地方。影子API,即存在于代码中但从未将其纳入任何文档的端点,与弃用的路由和未记录的处理程序一起出现在Noir的库存中,就在其他所有东西旁边。
将其与动态扫描仪的工作方式进行比较。像ZAP和Burp Suite这样的工具,被称为DAST工具,从外部戳中正在运行的应用程序,并通过抓取找到其许多路线。如果爬虫从未到达过路线,扫描仪永远不会测试它,应用程序仍然会回答任何找到路径的人。
一个二进制,205个框架
Noir从单个二进制文件涵盖29种语言和205个框架,没有插件或每个语言的设置。它自行检测语言、框架和路由惯例。当静态规则缺少框架,或者应用程序使用一次性自定义路由时,Noir可以通过OpenAI、Ollama或类似的提供商将代码交给LLM。维护者针对每个框架的夹具测试静态规则的准确性。从LLM路径返回的路线值得在任何人依赖它们之前进行手动检查。
Noir还运行严重程度分级的被动扫描规则,这些规则标记了硬编码的密钥、令牌和凭据。十七个标记器用jwt、payment、admin和file_upload等属性标记了端点,因此审查员可以在其他任何事情之前将付款和管理员处理程序向前拉。
三种读者
Noir的维护者为三个受众构建了库存。人工审查员会获得一份攻击者可到达的入口点列表。人工智能代码审计员,即基于LLM的审查代理,获取相同的列表,-ai-context标志在每个端点周围附加了保护器、汇、验证器和信号,以便模型可以一次读取一个处理程序。包括ZAP、Burp Suite、Caido和Gori在内的DAST工具将路由作为代理目标或OpenAPI导入接收。
Noir以22种格式写入结果,其中包括JSON、SARIF、OpenAPI、Postman和cURL,它作为CI管道的GitHub操作发送。
OWASP Noir在GitHub上免费提供。



















