Перейти к содержимому
traio.kz

Bandit

Bandit — это статический анализатор безопасности (SAST) для Python, интегрированный в TRAIO. Сканер проверяет исходный код на типовые небезопасные паттерны (например, использование небезопасных функций, слабые настройки криптографии, потенциальные инъекции)

  • Python
  • Быстрый запуск “из коробки”
  • Рекурсивное сканирование каталога с исходным кодом

Сканер использует официальный docker-образ Bandit:

  • ghcr.io/pycqa/bandit/bandit:latest

При запуске выполняется команда:

  • bandit -r ./$SEC_CODE_FOLDER -f json -o /data/$REPORT_FILE_NAME
Переменная Пример Обязательная Описание
SEC_CODE_FOLDER Да Путь к исходному коду. Проставляется автоматический
REPORT_FILE_NAME bandit.json Да Имя итогового отчёта. Файл будет сохранён в /data/$REPORT_FILE_NAME.
SCAN_TYPE Bandit Scan Да Тип сканирования для парсинга в TRAIO.
  • allow_failure: True — ошибки сканера не прерывают пайплайн
  • overwrite_entrypoint: True — позволяет явно задавать run_command
  • timeout: 20 — таймаут выполнения (в минутах)

Bandit поддерживает настройку порогов и фильтрации результатов через CLI-флаги (опционально):

  • -l / --level — минимальный уровень серьёзности (LOW/MEDIUM/HIGH)
  • -i / --confidence — минимальный уровень уверенности (LOW/MEDIUM/HIGH)

Пример (уменьшить шум, оставив только MEDIUM+ и confidence MEDIUM+):

  • bandit -r ./$SEC_CODE_FOLDER -f json -o "/data/$REPORT_FILE_NAME" -l MEDIUM -i MEDIUM