Penetration Testing — основы
Penetration Testing (пентест) — санкционированное имитирование атаки на систему с целью выявления уязвимостей до того, как это сделают реальные злоумышленники.
Зачем нужно
Автоматические сканеры находят только известные уязвимости по сигнатурам. Пентест воспроизводит логику атакующего: цепочку уязвимостей, бизнес-логические ошибки, неочевидные пути. Для разработчика понимание методологии помогает проектировать более защищённые системы.
Где используется
- Pre-release аудит новых функций и сервисов
- Ежегодная проверка соответствия (PCI DSS, ISO 27001)
- После инцидентов безопасности для анализа вектора атаки
- Проверка инфраструктуры (сети, серверы, API)
Основной контент
Методология: 5 фаз
1. Reconnaissance — сбор информации (DNS, WHOIS, shodan, subdomains)
2. Scanning — сканирование портов, fingerprinting сервисов
3. Exploitation — попытки эксплуатации найденных уязвимостей
4. Post-Exploitation — закрепление, pivoting, сбор данных
5. Reporting — отчёт с PoC, severity, рекомендациями
Базовые инструменты
# Сканирование портов
nmap -sV -sC -p- target.example.com
# Перебор поддоменов
subfinder -d example.com | httpx
# Тест SSL/TLS конфигурации
testssl.sh https://example.com
# Поиск скрытых директорий
feroxbuster -u https://example.com -w /usr/share/wordlists/dirb/common.txt
# Перехват HTTP-трафика
# Burp Suite — де-факто стандарт для веб-пентеста
Классификация тестирования
| Тип | Знания атакующего | Применение |
|---|---|---|
| Black Box | Ничего | Имитация внешнего хакера |
| Grey Box | Частичные (роль пользователя) | API, веб-приложение |
| White Box | Полные (код, архитектура) | Максимально полный аудит |
Типичные векторы атак на веб-приложения
- SQL Injection / NoSQL Injection
- XSS (Reflected, Stored, DOM)
- IDOR / Broken Access Control
- SSRF / Open Redirect
- Business Logic Flaws
- Authentication Bypass
- JWT алгоритм confusion (RS256 → HS256)
Частые ошибки
- Тестирование без письменного разрешения (scope agreement) — юридически является преступлением
- Тестирование production-системы с реальными пользователями без изоляции
- Остановка на первой найденной уязвимости — важна цепочка и итоговый impact
- Отчёт без PoC — команда разработки не может воспроизвести и исправить
Связанные темы
- _MOC Безопасность
- Bug Bounty -- программы
- SAST и DAST -- статический и динамический анализ
- Веб-безопасность -- зачем и обзор угроз