Skip to main content

Burp

Открытые курсы по Burp от разработчиков.

Структура сканера

Процесс прохождения пакета и точки настройки

  1. Входящий пакет попадает на proxy.
  2. Происходит проверка совпадения со Scopes.
  3. В случае совпадения отправляется в инструменты. Иначе отправляется обратно в Proxy.
  4. Производится обработка, модификация пакета, далее отправляется обратно в Proxy
  5. Пакет отправляется на выход в соответствии с правилами

Настройки

Проект Настройки бывают пользователя и проекта. Проект = данные + настройки. В Community Edition можно сохранить только настройки, данные придется получать каждый раз. Для каждого блока можно сохранить / загрузить настройки отдельно. 

Scopes

Site map. Агрегация данных о структуре сайта. Раздел Display - расширенные инструменты фильтрации отображения, есть регулярки. Можно подсветить нужные запросы (ПКМ - highlight) и/или добавить комментарии, затем по ним отфильтровать. После применения Scopes, исключенные пакеты отображаются в сером цвете.

В Pro версии можно найти отличия между двумя Site Map.

Scope. Ограничение области действия (домен, папка, файлы). Файл в терминах Burp - например для запроса http://one.ru/two/index.php будет index.php. Вариант настройки - запустить браузер и перейти в нем на нужный сайт. Все посещенные сайты в пределах текущей сессии отображаются в разделе Target-Site map 

image.png

ПКМ-Add to scope По умолчанию для нового проекта все посещенные страницы попадают в историю и другие инструменты. После добавления в scope будет задан вопрос - сохранять ли запросы вне scope. Можно включить обратно. 

image.png

Есть обычный и расширенный режимы настройки scope. В обычном настраивается только префикс, в расширенном можно ограничить протокол и использовать регулярные выражения для определения сайта, порта, файла.

image.png

Страница попадает/исключается при полном совпадении условий. 

Можем загрузить список из текстового файла без указания протокола, например в виде 

web.cyber-ed.ru
wiki.cyber-ed.ru
www.cyber-ed.ru

В других разделах настраиваются более точные параметры для фильтрации. В разделе Project - Scope есть настройка Drop all out-of-scope requests. Если предыдущие настройки определяли правила попадания страниц в историю, то это блокирует запросы вне scope. 

Proxy

В этом разделе есть 3 блока настроек: входящие параметры, перехват трафика и исходящие параметры. 

Отправка трафика на другой прокси настраивается в разделе Network-Connections Поддерживаются http и socks. Пример настройки socks для TOR сети.

По умолчанию принимает локальные входящие соединения на 8080 порту http. Можно настроить в режиме прокси для внешних соединений. В Settings - Tools - Proxy нужно добавить Proxy Listeners. Это можно использовать для проксирования внешнего трафика.

Обработка https запросов. Нужно чтобы burp распаковывал трафик, предоставлял возможности модификации и обратно запаковывал трафик.

  • Перейти в браузере по адресу http://burp и скачать CA Certificate.
  • Преобразовать сертификат 
    openssl x509 -inform DER -in cacert.der -out cacert.pem
  • Установить приложение и сертификат 
    sudo apt install libnss3-tools
    certutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n "Burp Suite" -i cacert.pem
  • Перезапустить браузер

Еще дополнительно можно настроить SSL pass-through в случае ошибки SSL

"Незаметный proxy" В случае отсутствия у клиента возможности работать через proxy. На клиенте в host файле меняем ссылку на нужный ресурс. 

Перехват трафика

Перейти во вкладку Proxy->Intercept 

image.png

Proxy используется в режимах выключенного и включенного перехвата. При включенном перехвате пакеты перед отправкой останавливаются и ожидают, в какой инструмент будут направлены. В разделе Raw можно редактировать данные. 

изображение.png

Включить Intercept и открыть браузер

image.png

При включенном Intercept, при обращении к странице выводится запрос, и вариант - пропустить или блокировать. Доступна вкладка http history, где можно увидеть историю запросов и просмотреть запрос и ответ.

По умолчанию перехватываются запросы. Можно перехватывать ответы.

Инструменты. 

Передача в инструмент копирует данные для анализа. Не отправляет данные дальше. 

Repeater - ручной просмотр данных с возможностью редактирования

Intruder - для автоматизированной атаки. Работает по принципу

Repeater

Модификация http запросов

Перед отправкой, запрос можно модифицировать. Во вкладке http history будут запросы. правая кнопка - отправить в repeater позволяет скопировать запрос, модифицировать и отправить его.

Intruder

  • Из истории отправить в него пакет