Пентест (penetration test, тест на проникновение) — санкционированная попытка взлома IT-системы, проводимая специалистами по кибербезопасности (пентестерами) с явного разрешения владельца. Отличается от «хакерства» юридическим оформлением (договор, scope-документ) и задокументированными результатами.
Этапы пентеста
Стандартная методология PTES (Penetration Testing Execution Standard) включает:
- Планирование и разведка (Recon) — сбор информации об объекте: OSINT, DNS, SSL-сертификаты, открытые порты (nmap), версии ПО
- Сканирование — автоматизированный поиск уязвимостей (Nessus, OpenVAS, Nikto для веб)
- Эксплуатация — попытка использовать найденные уязвимости (Metasploit, Burp Suite)
- Постэксплуатация — закрепление в системе, горизонтальное перемещение, эскалация привилегий
- Отчётность — документация всех находок с CVSS-оценками, доказательствами (скриншоты, логи) и рекомендациями по устранению
Виды пентеста
- Black box — пентестер не знает архитектуры системы, имитирует внешнего злоумышленника
- White box — пентестер получает полную документацию, код и схемы; максимальная глубина проверки
- Grey box — частичная информация (например, учётные данные пользователя, но не администратора)
- Red Team — расширенный сценарий с социальной инженерией, физическим проникновением и многонедельной кампанией
История
Концепция тестирования безопасности через имитацию атак появилась в Министерстве обороны США в 1960-х годах — «Tiger Teams» взламывали компьютеры правительства. Термин «penetration testing» закрепился в 1970-х. В 1995 году Dan Farmer и Wietse Venema опубликовали SATAN — первый публичный сканер уязвимостей. OWASP Testing Guide, впервые опубликованный в 2004 году, стал стандартом для веб-пентеста.
Пентест хостинговой инфраструктуры
Пентест VPS и выделенных серверов проверяет: конфигурацию SSH (пароли vs ключи, разрешённые алгоритмы), открытые порты и сервисы, версии установленного ПО на предмет CVE, настройку межсетевого экрана, WAF и ModSecurity.
Важный момент: перед пентестом облачного VPS всегда уточняйте у провайдера, требуется ли предварительное уведомление. AWS, GCP и DigitalOcean разрешают пентест собственных инстансов без предварительного согласования, но запрещают атаки на инфраструктуру провайдера. Hetzner требует письменного уведомления.
Методологии пентеста
OWASP Testing Guide — стандарт для тестирования веб-приложений: 114 тест-кейсов, охватывающих OWASP Top 10 и расширенный список. PTES (Penetration Testing Execution Standard) — методология полного пентеста инфраструктуры в 7 фазах. NIST SP 800-115 — руководство NIST по техническому тестированию безопасности. Для российского рынка: ФСТЭК России выпустила методику проведения работ по оценке защищённости в рамках 235/239 приказов.
Black box — пентестер не имеет никакой информации о системе (имитация внешнего атакующего). White box — полная информация: исходный код, архитектура, схемы сети. Gray box — промежуточный вариант: часть информации (схема сети, учётные записи пользователя), но не внутренности кода. 80% корпоративных пентестов — gray box, так как даёт баланс между реализмом и эффективностью использования времени.
Типичный инструментарий
Kali Linux — дистрибутив с предустановленными инструментами пентеста: Nmap (сканирование портов), Metasploit (эксплуатация уязвимостей), Burp Suite (перехват и анализ HTTP), sqlmap (автоматизированный поиск SQL-инъекций), Hydra (брутфорс аутентификации), Nikto (сканирование веб-серверов). Для хостинга актуальны: Nikto для проверки конфигурации Nginx/Apache, Nmap для аудита открытых портов, OWASP ZAP как бесплатная альтернатива Burp Suite.
Разница пентеста и bug bounty
Пентест — контрактная работа за фиксированную плату, ограниченная по времени (обычно 2-4 недели) и по области тестирования (scope). Bug bounty — программа непрерывного поиска уязвимостей внешними исследователями с вознаграждением за подтверждённые находки. Крупные программы: HackerOne, Bugcrowd, собственные программы Яндекса и VK.
Для хостинга: минимальный пентест VPS-инфраструктуры включает сканирование открытых портов, проверку версий сервисов на известные CVE, аудит SSH-конфигурации, проверку изоляции между виртуальными машинами. Стоимость базового пентеста у российских компаний — от 150 000 рублей.