
Когда я впервые запустил Burp Suite, первые три часа ушли не на поиск уязвимостей, а на войну с настройкой — Firefox отказывался грузить HTTPS-страницы, скачанный сертификат не импортировался, а FoxyProxy гнал трафик в пустоту. Через неделю я случайно ткнул в интерфейсе кнопку Open Browser — оказалось, в Burp Suite есть встроенный браузер, который работает из коробки. Без единой дополнительной настройки. Ни один русскоязычный мануал этого не упоминал. Эта статья — тот гайд, который я хотел бы прочитать в свой первый день: от установки до реальной SQL-инъекции в тестовом приложении, с конкретными кликами и ожидаемым результатом на каждом шаге.
Burp Suite — платформа для тестирования безопасности веб-приложений от PortSwigger. По сути — MITM-прокси (Man-in-the-Middle): программа встаёт между вашим браузером и веб-сервером, перехватывая каждый HTTP- и HTTPS-запрос. По механике это похоже на технику Adversary-in-the-Middle (T1557, Credential Access / Collection) из MITRE ATT&CK, хотя T1557 описывает перехват трафика злоумышленником между двумя сторонами, а Burp Suite работает как локальный прокси между вашим собственным браузером и сервером. Подробнее — в нашем материале про пентест веб-приложений.
На практике Burp Suite для тестирования веб-приложений даёт четыре вещи:
Три редакции. Community Edition бесплатна — Proxy, Repeater, Intruder (с ограничением скорости), Decoder и Comparer. Для обучения и CTF хватает за глаза. Professional Edition за $449/год добавляет автоматический Scanner, Collaborator для blind-уязвимостей и полноскоростной Intruder. Enterprise Edition — для CI/CD-интеграции в командах. Всё, что описано ниже, работает на бесплатной Community.
Требования к окружению: - ОС: Windows 10+, macOS 10.14+, любой современный Linux-дистрибутив - RAM: минимум 4 ГБ, рекомендуется 8 ГБ (Burp активно жрёт память при большом объёме трафика) - Диск: 500 МБ свободного места - Java: встроена в инсталлятор начиная с версии 2024+, отдельная установка не нужна - Сеть: доступ к интернету для работы с онлайн-стендами
Шаги установки:
Через несколько секунд откроется интерфейс с вкладками: Dashboard, Target, Proxy, Intruder, Repeater и другие. Пока нас интересует только Proxy — остальное подключим позже.
Proxy — ядро всей работы. Без настроенного прокси Repeater и Intruder бесполезны: они работают с запросами, которые вы сначала перехватили через Proxy. По умолчанию Burp Suite слушает на 127.0.0.1:8080 — задача в том, чтобы направить туда трафик браузера.
Самый простой способ начать, о котором молчит большинство русскоязычных мануалов. Согласно документации PortSwigger, встроенный браузер — рекомендуемый вариант для новых пользователей.
Три клика — и вы перехватываете HTTPS-трафик. Никаких FoxyProxy, никаких импортов сертификатов. Встроенный браузер поддерживает все стандартные функции Chromium, включая DevTools.
Когда встроенный браузер НЕ подходит:
В этих случаях настраивайте Firefox вручную.
FoxyProxy — расширение для Firefox, которое позволяет переключать прокси одним кликом вместо ковыряния в настройках каждый раз.
Burp Suite, Proxy Type — HTTP, Proxy IP — 127.0.0.1, Port — 8080Теперь включение и выключение прокси — один клик по иконке. Когда Burp Suite не запущен, обязательно переключайте FoxyProxy обратно в «Disable», иначе браузер не загрузит ни одну страницу: все запросы улетят на 127.0.0.1:8080, где никто не слушает.
Альтернатива без FoxyProxy: Firefox → Настройки → Основные → Параметры сети → Ручная настройка прокси → HTTP-прокси 127.0.0.1, порт 8080, галочка «Использовать этот прокси для всех протоколов». Но менять настройки вручную каждый раз — занятие для мазохистов. FoxyProxy экономит десятки кликов в день.
При использовании внешнего браузера Burp Suite не сможет расшифровать HTTPS-трафик без установки своего корневого сертификата. Браузер покажет «Соединение не защищено» на каждом HTTPS-сайте — и это ожидаемое поведение, потому что Burp подменяет оригинальный сертификат сайта своим.
Установка сертификата в Firefox:
http://burp — откроется служебная страница Burpcacert.dercacert.derПроверка: откройте любой HTTPS-сайт через прокси. Страница загрузилась без предупреждений — сертификат установлен правильно, Burp Suite расшифровывает HTTPS-трафик.
Важный момент: после окончания работы с Burp Suite удалите сертификат из хранилища браузера. Оставленный корневой сертификат Burp — вектор атаки. Если кто-то получит доступ к приватному ключу вашей установки Burp Suite, он сможет провести настоящую MITM-атаку на ваш трафик. Я знаю людей, у которых этот сертификат висит в Firefox годами — не будьте как они.
Прокси настроен — переходим к перехвату HTTP-запросов. Откройте вкладку Proxy → Intercept.
Кнопка Intercept is on / Intercept is off — главный переключатель. Когда перехват включён, каждый запрос из браузера «застревает» в окне Burp Suite и ждёт вашего решения:
Попробуйте: включите Intercept is on, откройте в браузере http://example.com. В окне Burp Suite появится перехваченный запрос:
GET / HTTP/2
Host: example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
Accept: text/html,application/xhtml+xml
Accept-Language: en-US,en;q=0.5
Connection: keep-alive
Каждая строка — HTTP-заголовок. Host — адрес сервера, User-Agent — идентификатор браузера, Accept — какие форматы данных браузер готов принять. Замените строку User-Agent на User-Agent: Codeby-Test прямо в окне Intercept и нажмите Forward. Сервер получит запрос с вашим кастомным заголовком — это базовый навык модификации запросов на лету.
Теперь выключите Intercept и походите по нескольким сайтам. Запросы пройдут через Burp без задержки, но запишутся в историю: вкладка Proxy → HTTP history. Полный лог всех запросов и ответов — можно прокрутить назад и изучить любое взаимодействие.
Чтобы HTTP history не превратилась в свалку из запросов к Google Analytics, рекламным трекерам и CDN, настройте Target Scope. Перейдите на вкладку Target → Scope, нажмите Add и введите домен тестового приложения. После этого в HTTP history включите фильтр «Show only in-scope items» — и увидите только нужный трафик.
Repeater — инструмент для многократной отправки одного запроса с разными параметрами. Если Proxy показывает трафик как поток, то Repeater — лаборатория, где вы препарируете один конкретный запрос.
Как отправить запрос в Repeater:
Ctrl+R)Слева — ваш запрос (можно редактировать), справа — ответ сервера. Поменяли параметр, нажали Send, ответ обновился. Можно открыть несколько вкладок Repeater — каждая с отдельным запросом — и переключаться между ними, сравнивая ответы.
Repeater незаменим при поиске уязвимостей веб-приложений: нашли форму поиска — отправили запрос в Repeater — и проверяете десять вариантов payload'ов за минуту, вместо того чтобы каждый раз вбивать данные в браузере, ждать загрузку страницы и искать нужное поле. Горячие клавиши: Ctrl+R — отправить в Repeater, Ctrl+I — отправить в Intruder. Выучите их — руки скажут спасибо.
Теория без практики бесполезна. SQL-инъекция входит в OWASP Top 10 как A03:2021 — Injection: приложение подставляет пользовательский ввод в SQL-запрос без фильтрации, и атакующий может изменить логику обращения к базе данных. В MITRE ATT&CK это Exploit Public-Facing Application (T1190, Initial Access).
Требования: - Burp Suite Community Edition (установлен и запущен) - Настроенный прокси (встроенный браузер или Firefox + FoxyProxy) - Бесплатный аккаунт на PortSwigger Web Security Academy (portswigger.net/web-security)
Тестируйте уязвимости только на разрешённых стендах. Пентест без авторизации — уголовное преступление. PortSwigger Web Security Academy, DVWA, bWAPP и OWASP Juice Shop — специально созданные уязвимые приложения для обучения.
PortSwigger Web Security Academy — бесплатная платформа с десятками лабораторных работ, каждая содержит изолированное веб-приложение с конкретной уязвимостью. Лабы уровня Apprentice (начальный) — то что нужно для первых шагов. Стенд не нужно разворачивать локально — открыл браузер и работаешь.
Работает если: приложение использует строковую конкатенацию для SQL-запросов, входные параметры не параметризованы (prepared statements отсутствуют), сервер возвращает разные ответы для валидных и невалидных запросов.
Не работает если: приложение использует ORM или параметризованные запросы, WAF фильтрует SQL-синтаксис, сервер отвечает одинаково вне зависимости от результата (для этого случая есть blind-инъекция — отдельная тема).
По шагам:
Ctrl+R)GET /filter?category=GiftsGifts на Gifts'+OR+1=1-- и нажмите SendGET /filter?category=Gifts'+OR+1=1-- HTTP/2
Host: <lab-id>.web-security-academy.net
OR 1=1 всегда истинно, SQL-запрос вернул все строки таблицы.Для проверки отправьте запрос с category=Gifts'+AND+1=2-- — сервер вернёт пустой список, потому что 1=2 ложно. Разница в ответах подтверждает: пользовательский ввод попадает в SQL-запрос без фильтрации.
Вот и первая уязвимость. В реальном пентесте следующий шаг — определить количество столбцов через ORDER BY и вытащить данные из других таблиц через UNION SELECT. Но это уже продвинутая тема — для начала достаточно подтвердить сам факт инъекции.
Intruder — инструмент для автоматизированных атак. Если Repeater — снайперская винтовка (один запрос за раз, полный контроль), то Intruder — автомат: сотни запросов с разными значениями из заранее подготовленного списка.
Типичные задачи:
Пошаговая работа с Intruder:
username и password)Ctrl+I)§Типы атак (выбираются на вкладке Positions):
| Тип атаки | Что делает | Когда использовать |
|---|---|---|
| Sniper | Один список, одна позиция | Перебор пароля при известном логине |
| Battering ram | Один список, одно значение во все позиции | Проверка, используется ли одно значение в нескольких полях |
| Pitchfork | Параллельный перебор: строка 1 + строка 1 | Пары логин-пароль из утечки |
| Cluster bomb | Все комбинации всех списков | Полный перебор логин + пароль |
На вкладке Payloads загрузите список значений. Для брутфорса подходят словари из SecLists — открытый набор на GitHub с популярными паролями, именами пользователей и фаззинг-строками.
Нажмите Start attack. В Community Edition скорость искусственно ограничена: запросы отправляются с задержкой. Это осознанное решение PortSwigger, чтобы стимулировать покупку Professional Edition. Неприятно, но для учебных задач терпимо.
Как читать результаты: в таблице смотрите на столбцы Status (HTTP-код) и Length (размер ответа). Если один запрос вернул Status 302 (редирект — обычно успешный вход), а остальные дали 200 (страница с «неверный пароль») — вы нашли рабочую комбинацию. Или если Length одного ответа отличается от остальных на сотни байт — кликните на строку и изучите ответ в нижней панели.
«Сайты не загружаются после настройки прокси»
В 90% случаев: Burp Suite не запущен, а FoxyProxy гонит трафик на 127.0.0.1:8080, где никто не слушает. Запустите Burp Suite или выключите FoxyProxy. Выработайте привычку — закончили работу, сразу переключили FoxyProxy в Disable.
«HTTPS-сайты показывают ошибку сертификата»
Сертификат Burp не установлен в браузере, либо установлен без галочки «доверять при идентификации веб-сайтов». Самый быстрый путь: используйте встроенный браузер Burp, где сертификат стоит из коробки.
«Intercept включён, но ничего не перехватывается»
Трафик из браузера вообще идёт через прокси? Классика — вы открыли Chrome, а FoxyProxy настроен в Firefox. Или FoxyProxy показывает нужный профиль, но фактически не активирован (иконка серая, а не цветная).
«В HTTP history слишком много мусора»
Burp перехватывает всё: запросы к CDN, аналитике, рекламным трекерам, шрифтам Google Fonts. Настройте Target Scope: вкладка Target → Scope → Add, введите домен тестового приложения. В HTTP history включите фильтр «Show only in-scope items».
«Intruder работает невозможно медленно»
Штатное ограничение Community Edition. Для учебных задач используйте Repeater с ручной подстановкой — медленнее, но без искусственного троттлинга.
«Burp Suite съедает всю память»
При длительных сессиях HTTP history разрастается до сотен тысяч запросов. Перед началом работы очистите историю (правая кнопка в HTTP history → Clear history) или настройте Scope, чтобы логировать только нужный домен. Если работаете с проектом дольше одного дня — используйте New project on disk вместо Temporary project, чтобы Burp мог выгружать данные на диск.
За полтора года ежедневной работы с Burp Suite я пришёл к выводу, который многих удивляет: 90% рабочего времени — две вкладки. HTTP history и Repeater. Intruder, Scanner, Sequencer, Comparer — до них руки доходят позже. Новички часто пытаются освоить всё сразу, открывают двадцать вкладок, путаются в потоке данных и решают, что «Burp Suite слишком сложный». Нет. Он простой — если не пытаться проглотить его целиком.
Перехватили запрос, отправили в Repeater, изменили параметр, посмотрели ответ. Когда эта связка станет автоматической (через неделю-две) — добавляйте Intruder. Потом Target Scope и фильтры. Потом расширения из BApp Store. Каждый слой — когда предыдущий стал привычным.
И ещё одна неудобная правда: Community Edition достаточно для обучения, но для работы Professional — не роскошь, а необходимость. Scanner находит уязвимости, которые вручную вы будете искать часами. Collaborator обнаруживает blind SSRF и blind XXE, которые без внешнего сервера вообще невидимы. Но платить $449/год имеет смысл, только когда вы уже понимаете, что конкретно эти инструменты вам дадут. А для этого нужно пройти стадию Proxy + Repeater на бесплатной версии. На IB Basics показываем что делать в первый месяц после «хочу в ИБ» — от базовых концепций до первых задач в инструментах вроде Burp Suite.
🚀 Хочешь закрепить на практике? Реши задачи по теме на HackerLab — категория «web».
0 комментариев
Пожалуйста, войдите, чтобы оставить комментарий.
Загрузка комментариев...