WAPT (Web Application Penetration Testing) — это контролируемое тестирование безопасности веб-приложений методами реального атакующего. В отличие от сетевого или инфраструктурного пентеста, который исследует периметр и сетевые узлы, WAPT сфокусирован исключительно на прикладном уровне: логике приложения, обработке пользовательского ввода, механизмах аутентификации и авторизации, API-эндпоинтах.
Это принципиальное различие. Сеть может быть безупречно защищена — правильно сегментирована, с актуальными патчами и строгими правилами межсетевого экрана. Но если веб-приложение принимает SQL-запрос в поле «имя пользователя» и не экранирует его, атакующий получает прямой доступ к базе данных, минуя весь сетевой периметр. Именно поэтому WAPT — отдельная специализация со своим инструментарием, методологией и профессиональными стандартами.
WAPT может проводиться в трёх форматах. Black box — тестировщик не имеет никакой информации о приложении, имитируя внешнего атакующего с нуля. Grey box — частичная информация: учётные данные обычного пользователя, общая схема архитектуры. White box — полный доступ к исходному коду, документации и архитектурным схемам. Выбор формата зависит от целей тестирования: black box ближе к реальной атаке, white box — к максимально полному покрытию уязвимостей.
По данным ежегодных отчётов Verizon DBIR, атаки на веб-приложения стабильно входят в тройку наиболее распространённых векторов компрометации организаций. Причина очевидна: веб-приложения доступны из интернета по определению. Они принимают ввод от миллионов пользователей, взаимодействуют с базами данных и внутренними сервисами, нередко работают на устаревших фреймворках и содержат уязвимости, унаследованные от многолетней разработки без security-review.
Современные приложения — это не только фронтенд с HTML-формами. Это сложные экосистемы: REST и GraphQL API, микросервисы, OAuth и JWT-аутентификация, WebSocket-соединения, серверный рендеринг и CDN-слои. Каждый из этих компонентов добавляет собственные потенциальные векторы атаки. Задача WAPT — систематически пройти по всем из них до того, как это сделает настоящий злоумышленник.
WAPT — это всегда работа с явного письменного разрешения владельца системы. Без подписанного договора и scope of work любое тестирование, даже с благими намерениями, является нарушением законодательства. Договор должен чётко определять: какие URL и домены входят в scope, в какой период проводится тестирование, какие типы атак разрешены, а какие — нет (например, DoS-атаки обычно исключаются), и каков порядок уведомления при обнаружении критических уязвимостей.
💡 «Я просто проверял безопасность» — не является юридическим аргументом. В России несанкционированный доступ к компьютерной информации квалифицируется по ст. 272 УК РФ. Всегда работайте только в рамках подписанного соглашения с явно прописанным scope.
Хаотичный перебор атак без структуры — это не пентест, а шум. Профессиональный WAPT строится по методологии, которая обеспечивает полное покрытие поверхности атаки и воспроизводимость результатов. Основные стандарты: OWASP Testing Guide (OTG), PTES (Penetration Testing Execution Standard) и WSTG (Web Security Testing Guide). На практике большинство тестировщиков используют их как базу, адаптируя под конкретный проект.
Первый этап — понять, с чем предстоит работать. Пассивная разведка не касается цели напрямую: Shodan, Censys, сертификаты SSL/TLS через crt.sh, WHOIS-данные, пассивный DNS — всё это позволяет собрать значительный объём информации без единого запроса к целевому серверу. Это важно с точки зрения скрытности, а в легальном WAPT — с точки зрения понимания внешнего периметра ещё до начала активного сканирования.
Активная разведка — прямое взаимодействие с целью. Сканирование поддоменов (subfinder, amass), обнаружение скрытых директорий и файлов (gobuster, ffuf), идентификация технологического стека (Wappalyzer, whatweb), анализ HTTP-заголовков и cookies на предмет информации об используемых фреймворках и серверах. Каждый артефакт разведки — потенциальный вектор для следующего этапа.
После разведки составляется карта приложения: все точки входа (формы, параметры URL, заголовки, cookies, загрузка файлов), механизмы аутентификации и управления сессиями, API-эндпоинты, функциональность для разных ролей пользователей. На этом этапе Burp Suite становится основным инструментом: proxy-перехват всех запросов позволяет получить полную картину взаимодействия браузера с сервером, включая скрытые параметры и нестандартные заголовки, которые не видны в интерфейсе приложения.
Активная фаза тестирования: проверка каждой точки входа на конкретные классы уязвимостей. Это не автоматический сканер, запущенный на весь сайт, — это ручной анализ с точечными попытками эксплуатации. Автоматические сканеры дополняют ручную работу, но не заменяют её: многие логические уязвимости и проблемы авторизации сканер просто не способен обнаружить, потому что для их поиска нужно понимать бизнес-логику приложения.
Подтверждённую уязвимость нужно не только найти, но и оценить её реальное воздействие. RCE на веб-сервере — есть ли доступ к внутренней сети? SQL-инъекция — какие данные доступны, есть ли возможность записи? IDOR — сколько пользовательских записей доступно через перебор ID? Демонстрация цепочки эксплуатации с реальным impact убеждает бизнес куда эффективнее, чем просто список CVE с рейтингами CVSS.
Отчёт — финальный и самый важный артефакт WAPT. Он должен содержать executive summary для нетехнической аудитории, детальное описание каждой уязвимости с PoC (proof of concept), оценку риска и конкретные рекомендации по устранению. Хороший отчёт — тот, по которому разработчик понимает, как воспроизвести проблему и как её исправить, без дополнительных уточнений.
OWASP (Open Web Application Security Project) ведёт список десяти наиболее критических категорий уязвимостей веб-приложений — OWASP Top 10. Это не рейтинг конкретных CVE, а классификация системных проблем, которые встречаются в подавляющем большинстве современных приложений. Для WAPT-специалиста это обязательная отправная точка: каждый пункт списка — это целый класс атак с собственными техниками обнаружения и эксплуатации.
Актуальная редакция OWASP Top 10 (2021) включает: A01 — Broken Access Control (нарушения контроля доступа, переместившееся на первое место), A02 — Cryptographic Failures (слабая или отсутствующая криптография), A03 — Injection (SQL, Command, LDAP и другие инъекции), A04 — Insecure Design (архитектурные уязвимости на уровне проектирования), A05 — Security Misconfiguration (небезопасная конфигурация), A06 — Vulnerable and Outdated Components, A07 — Identification and Authentication Failures, A08 — Software and Data Integrity Failures, A09 — Security Logging and Monitoring Failures, A10 — Server-Side Request Forgery (SSRF).
💡 Broken Access Control на первом месте — не случайность. Ошибки авторизации встречаются в 94% протестированных приложений. Это не экзотика: обычная функциональность «просмотр своего профиля» превращается в критическую уязвимость, если приложение не проверяет, что запрашивающий пользователь — владелец запрашиваемого ресурса.
Понимание механики каждой категории атак — то, что отличает специалиста по WAPT от человека, который просто запускает сканер. Знать название уязвимости недостаточно: нужно понимать, как именно она работает, почему возникает и как выглядит при эксплуатации в реальном приложении.
SQL-инъекция — классика, которая не устаревает. Если приложение формирует SQL-запрос конкатенацией строк без параметризации, атакующий может изменить структуру запроса: получить данные из чужих таблиц, обойти аутентификацию, прочитать файлы с сервера (в MySQL через LOAD_FILE), а в ряде конфигураций — записать файл на диск и получить RCE. Union-based, Boolean-based, Time-based blind — это не разные уязвимости, а техники эксплуатации одной и той же проблемы при разных условиях видимости ответа.
Command Injection — когда приложение передаёт пользовательский ввод напрямую в системную команду. Пример: поле «проверить доступность хоста» реализовано как ping [user_input] — атакующий вводит 127.0.0.1; cat /etc/passwd и получает содержимое системного файла. Встречается реже SQL-инъекций, но impact — немедленное RCE. SSTI (Server-Side Template Injection) эксплуатирует шаблонизаторы (Jinja2, Twig, Freemarker): пользовательский ввод, попадающий в шаблон без экранирования, позволяет выполнять произвольный код на сервере.
XSS (Cross-Site Scripting) — внедрение JavaScript-кода в страницу, который выполняется в браузере другого пользователя. Reflected XSS срабатывает при открытии специально сформированной ссылки, Stored XSS — вредоносный скрипт сохраняется в базе данных приложения и загружается для всех посетителей страницы. DOM-based XSS эксплуатирует небезопасную обработку данных в клиентском JavaScript без участия сервера. Impact XSS — от кражи сессионных cookie и угона аккаунтов до полного контроля над браузером жертвы через BeEF.
CSRF (Cross-Site Request Forgery) — принуждение аутентифицированного пользователя выполнить нежелательное действие на доверенном сайте. Атакующий размещает на стороннем ресурсе форму или изображение, которое при загрузке отправляет запрос от имени вошедшего пользователя: перевод денег, смена email, удаление данных. Защита — CSRF-токены и проверка заголовка Origin/Referer. Отсутствие этой защиты в 2026 году — признак откровенно устаревшего кода.
IDOR (Insecure Direct Object Reference) — подтип Broken Access Control, при котором приложение использует предсказуемые идентификаторы для доступа к объектам без проверки прав. Классический пример: URL вида /api/orders/12345 возвращает заказ пользователя. Если изменить число на 12346 — возвращается заказ другого пользователя. Никакой «хакерской магии» — просто отсутствие проверки «является ли текущий пользователь владельцем этого ресурса». При систематическом переборе такая уязвимость даёт доступ ко всем данным всех пользователей системы.
SSRF (Server-Side Request Forgery) — принуждение сервера делать HTTP-запросы к произвольным адресам, включая внутренние сервисы, недоступные снаружи. Типичный сценарий: функция «предпросмотр URL» или «импорт данных по ссылке» не ограничивает доступные адреса, и атакующий указывает http://169.254.169.254/latest/meta-data/ — эндпоинт метаданных облачного инстанса, где хранятся ключи доступа. В облачных инфраструктурах SSRF превращается из информационной утечки в полную компрометацию облачного аккаунта.
XXE (XML External Entity) эксплуатирует небезопасную обработку XML-документов: атакующий включает в XML ссылку на внешний файл или URL, и сервер «любезно» возвращает его содержимое. Несмотря на то что XML постепенно вытесняется JSON, XXE остаётся актуальным — многие enterprise-приложения, банковские системы и API работают с XML до сих пор.
💡 Многие критические находки в WAPT — это не отдельные уязвимости, а цепочки: SSRF позволяет добраться до внутреннего Redis, Redis даёт RCE через запись в cron, cron выполняет reverse shell. Умение строить attack chain — ключевой навык продвинутого WAPT-специалиста.
Инструментальный стек WAPT-специалиста хорошо устоялся, хотя постоянно пополняется. Ключевое разграничение: автоматические сканеры помогают быстро найти очевидные уязвимости, но большинство серьёзных находок требует ручной работы с прокси-перехватчиком и пониманием логики приложения.
Burp Suite Professional — абсолютный стандарт отрасли. Proxy для перехвата и модификации HTTP/HTTPS-трафика, Repeater для ручного тестирования запросов, Intruder для автоматизированного перебора, Scanner для автоматического поиска уязвимостей, Decoder/Comparer — вспомогательные инструменты. Без уверенного владения Burp Suite разговор о WAPT не имеет смысла. Бесплатная Community-версия подходит для обучения, Professional нужен для реальной работы.
sqlmap — автоматизированный инструмент для обнаружения и эксплуатации SQL-инъекций. Поддерживает все основные СУБД, множество техник эксплуатации, выгрузку данных из таблиц и — при наличии соответствующих прав — выполнение системных команд. ffuf / gobuster — быстрый перебор директорий, файлов и поддоменов по словарям. nuclei — фреймворк на основе шаблонов для массового сканирования на известные уязвимости; огромная библиотека сообщества охватывает тысячи CVE и паттернов неверной конфигурации. nikto — классический сканер веб-серверов для обнаружения типовых проблем конфигурации.
OWASP ZAP — open source альтернатива Burp Suite, хорошо подходит для начального обучения и интеграции в CI/CD-пайплайны — область, где он пересекается с задачами DAST-инструментов в DevSecOps. Metasploit Framework — незаменим для проверки эксплуатируемости найденных уязвимостей и построения цепочек атак в post-exploitation фазе. Для работы с API дополнительно используют Postman или curl: многие уязвимости в REST и GraphQL API обнаруживаются только при ручном анализе запросов.
💡 Kali Linux и Parrot OS — дистрибутивы с предустановленным набором инструментов для пентеста. Для WAPT также незаменима платформа PortSwigger Web Security Academy: бесплатные лаборатории покрывают все категории OWASP Top 10 с нарастающей сложностью.
WAPT — практическая дисциплина: читать про уязвимости полезно, но навык формируется только в лабораториях и на реальных проектах. Ниже — курсы, которые дают именно практику, а не теоретический обзор.
Яндекс Практикум
Кибербезопасность: веб-пентест
Шестимесячный курс профессиональной переподготовки по поиску и эксплуатации уязвимостей в веб-приложениях. По итогам выдаётся диплом; формат совмещает видеолекции и онлайн-занятия с преподавателем.
Codeby Academy
Тестирование веб-приложений на проникновение
Специализированный курс по WAPT: от разведки и картирования поверхности атаки до эксплуатации уязвимостей OWASP Top 10 и составления пентест-отчёта. Практика ведётся в лабораторной среде на реалистичных приложениях.
Codeby Academy
Практико-ориентированная программа уровня Middle, охватывающая полный цикл работы пентестера: от разведки и сканирования до эксплуатации уязвимостей. Обучение построено на реальных заданиях в формате семинаров.
CyberED
Курс разработан этичными хакерами-практиками, сотрудничающими с российскими компаниями. Программа включает 100 техник тестирования на проникновение, разбитых на 12 модулей с нарастающей сложностью практических задач.
Академия АйТи
Пентестер: этичный хакинг и анализ систем безопасности
Программа повышения квалификации объёмом 220 часов, подходящая в том числе для новичков. Формирует практические навыки проведения пентеста и анализа безопасности с выдачей удостоверения о повышении квалификации.
БАУМАНТЕХ
Специалист по тестированию на проникновение (Junior Pentester)
Шестимесячная программа профессиональной переподготовки: сетевое сканирование, методологии PTES, OWASP и MITRE ATT&CK, пост-эксплуатация и составление отчётов. По окончании выдаётся диплом.
УЦ «Специалист» при МГТУ им. Баумана
Hacker. Penetration Testing and Security
Курс по тестированию на проникновение и анализу безопасности с возможностью очного и онлайн-обучения. Программа готовит к сертификационным экзаменам в сфере этичного хакинга.
Otus
Пентест. Практика тестирования на проникновение
Практический курс уровня Middle объёмом 80 часов (5 месяцев), ориентированный на разработчиков и специалистов по ИБ. Охватывает анализ уязвимостей сетей, ПО и веб-ресурсов, наиболее распространённые сценарии атак.
CyberYozh
Active Directory. Пентест внутренней инфраструктуры
Углублённый 26-недельный курс по полному циклу инфраструктурного пентеста Active Directory: от разведки до пост-эксплуатации, обхода EDR и подготовки итогового отчёта. Практика ведётся в лабораториях, приближённых к боевым условиям.
Все курсы по пентесту
Сравните программы по уровню подготовки, формату и стоимости в каталоге ibcourses.ru.
Смотреть курсы по пентесту →