1. Основы информационной безопасности и пентестинга
Основы информационной безопасности и пентестинга
Информационная безопасность — это не просто антивирус на компьютере и сложный пароль. Это целая дисциплина, которая изучает, как защищать данные, системы и сети от несанкционированного доступа, повреждения или кражи. Пентестинг — её практическая сторона: специалист намеренно атакует систему, чтобы найти слабые места до того, как это сделает реальный злоумышленник.
Триада CIA: фундамент, на котором стоит всё
Любой разговор об информационной безопасности начинается с трёх принципов, которые принято называть триадой CIA (от английских слов Confidentiality, Integrity, Availability).
Конфиденциальность (Confidentiality) — данные доступны только тем, кому они предназначены. Пример: медицинская карта пациента не должна быть видна посторонним, только врачу и самому пациенту.
Целостность (Integrity) — данные не были изменены без разрешения. Пример: если злоумышленник подменил сумму банковского перевода с 1 000 руб. на 100 000 руб., целостность нарушена.
Доступность (Availability) — система работает тогда, когда она нужна. Пример: DDoS-атака на интернет-магазин в «Чёрную пятницу» делает сайт недоступным — это атака именно на доступность.
> Понимание триады CIA помогает пентестеру правильно формулировать риски: найденная уязвимость угрожает конфиденциальности? Целостности? Доступности? От ответа зависит критичность находки и её приоритет в отчёте.
Реальный кейс: в 2017 году атака WannaCry зашифровала данные в больницах Великобритании. Это одновременно нарушило конфиденциальность (данные попали под контроль злоумышленников), целостность (файлы были изменены) и доступность (врачи не могли получить доступ к историям болезней).
Кто такой пентестер и чем он отличается от хакера
Пентестер (от penetration tester, тестировщик на проникновение) — специалист, который с разрешения владельца системы проводит контролируемую атаку, чтобы найти уязвимости. Ключевое слово здесь — с разрешения. Именно это отличает пентестера от злоумышленника с юридической и этической точки зрения.
В индустрии принято разделять специалистов по «цвету шляпы» — метафора, пришедшая из вестернов:
| Тип | Описание | Легальность | |---|---|---| | White Hat (белая шляпа) | Этичный хакер, работает с разрешения | Легально | | Black Hat (чёрная шляпа) | Злоумышленник, атакует без разрешения | Нелегально | | Grey Hat (серая шляпа) | Атакует без разрешения, но не с целью навредить | Юридически спорно |
Пентестер — это всегда White Hat. Перед любым тестом подписывается документ — соглашение о масштабе работ (Scope of Work или Rules of Engagement), в котором чётко прописано: какие системы можно атаковать, в какое время, какие методы разрешены.
Виды тестирования: Black Box, White Box, Grey Box
Прежде чем начать тест, нужно договориться об уровне осведомлённости тестировщика о системе. Это называется моделью тестирования.
Black Box («чёрный ящик») — пентестер не знает ничего о внутреннем устройстве системы. Он видит её так же, как видит внешний злоумышленник: только публичный IP-адрес или URL сайта. Это наиболее реалистичный сценарий, но и самый трудоёмкий.
White Box («белый ящик») — пентестер получает полную информацию: исходный код приложения, схему сети, учётные данные, документацию. Позволяет найти максимум уязвимостей за минимальное время, но не моделирует реальную атаку извне.
Grey Box («серый ящик») — компромисс. Пентестер знает часть информации: например, что система работает на Apache Tomcat и использует PostgreSQL, но не имеет доступа к исходному коду. Большинство реальных коммерческих пентестов проводится именно в этом формате.
Аналогия из жизни: представьте, что вы проверяете безопасность банка. Black Box — вы приходите как обычный клиент и пытаетесь найти способ попасть в хранилище. White Box — вам дают полный план здания, коды от всех дверей и список сотрудников. Grey Box — вам говорят только, что хранилище на третьем этаже и охрана работает посменно.
Методология пентеста: пять фаз атаки
Профессиональный пентест — это не хаотичный перебор инструментов. Это структурированный процесс, который следует чёткой методологии. Индустриальным стандартом считается модель из пяти фаз.
!Пять фаз пентеста: от разведки до отчёта
1. Разведка (Reconnaissance) — сбор информации о цели без прямого взаимодействия с ней. Пентестер изучает открытые источники: WHOIS-записи домена, публикации в LinkedIn, технические вакансии компании (они раскрывают используемый стек технологий), записи DNS. Этот этап также называют OSINT (Open Source Intelligence).
2. Сканирование и перечисление (Scanning & Enumeration) — активное взаимодействие с целью. Пентестер сканирует открытые порты, определяет версии сервисов, ищет потенциальные точки входа. Классический инструмент этого этапа — Nmap.
Флаг -sV определяет версии сервисов, -sC запускает стандартные скрипты, -p- сканирует все 65535 портов.
3. Эксплуатация (Exploitation) — использование найденных уязвимостей для получения доступа к системе. Например, если на сервере обнаружена устаревшая версия OpenSSH с известной уязвимостью, пентестер применяет соответствующий эксплойт.
4. Пост-эксплуатация (Post-Exploitation) — после получения первоначального доступа пентестер исследует, насколько глубоко можно проникнуть в систему. Это включает повышение привилегий (Privilege Escalation) — получение прав администратора, горизонтальное перемещение (Lateral Movement) — переход на другие машины в сети, и сбор ценных данных.
5. Отчётность (Reporting) — финальный и, по мнению многих опытных специалистов, самый важный этап. Пентестер документирует каждую найденную уязвимость, описывает шаги воспроизведения и даёт рекомендации по устранению. Без качественного отчёта даже самый блестящий технический результат теряет ценность для заказчика.
Уязвимость, эксплойт, полезная нагрузка: три ключевых понятия
Эти три термина часто путают, поэтому важно чётко разграничить их с самого начала.
Уязвимость (Vulnerability) — это слабое место в системе. Сама по себе она ещё не причиняет вреда. Пример: веб-приложение не проверяет длину вводимых данных — это уязвимость типа переполнение буфера (Buffer Overflow).
Эксплойт (Exploit) — это код или техника, которая использует уязвимость. Это инструмент, превращающий теоретическую слабость в реальную атаку.
Полезная нагрузка (Payload) — это то, что происходит после успешной эксплуатации. Например, после взлома сервера полезная нагрузка может открыть обратное соединение (reverse shell) на машину атакующего, позволяя управлять сервером удалённо.
Аналогия: уязвимость — это незапертая дверь в доме. Эксплойт — это знание о том, что дверь не заперта, и умение её открыть. Полезная нагрузка — это то, что вы делаете, войдя внутрь: копируете документы, устанавливаете камеру наблюдения или просто проверяете, что можно было войти.
Red Team vs Pentest: в чём принципиальная разница
Начинающие специалисты часто используют эти термины как синонимы, но между ними есть важное различие.
Пентест — это проверка конкретных систем или приложений на наличие уязвимостей. Цель чётко ограничена: найти как можно больше уязвимостей в заданном периметре за отведённое время. Заказчик знает, что тест проводится.
Red Team — это полноценная симуляция реальной атаки на организацию. Цель не «найти все уязвимости», а достичь конкретного результата: получить доступ к базе данных клиентов, похитить финансовые документы, нарушить работу производственной линии. При этом Blue Team (команда защитников) не знает о проводимой операции — проверяется не только наличие уязвимостей, но и способность организации их обнаружить и отреагировать.
| Критерий | Пентест | Red Team | |---|---|---| | Цель | Найти уязвимости | Достичь бизнес-цели атакующего | | Осведомлённость защитников | Знают о тесте | Не знают | | Продолжительность | Дни — недели | Недели — месяцы | | Охват | Конкретные системы | Вся организация | | Методы | Технические | Технические + социальная инженерия + физический доступ |
По данным codeby.net, в 2025 году компании всё чаще запрашивают именно Red Team операции, понимая, что традиционного пентеста недостаточно для проверки реальной устойчивости к атакам.
Правовая база: почему «разрешение» — это не просто формальность
Работа без письменного разрешения — это уголовное преступление в большинстве стран мира. В России несанкционированный доступ к компьютерной информации регулируется статьёй 272 УК РФ и предусматривает наказание вплоть до лишения свободы на срок до 7 лет.
Перед любым тестом необходимо получить письменное разрешение (Written Authorization), которое включает:
Даже если вы тестируете систему своей собственной компании — документируйте разрешение. Это защищает и вас, и организацию.
Инструментарий и среда: с чего начать практику
Для безопасной практики пентестинга используются специализированные дистрибутивы Linux и легальные учебные платформы.
Kali Linux — наиболее популярный дистрибутив для пентестинга, содержащий более 600 предустановленных инструментов: Nmap, Metasploit, Burp Suite, Wireshark и многие другие. Именно на нём основан курс PWK (Penetration Testing with Kali Linux), который ведёт к сертификации OSCP (Offensive Security Certified Professional).
Parrot OS — более лёгкая альтернатива Kali Linux, популярная среди специалистов, которые используют тот же компьютер и для работы, и для пентестинга.
Для практики без риска нарушить закон существуют специальные платформы с намеренно уязвимыми машинами:
!Интерактивная карта: выбери уровень подготовки и узнай, с какой платформы начать
Как отмечают специалисты на codeby.net, одна из главных ошибок новичков — чрезмерное доверие к автоматическим сканерам без понимания того, что происходит «под капотом». Инструмент — это усилитель навыка, а не его замена. Пентестер, который не понимает, почему Nmap показывает тот или иной результат, не сможет интерпретировать аномалии и пропустит нестандартные уязвимости.
Путь от нулевого уровня до уверенного пентестера начинается именно здесь — с понимания базовых принципов, правовых рамок и структуры процесса. Следующий шаг — научиться собирать информацию о цели так, как это делают профессионалы Red Team.