Работа со ScanSuite

Поиск секретов

Поиск ключей и токенов в коде. Модель проверяет, какие из них настоящие.

Поиск секретов обнаруживает в репозитории ключи, токены и учётные данные. Он включается переключателем Поиск секретов на странице «Статический анализ кода»; рядом можно включить Проверять секреты с ИИ.

Сканеры

Секреты ищут три сканера: Nosey Parker, Gitleaks и TruffleHog. Если поиск секретов включён, работают все три. Gitleaks просматривает историю Git, TruffleHog — и историю, и файлы. Каждый сканер описывает одно и то же срабатывание по-своему, поэтому ScanSuite сначала приводит их записи к общему виду и дальше обрабатывает одинаково. Результаты сохраняются как учётные данные и видны в разделе Учётные данные. Один и тот же секрет в одном и том же файле сохраняется один раз.

Зачем нужна проверка с помощью ИИ

Сканеры секретов по природе шумные: им проще сообщить о примере ключа из документации, чем пропустить действующий. Если проверка включена, каждый обнаруженный секрет получает вердикт, и он сохраняется рядом с записью.

Вердикт относится к самому секрету: настоящий он или нет. На сохранение записи он не влияет. Неподтверждённый секрет тоже сохраняется, проверка только ставит пометку.

Проверка необязательна. Без неё очевидные случаи всё равно разбирают детерминированные правила (о них ниже), а остальные секреты сохраняются с пометкой «не проверено» и источником disabled. Вердикт по ним вынесет следующее сканирование того же продукта, если в нём включена опция Проверять секреты с ИИ и настроен AI-провайдер.

Как оценивается секрет

  1. 01
    Отсев по путям

    Секреты из игнорируемых путей отбрасываются и вообще не сохраняются: тестовым фикстурам и каталогам вложенных зависимостей вердикт не нужен.

  2. 02
    Проверка по истории

    Если в продукте уже есть такая же запись с вердиктом, она пропускается бесплатно. Если запись есть, а вердикта нет, секрет проверяется заново.

  3. 03
    Детерминированные правила

    Очевидные случаи разбирает набор правил, без обращения к модели: секрет, который подтвердил сам сканер, закрытый ключ, заглушка или открытый ключ.

  4. 04
    Кэш значений

    В пределах сканирования каждое уникальное значение секрета получает один вердикт: ключ, который встречается в двадцати файлах, оценивается один раз.

  5. 05
    Сбор доказательств

    ScanSuite берёт из нужного коммита фрагмент кода вокруг секрета, чтобы модель оценивала его в контексте, а не отдельной строкой.

  6. 06
    Вердикт

    Модель возвращает структурированный ответ. Если модель недоступна или ответ не удалось разобрать, секрет всё равно сохраняется, а оценка строится по эвристике — по виду самого значения. При следующем сканировании модель спросят снова.

Многоуровневая схема повышает точность, но ещё больше экономит: отсев по путям, детерминированные правила и кэш значений отсеивают часть секретов ещё до обращения к модели.

Что делать с результатами

Обнаруженные секреты появляются в разделе Учётные данные. В столбце Проверено указан вердикт, в столбце Оценка — классификация, а в столбце Подробнее — ссылка прямо на строку кода:

Обнаруженные секреты в ScanSuite
Обнаруженные секреты на странице учётных данных: у каждого вердикт ИИ и ссылка на строку исходного кода

Инфраструктурный сканер Bruteforcer составляет словари из учётных данных продукта, а каждый подтверждённый вход сохраняет как проверенную учётную запись. Предполагать, что пароль действующий, и убедиться в этом — совсем не одно и то же.

Результаты поиска секретов слишком чувствительны, поэтому в DefectDojo они не выгружаются и остаются в ScanSuite, на странице учётных данных.

Проверено: 2026-09-30