Перейти к основному содержимому
Глоссарий по безопасности

Тестирование на проникновение против сканирования уязвимостей

Эти два понятия часто путают, а иногда и продают как одно и то же, но они отвечают на разные вопросы. Сканирование уязвимостей спрашивает «что здесь может быть не так?», а тест на проникновение отвечает на вопрос «что злоумышленник реально может сделать?». Обычно нужно и то и другое, с разной периодичностью.

Сканирование уязвимостей: автоматическая ширина

Сканер уязвимостей автоматически сверяет системы с базой известных проблем и ошибок конфигурации и выдаёт список потенциальных уязвимостей, обычно с оценкой серьёзности. Сканирование быстрое, дешёвое и воспроизводимое, поэтому его удобно запускать часто и на широком охвате. Но оно сообщает лишь о возможных проблемах, даёт ложные срабатывания и не может сказать, действительно ли находку можно эксплуатировать в вашем контексте.

Тестирование на проникновение: глубина, которую дают специалисты

Тест на проникновение проводят люди: тестировщик подтверждает слабые места, эксплуатируя их, и связывает мелкие по отдельности проблемы в реалистичный путь атаки. Автоматизация на это не способна. Сам OWASP ASVS отмечает, что инструменты не могут полностью проверить более сложные требования или требования, связанные с бизнес-логикой и контролем доступа. Пентест находит логические ошибки и ошибки авторизации (например, межарендаторный IDOR), которые сканеры пропускают в силу самого своего устройства.

Ширина против глубины, ложные срабатывания против доказательства

Это разница между шириной и глубиной. Сканирование поверхностно охватывает большую площадь и оставляет вам разбираться, что из найденного реально; пентест глубоко прорабатывает ограниченную область и даёт подтверждённые находки с proof of concept, оценкой бизнес-риска и рекомендациями по устранению. Результат сканирования служит отправной точкой, а на результаты пентеста можно опираться при принятии решений.

Когда использовать каждое

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

Часто задаваемые вопросы

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

Нет. Сканер сообщает о возможных проблемах, даёт ложные срабатывания и не может сказать, действительно ли находку можно эксплуатировать. Сам OWASP ASVS отмечает, что инструменты не могут полностью проверить сложные требования, связанные с бизнес-логикой и контролем доступа. Пентест находит уязвимости логики и авторизации, например межарендаторный IDOR, которые сканеры пропускают в силу своего устройства.

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

Поговорите с реальным практиком.

Остался вопрос, на который эти страницы не ответили? Расскажите, что вы пытаетесь защитить, и мы укажем вам на правильный проект. Первая консультация бесплатна.