
noir v1.2.0
Caçe cada Endpoint no seu código, exponha APIs Sombra, mapeie a Superfície de Ataque.
Caçe cada Endpoint no seu código, exponha Shadow APIs, mapeie a Superfície de Ataque.
Documentação • Instalação • Uso • Github Action • Contribuição • Changelog
Noir é uma ferramenta SAST que lê o código-fonte e extrai os endpoints que uma aplicação expõe — caminhos, métodos, parâmetros, cabeçalhos, cookies e os arquivos-fonte por trás deles. Shadow APIs, rotas obsoletas e handlers não documentados fazem parte do mesmo inventário; não são um modo separado.
O inventário atende três públicos:
- Revisores humanos. Engenheiros de segurança e auditores de código recebem uma lista focada de pontos de entrada alcançáveis por atacantes — caminhos, parâmetros, arquivos-fonte, tags — em vez de vasculhar o repositório inteiro.
- Auditores de IA. Agentes SAST baseados em LLM recebem a mesma lista focada, além de contexto de revisão por endpoint (
--include calleepara callees de 1 salto,--ai-contextpara guards, sinks, validadores e sinais). - Ferramentas DAST. ZAP, Burp Suite, Caido e Gori recebem uma lista real de rotas para escanear, incluindo caminhos que nunca alcançariam por crawling.
O que o Noir faz
- Extração de endpoints. Análise estática em 261 frameworks. Retorna endpoints, parâmetros, cabeçalhos, cookies e os arquivos-fonte de onde vieram.
- Fallback para LLM. Entregue frameworks não suportados (ou roteamento customizado pontual) para OpenAI / Ollama / etc. quando as regras estáticas não se aplicam.
- Saída para a próxima etapa. JSON, YAML, OpenAPI, SARIF, cURL, Postman, HTML — o formato que a próxima ferramenta do pipeline lê.
- Integração com DAST. Envie diretamente para ZAP, Burp Suite, Caido ou Gori como alvo de proxy, ou exporte OpenAPI para que eles importem.
- Contexto para IA SAST. O inventário de endpoints (e, com
--include callee, as funções de 1 salto que cada handler invoca) é o contexto focado de que um auditor LLM precisa para encontrar bugs alcançáveis por atacantes.--ai-contextvai além e anexa contexto de revisão agregado por endpoint — guards, callees, sinks, validadores e sinais — para que o LLM não precise redescobri-los. - CI/CD. GitHub Action, saída SARIF, códigos de saída — encaixa no pipeline que você já tem.
Uso
noir -h
Exemplo
noir scan <source_dir>
Se você usá-lo com o Github Action, consulte este documento .

Para mais detalhes, visite nossa página de documentação.
Roteiro
O Noir começou como um auxiliar de testes WhiteBox: extrair endpoints do código-fonte para que o DAST possa escaneá-los com mais precisão. A tarefa cresceu — o mesmo inventário agora também alimenta auditores humanos e agentes de SAST com IA. O objetivo a partir daqui é atender igualmente bem os três consumidores: humanos revisando o código, LLMs auditando-o e ferramentas DAST escaneando-o.
A partir daqui:
- Ampliar a cobertura de linguagens e frameworks; manter a precisão honesta com fixtures por framework.
- Apoiar-se mais fortemente em LLMs para os casos que a análise estática não consegue alcançar.
- Enriquecer o contexto de revisão por endpoint (guards, callees, sinks, validadores, sinais) para que revisores humanos e auditores de IA compartilhem a mesma visão focada de cada handler.
- Manter a integração com DAST como prioridade — OpenAPI, alvos de proxy e transferências diretas para ZAP / Burp / Caido / Gori.
Projeto OWASP
O OWASP Noir juntou-se à OWASP Foundation em junho de 2024.
- Página oficial do projeto: https://owasp.org/projects/noir
- OWASP Nest: https://nest.owasp.org/projects/noir
Notícias e Atualizações
- Maio de 2026: Lançada a v1.0.0 — introduzindo uma linha 1.x estável em todos os analisadores, taggers, passive-scan e uma estrutura de CLI totalmente nova centrada em verbos.
- Maio de 2026: Roteiro atualizado — o objetivo do Noir agora é atender igualmente humanos, auditores de IA e ferramentas DAST como consumidores do mesmo inventário de endpoints.
- Agosto de 2025: Apresentado no OWASP Seoul Meetup. (Open Source Gardening)
- Novembro de 2024: Publicado um guest blog post "Powering Up DAST with ZAP and Noir" no blog do ZAP.
- Junho de 2024: Ingressou na OWASP como OWASP Noir
- Renomeada a organização do GitHub de noir-cr para owasp-noir
- Transição para co-liderança com @ksg97031
- Novembro de 2023: Movido o repositório do Noir para a organização noir-cr no GitHub.
- Agosto de 2023: Iniciado como projeto pessoal de @hahwul.
Equipe Principal
Contribuindo
O Noir é um projeto de código aberto feito com ❤️. Se você gostaria de contribuir, consulte CONTRIBUTING.md e envie um Pull Request.
Mascote
![]() | Nosso mascote é Hak (학), um grou que simboliza elegância e precisão na identificação de falhas ocultas. Em coreano, "학" significa "grou", representando um aliado perspicaz que mergulha fundo para descobrir vulnerabilidades e superfícies de ataque no seu código. Para mais artes e recursos relacionados a Hak, confira o repositório noir-artwork. |
|---|
