Burp
Открытые курсы по Burp от разработчиков.
Структура сканера
Процесс прохождения пакета и точки настройки

- Входящий пакет попадает на proxy.
- Происходит проверка совпадения со Scopes.
- В случае совпадения отправляется в инструменты. Иначе отправляется обратно в Proxy.
- Производится обработка, модификация пакета, далее отправляется обратно в Proxy
- Пакет отправляется на выход в соответствии с правилами
Настройки
Проект Настройки бывают пользователя и проекта. Проект = данные + настройки. В Community Edition можно сохранить только настройки, данные придется получать каждый раз. Для каждого блока можно сохранить / загрузить настройки отдельно.
Scopes
Site map. Агрегация данных о структуре сайта. Раздел Display - расширенные инструменты фильтрации отображения, есть регулярки. Можно подсветить нужные запросы (ПКМ - highlight) и/или добавить комментарии, затем по ним отфильтровать. После применения Scopes, исключенные пакеты отображаются в сером цвете.
В Pro версии можно найти отличия между двумя Site Map.
Scope. Ограничение области действия (домен, папка, файлы). Файл в терминах Burp - например для запроса http://one.ru/two/index.php будет index.php. Вариант настройки - запустить браузер и перейти в нем на нужный сайт. Все посещенные сайты в пределах текущей сессии отображаются в разделе Target-Site map
ПКМ-Add to scope По умолчанию для нового проекта все посещенные страницы попадают в историю и другие инструменты. После добавления в scope будет задан вопрос - сохранять ли запросы вне scope. Можно включить обратно.
Есть обычный и расширенный режимы настройки scope. В обычном настраивается только префикс, в расширенном можно ограничить протокол и использовать регулярные выражения для определения сайта, порта, файла.
Страница попадает/исключается при полном совпадении условий.
Можем загрузить список из текстового файла без указания протокола, например в виде
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
Включить Intercept и открыть браузер
При включенном Intercept, при обращении к странице выводится запрос, и вариант - пропустить или блокировать. Доступна вкладка http history, где можно увидеть историю запросов и просмотреть запрос и ответ.
Модификация http запросов
Перед отправкой, запрос можно модифицировать. Во вкладке http history будут запросы. правая кнопка - отправить в repeater позволяет скопировать запрос, модифицировать и отправить его.




