Охотьтесь за каждой конечной точкой в вашем коде, обнаруживайте теневые API, картирование поверхности атаки.
Документация •
Установка •
Использование •
Вклад •
История изменений
Noir — это инструмент SAST, который читает исходный код и извлекает конечные точки, которые приложение предоставляет — пути, методы, параметры, заголовки, cookie и файлы исходного кода, стоящие за ними. Теневые API, устаревшие маршруты и недокументированные обработчики появляются в рамках той же инвентаризации; это не отдельный режим.
Инвентаризация обслуживает три аудитории:
- Людей-рецензентов. Инженеры безопасности и аудиторы кода получают сфокусированный список точек входа, доступных атакующему — пути, параметры, файлы исходного кода, теги — вместо беглого просмотра всего репозитория.
- AI-аудиторов. SAST-агенты на основе LLM получают тот же сфокусированный список, плюс контекст проверки для каждой конечной точки (
--include callee для 1-шаговых вызываемых функций, --ai-context для guards, sinks, валидаторов и сигналов).
- DAST-инструменты. ZAP, Burp Suite, Caido и Gori получают реальный список маршрутов для сканирования, включая пути, до которых они никогда бы не добрались при обходе.
Что делает Noir
- Извлечение конечных точек. Статический анализ для более 50 фреймворков. Возвращает конечные точки, параметры, заголовки, 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 идёт дальше и прикрепляет агрегированный контекст проверки для каждой конечной точки — guards, callees, sinks, валидаторы и сигналы — чтобы LLM не приходилось их заново обнаруживать.
- CI/CD. GitHub Action, вывод SARIF, коды возврата — подходит для вашего уже существующего конвейера.
Использование
Пример
Если вы используете его с Github Action, пожалуйста, обратитесь к этому документу .

Для получения дополнительных сведений посетите нашу страницу документации.
План развития
Noir начинался как помощник для WhiteBox-тестирования: извлекать конечные точки из исходного кода, чтобы DAST мог сканировать их точнее. Задача выросла — та же инвентаризация теперь питает и аудиторов-людей, и AI SAST-агентов. Цель отсюда — одинаково хорошо обслуживать всех трёх потребителей: людей, проверяющих код, LLM, проверяющих его, и DAST-инструменты, сканирующие его.
Отсюда:
- Расширить покрытие языков и фреймворков; сохранять точность с помощью фикстур для каждого фреймворка.
- Активнее использовать LLM для случаев, куда не добирается статический анализ.
- Обогатить контекст проверки для каждой конечной точки (guards, callees, sinks, валидаторы, сигналы), чтобы рецензенты-люди и AI-аудиторы имели одинаковое сфокусированное представление каждого обработчика.
- Сохранять интеграцию с DAST первоклассной — OpenAPI, прокси-цели и прямая передача в ZAP / Burp / Caido.
Проект OWASP
OWASP Noir присоединился к OWASP Foundation в июне 2024.
Новости и обновления
- Май 2026: Выпущена v1.0.0 — представлена стабильная линия 1.x во всех анализаторах, теггерах, пассивном сканировании и совершенно новой структуре CLI, ориентированной на глаголы.
- Май 2026: Обновлён план развития — цель Noir теперь — одинаково обслуживать людей, AI-аудиторов и DAST-инструменты как потребители одной и той же инвентаризации конечных точек.
- Август 2025: Презентация на встрече OWASP Seoul. (Open Source Gardening)
- Ноябрь 2024: Опубликована гостевая запись в блоге "Powering Up DAST with ZAP and Noir" в блоге ZAP.
- Июнь 2024: Присоединение к OWASP как OWASP Noir
- Переименование организации GitHub из noir-cr в owasp-noir
- Переход к совместному руководству с @ksg97031
- Ноябрь 2023: Репозиторий Noir перемещён в организацию GitHub noir-cr.
- Август 2023: Начало как личный проект @hahwul.
Вклад
Noir — это проект с открытым исходным кодом, созданный с ❤️.
Если вы хотите внести свой вклад, пожалуйста, ознакомьтесь с CONTRIBUTING.md и отправьте Pull Request.

Талисман
 | Наш талисман — Хак (학), журавль, символизирующий элегантность и точность в обнаружении скрытых недостатков. В корейском языке "학" означает "журавль", острого союзника, который глубоко ныряет, чтобы выявить уязвимости и поверхности атаки в вашем коде.
Для получения дополнительных изображений и ресурсов, связанных с Хаком, посетите репозиторий noir-artwork. |
|---|