Инструменты безопасности: обзор
Ручной аудит не масштабируется — на помощь приходят инструменты, каждый со своей зоной ответственности.
Инструменты безопасности — автоматические помощники, которые ищут известные классы уязвимостей в коде, зависимостях и работающем приложении.
Ни один инструмент не заменяет понимания и ревью, но вместе они дёшево ловят массу типовых проблем. Важно понимать, кто за что отвечает.
SAST: анализ исходного кода
SAST (Static Application Security Testing) — статический анализ: проверяет исходный код, не запуская его. Сюда же относятся линтеры с правилами безопасности. Они ловят опасные паттерны: конкатенацию SQL, использование небезопасных функций, захардкоженные секреты. Удобно встраивать в CI, чтобы проверять каждый коммит.
DAST: проверка работающего приложения
DAST (Dynamic Application Security Testing) — динамический анализ: тестирует уже запущенное приложение снаружи, как это делал бы внешний пользователь. Известный открытый инструмент — OWASP ZAP. Он умеет обходить сайт, искать типовые уязвимости и показывать недостающие заголовки безопасности.
Важно: запускать DAST-сканеры можно только против своих систем или с письменного разрешения владельца — об этом подробно в следующем уроке.
SCA и сканеры секретов
- SCA (Software Composition Analysis) — сверяет зависимости с базой CVE (см. A06): npm audit, pip-audit и аналоги.
- Сканеры секретов — ищут случайно закоммиченные ключи и токены (см. урок про секреты).
| Инструмент | Что проверяет |
| SAST / линтер | исходный код (без запуска) |
| DAST / OWASP ZAP | работающее приложение |
| SCA | зависимости на известные CVE |
| Secret scanner | утёкшие ключи и токены |
Как защищаться
- Встройте SAST-линтеры и SCA-сканеры в CI: проверка на каждый коммит.
- Периодически прогоняйте DAST (например, OWASP ZAP) против своих стендов.
- Включите сканирование секретов в репозитории.
- Помните: инструменты дают много «шума» — результаты нужно проверять руками, это не диагноз, а подсказка.
Частые ошибки разработчиков
- Считают, что «прогнали сканер — значит, безопасно»: инструменты ловят известное, но не всё.
- Игнорируют предупреждения сканера, пока их не накопится так много, что никто не разбирает.
- Запускают сканеры против чужих систем без разрешения — это незаконно (см. следующий урок).
Итог
- SAST/линтеры проверяют код, DAST (OWASP ZAP) — работающее приложение.
- SCA сверяет зависимости с CVE, сканеры секретов ловят утёкшие ключи.
- Инструменты дополняют, но не заменяют ревью и понимание; сканировать — только своё.