💀 Burp Suite: зачем перехватывают запросы
Представь, ты открываешь свой заказ в интернет-магазине. Браузер отправляет запрос на сервер, получает ответ и показывает информацию о покупке.
А что произойдёт, если изменить запрос до отправки? Например, подставить другой номер заказа и посмотреть, как отреагирует сервер.
Проверим на практике с помощью Burp Suite. Этот инструмент позволяет перехватывать HTTP-запросы, изучать их содержимое, изменять параметры и анализировать ответы сервера.
Для начала открываем учебный интернет-магазин через браузер, настроенный на Burp Proxy. Включаем Intercept и переходим к своему заказу. Burp останавливает запрос, позволяя посмотреть его метод, адрес, заголовки и параметры.
Фото №1
Допустим, мы авторизованы под тестовым пользователем и открываем заказ №104. В перехваченном запросе видим:
GET /api/orders/104
Теперь меняем идентификатор заказа со 104 на 105, сохраняя данные текущей сессии:
GET /api/orders/105
Так мы проверяем, контролирует ли сервер доступ пользователя к конкретному заказу.
Фото №2
Нажимаем Forward и отправляем изменённый запрос. Сервер получает обращение к заказу №105 и должен проверить, имеет ли текущий пользователь право просматривать его содержимое.
Фото №3
В нашем учебном примере сервер возвращает 200 OK вместе с JSON-ответом, содержащим информацию о заказе №105: товары, стоимость и статус покупки.
Если этот заказ принадлежит другому пользователю, а сервер раскрывает его данные, мы обнаружили IDOR (Insecure Direct Object Reference). Такая уязвимость возникает, когда приложение позволяет обращаться к объектам по их идентификаторам без достаточной проверки прав доступа.
При этом сам код 200 OK ещё не доказывает наличие уязвимости. Нужно убедиться, что текущий пользователь действительно получил данные, к которым у него нет разрешённого доступа.
Фото №4
Для наглядности пробуем открыть заказ №105 в браузере с той же тестовой сессией. Если чужие данные доступны, сохраняем запрос, ответ сервера и информацию о правах тестовых аккаунтов. Эти материалы пригодятся для отчёта об уязвимости.
Фото №5
🔥 Кстати, Burp Suite умеет гораздо больше. Через Proxy можно перехватывать и изменять трафик, HTTP History позволяет изучать историю запросов, Repeater помогает многократно отправлять запросы с разными параметрами, а Intruder автоматизирует подобные проверки.
Именно поэтому Burp Suite часто используют при тестировании веб-приложений. Через него удобно исследовать механизмы авторизации, обработку пользовательского ввода и работу API.
К слову, Broken Access Control занимает первое место в OWASP Top 10:2025. Ошибки проверки прав доступа остаются одной из ключевых проблем безопасности веб-приложений.
Хочешь попробовать самостоятельно? Установи бесплатную Burp Suite Community Edition и загляни в PortSwigger Web Security Academy. Там доступны практические лаборатории с IDOR, SQL-инъекциями, XSS и другими уязвимостями.