Суть пентеста
Это не про сканеры, которыми проверяют сайт на заезженные уязвимости. Так делают все, и это скорее аудит. Пентест же — симуляция реального вторжения с конкретной целью: закрепиться, углубиться, найти цепочку уязвимостей и доказать, что абстрактная угроза «несанкционированный доступ» — это операция, которую можно провести здесь и сейчас с имеющимися средствами. Цель пентеста — увидеть систему глазами атакующего, а не составить отчёт о соответствии.
Место в нормативной базе
В российской регуляторике ФСТЭК термин «тестирование на проникновение» напрямую не предписан, но он вытекает из требований по оценке защищённости. Ключевой документ — Приказ ФСТЭК России № 31, который предписывает проведение «оценки эффективности применяемых мер защиты информации» для ГИС 1-го и 2-го классов. Фактически, пентест — это один из самых действенных методов такой оценки.
Разница с формальной проверкой — в целях. Соответствие требованиям 152-ФЗ или 187-ФЗ — это проверка чек-листов: шифруется ли трафик, настроен ли журнал учёта. А пентест отвечает на другие вопросы: можно ли, имея доступ к рабочей станции рядового сотрудника, добраться до контроллера домена или до базы данных с персональными данными? Можно ли, используя уязвимость в веб-сервере, получить доступ к внутренней сети? Ответы на эти вопросы формальные проверки не дают, но они критически важны для реальной безопасности.
Этапы пентеста
Цикл моделируется по этапам реальной атаки.
Разведка
Цель — собрать максимум информации об объекте, не поднимая тревоги. Это пассивный сбор: поиск в открытых источниках, WHOIS, информация на корпоративных сайтах, профили сотрудников в соцсетях. Активная разведка — сканирование портов, определение версий ПО, построение карты сети.
nmap -sV -O target.ru
Сканирование на уязвимости
На этом этапе используют автоматизированные сканеры для поиска известных уязвимостей. Здесь важно не столько количество найденных проблем, сколько оценка их критичности в конкретном контексте.
nikto -h http://target.ru
Эксплуатация
Сердце пентеста. Здесь пробуют использовать найденные уязвимости для получения первоначального доступа в систему. Например, эксплуатация уязвимости в веб-приложении для загрузки и выполнения произвольного кода на сервере.
Закрепление и углубление
После получения «точки входа» задача — закрепиться в системе, повысить привилегии и начать движение по сети к ключевым активам: базам данных, файловым хранилищам, доменным контроллерам. Используют перехват хэшей паролей, использование уязвимостей внутри сети.
Анализ и отчёт
Фиксируются все действия, найденные цепочки атак, доказательства компрометации. В отчёте описывают не только уязвимости, но и конкретные сценарии, как они могут быть использованы, и дают рекомендации по устранению с приоритетами, основанными на реальном риске для бизнеса.
Виды пентеста
Подход к тестированию зависит от того, что известно тестирующим.
- Black Box — тестирование без какой-либо предварительной информации об инфраструктуре. Команда действует как внешний злоумышленник.
- White Box — тестирование с полной информацией об архитектуре, исходных кодах, конфигурациях. Позволяет найти глубокие и сложные уязвимости, которые сложно обнаружить снаружи.
- Grey Box — самый распространённый сценарий в корпоративной среде. Тестирующим предоставляется ограниченная информация, например, учётная запись обычного пользователя, чтобы смоделировать атаку инсайдера или взлом учётных данных.
Что отличает пентест от сканирования уязвимостей?
Главное различие — в цели и мышлении. Сканирование отвечает на вопрос «Есть ли уязвимости?». Пентест — «Что можно сделать с этими уязвимостями?». Автосканер может найти тысячи «дыр» с высокими CVSS-рейтингами, но большинство из них будут бесполезны для реального атакующего из-за особенностей сетевой архитектуры или отсутствия критичных данных рядом. Пентестер же оценивает контекст и ищет цепочки, превращающие набор отдельных проблем в работающий путь компрометации. Например, уязвимость на сервере для разработчиков не критична, пока не будет найден способ с него попасть в сегмент с платёжными системами.
Подходы к моделированию угроз
Эффективный пентест строится на модели угроз. Нет смысла тратить ресурсы на попытки взломать защищённый файрволл, если атака может начаться с фишингового письма бухгалтерии. Современный подход — это не только внешний периметр. Часто проверяются:
- Социальная инженерия и фишинг.
- Физическая безопасность офиса и точек доступа.
- Безопасность мобильных приложений и устройств.
- Настройки и безопасность облачных контейнеров.
Именно комбинация этих векторов даёт полную картину.
Что делать с результатами?
Главная ошибка — рассматривать отчёт о пентесте как перечень технических задач для исправления. Исправить уязвимость — полдела. Настоящая работа начинается с анализа причин. Почему устаревшее ПО годами стояло на сервере? Почему правило межсетевого экрана было сконфигурировано неверно? Часто корень проблемы — в процессах: отсутствии регулярного обновления, слабом контроле конфигураций, недостатке осведомлённости сотрудников.
Результаты пентеста должны трансформироваться в изменения не только в инфраструктуре, но и в регламентах, бюджетировании на безопасность, обучении сотрудников. Цикл замыкается — после исправлений и изменений тестирование проводится снова, чтобы убедиться, что найденные лазейки закрыты и не появились новые.