Введение в пентестинг: от новичка до первых шагов в Red Team

Практический вводный курс по пентестингу для студентов без опыта в кибербезопасности. Курс охватывает разведку, уязвимости веб-приложений, сетевой пентест, ключевые инструменты и методологии, а также даёт базу для подготовки к сертификациям eJPT и OSCP и первым шагам в Red Team.

1. Основы кибербезопасности и разведка

Основы кибербезопасности и разведка: как думает пентестер

Прежде чем запускать первый сканер или писать первый эксплойт, нужно понять одну фундаментальную вещь: пентестинг — это не набор инструментов, это способ мышления. Хороший пентестер смотрит на систему глазами атакующего и задаёт себе вопрос: «Где здесь слабое место, и как его можно использовать?» Именно с этого мышления начинается путь в Red Team.

Кто такой пентестер и чем он отличается от хакера

Пентестер (от английского penetration tester) — это специалист по информационной безопасности, который с разрешения владельца системы имитирует реальные кибератаки, чтобы найти уязвимости раньше, чем это сделает злоумышленник. Ключевое слово здесь — с разрешения. Именно это отличает пентестера от преступника.

В профессиональном сообществе принято делить хакеров на три категории:

| Категория | Цвет шляпы | Действует легально? | Цель | |---|---|---|---| | Этичный хакер / пентестер | White Hat | Да | Помочь защитить систему | | Киберпреступник | Black Hat | Нет | Личная выгода, вред | | Серая зона | Grey Hat | Частично | Помочь, но без разрешения |

Пентестеры — это White Hat. Они работают по договору, в рамках чётко оговорённого scope (области тестирования), и по итогам пишут отчёт с рекомендациями. Именно такая работа лежит в основе Red Team операций — только там сценарии сложнее, а цели масштабнее.

> Настоящая безопасность начинается тогда, когда организация готова думать и действовать так же, как её противники. > > habr.com

Три кита: конфиденциальность, целостность, доступность

Вся кибербезопасность строится вокруг модели CIA Triad — трёх свойств, которые нужно защищать в любой системе:

  • Confidentiality (конфиденциальность) — данные доступны только тем, кому они предназначены. Пример нарушения: злоумышленник читает чужую переписку или крадёт базу паролей.
  • Integrity (целостность) — данные не изменены несанкционированно. Пример нарушения: атакующий подменяет содержимое банковского перевода в момент передачи.
  • Availability (доступность) — система работает тогда, когда она нужна. Пример нарушения: DDoS-атака кладёт сайт интернет-магазина в период распродажи.
  • Задача пентестера — найти способы нарушить хотя бы одно из этих свойств и показать это владельцу системы до того, как это сделает реальный атакующий.

    Методология пентеста: пять фаз

    Пентест — это не хаотичный перебор атак. Это структурированный процесс. Профессиональные методологии (PTES, OWASP Testing Guide, NIST SP 800-115) описывают его примерно одинаково: пять последовательных фаз.

    !Пять фаз пентеста: от разведки до отчёта

    Разведка

    Разведка (Reconnaissance или Recon) — первая и, пожалуй, самая важная фаза. Здесь атакующий собирает максимум информации о цели, не касаясь её напрямую. Чем больше данных собрано на этом этапе, тем точнее и эффективнее будут следующие шаги.

    Разведка делится на два типа:

  • Пассивная разведка (Passive Recon) — сбор информации из открытых источников без прямого взаимодействия с целевой системой. Цель вообще не знает, что её изучают.
  • Активная разведка (Active Recon) — прямое взаимодействие с системой: сканирование портов, отправка запросов. Цель может зафиксировать эти действия в логах.
  • Сканирование и анализ уязвимостей

    На этом этапе пентестер взаимодействует с системой напрямую: определяет открытые порты, запущенные сервисы, версии программного обеспечения. Затем сопоставляет найденное с базами известных уязвимостей.

    Эксплуатация

    Пентестер пытается использовать найденные уязвимости для получения несанкционированного доступа. Это и есть то, что большинство людей представляют, когда думают о «взломе».

    Пост-эксплуатация

    После получения доступа атакующий исследует, что можно сделать дальше: закрепиться в системе, повысить привилегии, добраться до других сегментов сети. В Red Team операциях этот этап особенно важен.

    Отчётность

    Финальная фаза — подробный отчёт с описанием найденных уязвимостей, их критичности и рекомендаций по устранению. Без этого этапа пентест теряет смысл.

    OSINT: разведка по открытым источникам

    OSINT (Open Source Intelligence) — это методология сбора и анализа информации из публично доступных источников. Для пентестера это главный инструмент пассивной разведки. Важно понимать: всё, что вы найдёте через OSINT, мог найти и реальный злоумышленник — без единого взлома.

    Что можно узнать через OSINT о компании:

  • Доменные имена и поддомены — через сервисы crt.sh, Shodan, VirusTotal
  • IP-адреса и диапазоны сетей — через базы данных WHOIS и ARIN/RIPE
  • Email-адреса сотрудников — через Hunter.io, утечки данных, LinkedIn
  • Технологический стек — через Wappalyzer, BuiltWith, заголовки HTTP-ответов
  • Документы с метаданными — PDF и Word-файлы на сайте компании часто содержат имена авторов, версии ПО, внутренние пути к файлам
  • Реальный пример: в 2021 году исследователи безопасности обнаружили, что публично доступные PDF-документы крупного банка содержали в метаданных имена внутренних серверов и версии используемого ПО. Эта информация позволила бы атакующему сразу сфокусироваться на известных уязвимостях конкретных версий.

    Google Dorks: поисковик как инструмент разведки

    Google Dorks (или Google Hacking) — это использование расширенных операторов поиска Google для нахождения информации, которую владелец сайта не планировал делать публичной. Это легальный инструмент пассивной разведки.

    Несколько базовых операторов:

    Комбинируя операторы, можно найти неожиданные вещи. Например, запрос site:example.com filetype:sql может обнаружить случайно опубликованные дампы баз данных. База таких запросов хранится на exploit-db.com/google-hacking-database — там тысячи готовых дорков, классифицированных по типу находок.

    Shodan: поисковик для устройств и сервисов

    Если Google индексирует веб-страницы, то Shodan индексирует устройства и сервисы, подключённые к интернету. Это один из самых мощных инструментов пассивной разведки.

    Shodan постоянно сканирует весь интернет и сохраняет баннеры сервисов — ответы, которые возвращают серверы при подключении. В этих баннерах содержится версия ПО, конфигурация, иногда даже имя организации.

    Что можно найти через Shodan:

  • Промышленные системы управления (SCADA), случайно выставленные в интернет
  • Камеры видеонаблюдения с паролями по умолчанию
  • Серверы с устаревшими версиями Apache или nginx, имеющими известные уязвимости
  • Базы данных MongoDB и Elasticsearch без аутентификации
  • Пример: в 2017 году через Shodan были обнаружены тысячи промышленных контроллеров водоочистных станций в США, доступных напрямую из интернета без какой-либо аутентификации. Это классический результат пассивной разведки, который показывает реальный масштаб проблемы.

    DNS-разведка: карта инфраструктуры цели

    DNS (Domain Name System) — это система, которая переводит доменные имена (например, google.com) в IP-адреса. Для пентестера DNS — это карта инфраструктуры цели.

    Анализ DNS-записей позволяет узнать:

  • A-запись — какой IP-адрес стоит за доменом
  • MX-запись — какой почтовый сервер использует компания (и какое ПО на нём)
  • NS-запись — у какого регистратора и на каких серверах хранится DNS
  • TXT-запись — часто содержит информацию о SPF, DKIM, иногда — о внутренних сервисах
  • Перебор поддоменов (subdomain enumeration) — одна из ключевых техник разведки. Компания может тщательно защитить www.example.com, но забыть про dev.example.com или staging.example.com, где крутится тестовая версия приложения с отладочными данными.

    Для этого используют инструменты вроде subfinder, amass или dnsx. Например:

    Эта команда запустит пассивный перебор поддоменов домена example.com и сохранит результаты в файл.

    Фреймворк MITRE ATT&CK: язык атакующих

    MITRE ATT&CK — это публичная база знаний, описывающая реальные тактики, техники и процедуры (TTPs), которые используют злоумышленники. Это не просто список атак — это структурированный фреймворк, который позволяет говорить об атаках на одном языке.

    Структура ATT&CK строится так:

  • Тактика (Tactic) — зачем атакующий делает то или иное действие. Например, Initial Access (получение первоначального доступа) или Reconnaissance (разведка).
  • Техника (Technique) — как именно это делается. Например, под тактикой Reconnaissance есть техника T1596 — Search Open Technical Databases (поиск в открытых технических базах данных, то есть тот самый Shodan).
  • Процедура (Procedure) — конкретная реализация техники конкретной группой злоумышленников.
  • Для начинающего пентестера ATT&CK важен по двум причинам. Во-первых, он показывает полную картину того, как выглядит реальная атака — от разведки до достижения цели. Во-вторых, он используется в сертификациях OSCP и eJPT как общий язык описания атак. Изучить матрицу можно на attack.mitre.org.

    Легальная сторона: scope и письменное разрешение

    Прежде чем применять любой из описанных инструментов к реальной цели, нужно чётко понять одно правило: без письменного разрешения — это преступление. Даже пассивная разведка через Shodan или Google Dorks в контексте реального пентеста должна быть оговорена в договоре.

    Scope — это документ, определяющий границы тестирования: какие IP-адреса, домены и системы можно трогать, а какие — нет. Выход за пределы scope, даже случайный, может иметь юридические последствия.

    Для безопасной практики существуют специальные легальные площадки:

  • OverTheWire — тот самый Bandit, который вы уже проходите
  • Hack The Box — реалистичные машины для взлома
  • TryHackMe — обучающие комнаты с пошаговыми заданиями
  • VulnHub — виртуальные машины для локальной практики
  • На этих платформах разрешение уже встроено в условия использования — вы можете легально отрабатывать все техники, включая разведку, эксплуатацию и пост-эксплуатацию.

    !Интерактивный тренажёр: выбери инструмент разведки под задачу

    Понимание того, зачем нужна каждая фаза пентеста и какую информацию она даёт — это фундамент, на котором строится всё остальное. Разведка — не скучная бюрократия перед «настоящим взломом». Это этап, на котором опытный пентестер уже видит 70% картины атаки. Именно поэтому в реальных Red Team операциях разведке уделяют недели, а иногда и месяцы — прежде чем сделать первое активное действие.