Skip to content

♠️ Noir is an attack surface detector form source code.

License

Notifications You must be signed in to change notification settings

attacker-codeninja/noir

 
 

Repository files navigation

OWASP Noir Logo

Attack surface detector that identifies endpoints by static analysis.

DocumentationInstallationAvailable Support ScopeUsageContributing

OWASP Noir is an open-source project specializing in identifying attack surfaces for enhanced whitebox security testing and security pipeline. This includes the capability to discover API endpoints, web endpoints, and other potential entry points within source code for thorough security analysis.

Key Features

  • Identify API endpoints and parameters from source code.
  • Support various source code languages and frameworks.
  • Provide analysts with technical information and security issues identified during source code analysis.
  • Friendly pipeline & DevOps integration, offering multiple output formats (JSON, YAML, OAS spec) and compatibility with tools like curl and httpie.
  • Friendly Offensive Security Tools integration, allowing usage with tools such as ZAP and Caido, Burpsuite.
  • Identify security issues within the source code through rule-based passive scanning.
  • Generate elegant and clear output results.

Usage

noir -h 

Example

noir -b <source_dir>

JSON Result

noir -b . -u https://testapp.internal.domains -f json -T
{
  "endpoints": [
    {
      "url": "https://testapp.internal.domains/query",
      "method": "POST",
      "params": [
        {
          "name": "my_auth",
          "value": "",
          "param_type": "cookie",
          "tags": []
        },
        {
          "name": "query",
          "value": "",
          "param_type": "form",
          "tags": [
            {
              "name": "sqli",
              "description": "This parameter may be vulnerable to SQL Injection attacks.",
              "tagger": "Hunt"
            }
          ]
        }
      ],
      "details": {
        "code_paths": [
          {
            "path": "spec/functional_test/fixtures/crystal_kemal/src/testapp.cr",
            "line": 8
          }
        ]
      },
      "protocol": "http",
      "tags": []
    }
  ]
}

For more details, please visit our documentation page.

Contributing

Noir is open-source project and made it with ❤️ if you want contribute this project, please see CONTRIBUTING.md and Pull-Request with cool your contents.

About

♠️ Noir is an attack surface detector form source code.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • Crystal 99.1%
  • Ruby 0.9%