Взломай меня, пока не взломали другие
Пентестинг (penetration testing, тест на проникновение) — санкционированная атака на информационную систему с целью обнаружить уязвимости до того, как это сделают злоумышленники. Пентестер — «этичный хакер»: делает то же самое, что и преступник, но с разрешения и для защиты.
Это не просто запустить сканер уязвимостей. Хороший пентест — это мышление атакующего, творческий поиск нестандартных путей, комбинирование техник.
Методология
Стандартный пентест проходит по этапам:
1. Разведка (Reconnaissance) — сбор информации о цели: домены, IP, технологии, сотрудники (OSINT — Open Source Intelligence).
2. Сканирование — определение открытых портов, сервисов, версий ПО, потенциальных уязвимостей.
3. Эксплуатация — попытка использовать найденные уязвимости для получения доступа.
4. Пост-эксплуатация — что можно сделать, имея доступ: lateral movement (перемещение по сети), эскалация привилегий, извлечение данных.
5. Отчёт — документирование найденных уязвимостей с рекомендациями по устранению.
Виды тестов
Black box — пентестер не имеет никакой информации о системе, как реальный внешний злоумышленник.
White box — полный доступ к документации, схемам, исходному коду. Наиболее полное тестирование.
Grey box — частичная информация; имитирует скомпрометированного сотрудника.
Red Team vs Blue Team
Red Team — команда нападения; имитирует реального злоумышленника, используя все доступные методы атаки.
Blue Team — команда защиты; обнаруживает атаку и реагирует.
Purple Team — совместная работа красной и синей команд для взаимного обучения.
