Собственные правила
Свои правила Semgrep и Nuclei: редактор, проверка, черновики от ИИ, импорт и синхронизация с Git, а также правила подавления из разбора.
Вместе со сканерами ScanSuite запускает и ваши собственные правила: правила Semgrep — при статическом анализе, шаблоны Nuclei — при сканировании веб-приложений и инфраструктуры. Они собраны на странице Правила в боковом меню, там же хранятся правила подавления, которые появляются при разборе уязвимостей. На странице три вкладки: Свои правила, Подавления и Источники Git.
Просматривать правила может любой участник команды. Чтобы создавать, изменять, импортировать и удалять их, нужно право настраивать сканирования (оно есть у администраторов и операторов команды). Чтобы разово запустить правило, нужно право запускать сканирования.
Создание правила
Нажмите Новое правило и выберите, с чего начать:
| Вариант | Что делает |
|---|---|
| Правило Semgrep | Ищет шаблон в исходном коде. Запускается при SAST-сканировании. |
| Шаблон Nuclei | Проверяет работающее приложение или узел. Запускается при DAST- и инфраструктурном сканировании. |
| Сгенерировать с ИИ | Черновик по примеру уязвимого кода или по HTTP-запросу и ответу. |
| Импортировать файлы | Файлы .yaml или .yml либо архив .zip с ними. |
| Синхронизация из Git | Правила берутся из репозитория и обновляются вместе с ним. |

Правило пишется в редакторе на YAML. В строке Начать с: есть готовые заготовки. Движок проверяет правило прямо во время ввода, поэтому ошибку видно ещё до сохранения. Остальные параметры задаются на вкладке Подробнее:
| Поле | Назначение |
|---|---|
| Класс уязвимости | Этот класс получат уязвимости, найденные правилом. Разбор и подавления работают с ними так же, как с любыми другими уязвимостями этого класса. |
| Где запускается | Только для Nuclei: DAST-сканирование (веб-приложения), Infra-сканирование (хосты) или оба. |
| Применяется к | Все продукты или только выбранные. |
| Наборы | Названия через запятую. При запуске сканирования можно выбрать только правила из нужных наборов. |
| Заметка для команды | Произвольный текст для тех, кто будет читать правило. |
Нажмите Сохранить. Переключатель Запускается при сканировании определяет, участвует ли правило в сканированиях. Правило, которое движок отклонил, включить нельзя. На вкладке История хранятся все сохранённые версии: их можно сравнить или загрузить обратно в редактор.
Проверка правила
На вкладке Тест к правилу прикладываются примеры с пометкой Должно сработать или Не должно сработать. Для Semgrep пример — фрагмент кода, и примеры прогоняются при каждом сохранении. Для Nuclei пример — сохранённый HTTP-ответ: шаблон запускается на его локальной копии и к настоящему узлу не обращается. Кнопка Запустить тесты прогоняет примеры по запросу.
На вкладке Запуск правило можно один раз выполнить без сканирования, ничего не сохраняя: правило Semgrep — на репозитории продукта, шаблон Nuclei — на указанном URL. Шаблон Nuclei отправляет настоящие запросы, поэтому запустить его можно только на цели, которую команде разрешено сканировать.
Генерация правила с помощью ИИ
На вкладке Помощь ИИ можно написать новое правило или изменить то, что уже в редакторе. Опишите, что правило должно находить или что в нём изменить, и приложите исходные данные:
- для шаблона Nuclei — HTTP-запрос и HTTP-ответ, по которым видна уязвимость;
- для правила Semgrep — Язык, Уязвимый код и, если нужно, Безопасный код, который нельзя отмечать.
Нажмите Сгенерировать. Черновик проверяется движком и прогоняется на примерах ещё до того, как вы его увидите, а HTTP-ответ или уязвимый код становится тестовым примером. Нажмите Перенести в редактор, проверьте правило и сохраните его.

Всегда проверяйте сгенерированные правила перед сохранением. Слишком широкое правило будет шуметь в каждом сканировании, а правило, которое никогда не срабатывает, бесполезно, и вы об этом даже не узнаете.
Для генерации нужен настроенный AI-провайдер — см. Поставщики ИИ и стоимость.
Список правил
На вкладке Свои правила для каждого правила видны переключатель, движок, критичность, продукты, к которым оно применяется, открытые уязвимости и дата изменения. Фильтр Требует внимания показывает правила, которые отклонил движок, правила с непрошедшим тестовым примером и правила, которые ни разу не сработали. Если отметить несколько правил, их можно разом включить, выключить, добавить в набор, выгрузить в .zip или удалить.
Импорт, экспорт и источники Git
Кнопка Импорт принимает правила Semgrep и шаблоны Nuclei в файлах .yaml или .yml либо архив .zip с ними, размером до 10 МБ. Перед сохранением показывается, что будет импортировано. Импортированные правила по умолчанию добавляются выключенными. Кнопка Экспорт выгружает правила.
На вкладке Источники Git укажите https://-адрес репозитория с правилами и, если нужно, ветку, папку и набор. Каждый файл правила Semgrep и шаблон Nuclei в этой папке становится правилом. Кнопка Синхронизировать добавляет новые файлы, обновляет изменённые и удаляет правила, файлов которых больше нет. Синхронизированные правила редактируются в репозитории, а переключатель, область применения и наборы вы задаёте в ScanSuite.
Запуск правил
Чтобы проверить цель по своим правилам, включите сканер Мои правила на странице нужного сканирования. Он есть для статических, веб- и инфраструктурных сканирований. Под переключателем форма показывает, сколько правил запустится для выбранного продукта, и позволяет оставить только некоторые наборы. Если к продукту не относится ни одно включённое правило, сканер пропускается.
Всё, что находят ваши правила, всегда сохраняется на странице «Уязвимости» — независимо от того, выгружает ли сканирование результаты в DefectDojo. Если правило Semgrep срабатывает в файле, для этого файла создаётся одна уязвимость со списком всех совпавших строк.
Правила подавления
Правило подавления запрещает AI SAST сообщать об одном классе уязвимостей в файле, папке или во всём репозитории. Оно действует и на уязвимости, найденные своими правилами. Правило создаётся, когда вы отмечаете уязвимость как ложное срабатывание: на странице «Уязвимости» действие Ложное срабатывание… предлагает вариант Больше не сообщать об этом классе здесь — см. Управление уязвимостями. В следующих сканированиях правило срабатывает раньше, чем кандидат успеет потратить вызов модели.
Все правила собраны на вкладке Подавления:

| Столбец | Что показывает |
|---|---|
| Продукт | Продукт, к которому относится правило. |
| Класс | Подавляемый класс уязвимостей. |
| Где | Файл, папка или репозиторий, с указанием, что именно из трёх. |
| Причина | Причина, указанная при отметке ложного срабатывания. |
| Создан | Когда и кем создано правило и до какой даты действует, если срок задан. |
| Применено | Сколько раз правило подавило кандидата; при наведении видно, когда в последний раз. |
Кнопка Отключить отменяет правило, и там, где оно действовало, об этом классе снова будут сообщать. Правило с истёкшим сроком перестаёт действовать само. Правила продукта также видны на вкладке Настройки его страницы.
В ScanSuite Teams создавать и отменять правила подавления может только тот, у кого есть право настраивать сканирования.
Проверено: 2026-09-30