Приветствую, Codeby.net! Продолжаем разбираться в Burp Suite, эта статья посвящена настройка проекта, да, не атакам и взломам, а именно настройкам. Нужно пройти эту не очень захватывающую часть, чтобы свободно ориентироваться в инструменте, с которым вам, возможно, придётся часто работать.
Моё мнение, что свой рабочий арсенал, нужно знать досконально, итак, приступим.
В прошлых сериях:
Project Options
Параметры проекта позволяют тестировщику сохранять или устанавливать конфигурации, специфичные для проекта или целевой области. На вкладке «Project Options» доступно несколько вложенных вкладок, в том числе «Connections», «HTTP», «SSL», «Sessions» и «Misc». Многие из этих опций необходимы для тестеров на проникновение при оценке конкретных целей, поэтому мы их рассматриваем.
Connections – работает с аутентификацией на хостах, прокси-серверами, прокси-сервером SOCKS, тайм-аутами, разрешением имён хостов и запросами вне области.
HTTP - Эта вкладка содержит настройки для управления тем, как Burp обрабатывает HTTP-перенаправления, потоковые ответы и статус 100 ответов.
Поскольку перехватывающие прокси-серверы используют модель хранения и пересылки, они могут сломать эти приложения: прокси-сервер бесконечно ждет завершения потокового ответа, и ни один из них никогда не пересылается клиенту.
SSL - Опции находящиеся в этом разделе, могут быть определены как для Проекта, так и для Пользователя, если это понадобилось сделать позже.
Ниже представлена панель настроек SSL шифрования:
Sessions - Эта вкладка содержит настройки для правил обработки сеанса, файла cookie и макросов. Сканер Burp автоматически обрабатывает сеансы во время сканирования и аудита на основе сканирования. Правила обработки сеансов не будут применяться к запросам, сделанным при сканированиях.
Burp отслеживает ответы, полученные настроенными инструментами, и обновляет cookie с помощью новых установленных файлов cookie. В случае с Proxy входящие запросы от браузера также проверяются.
Это полезно, когда приложение ранее установило постоянный файл cookie, который присутствует в вашем браузере и который необходим для правильной обработки вашего сеанса.
Misc - Эта вкладка содержит настройки для запланированных задач, сервера Burp Collaborator и ведения журнала.
User Options
Пользовательские опции позволяют создавать конфигурации при запуске Burp Suite.
Включают в себя – «Connections», «SSL», «Display», «Misc».
Connections - ничем не отличается, от Project Options. Начнём с SSL.
SSL – Опции находящиеся в этом разделе, могут быть определены как для Проекта, так и для Пользователя, если это понадобилось сделать позже.
Misc - Эта вкладка содержит настройки для горячих клавиш, автоматического резервного копирования проекта, перехвата прокси, API REST, ведения журнала истории прокси, размещения временных файлов и отзывов о производительности.
Proxy Interception: опция управления перехватом запросов при старте Burp.
На этом, не самая весёлая часть цикла, к счастью закончилась.
Специально для Codeby.net.
Моё мнение, что свой рабочий арсенал, нужно знать досконально, итак, приступим.
В прошлых сериях:
- [0] Burp Suite. Тестирование web-приложений на проникновение
- [1] Burp Suite. Знакомство с основным инструментарием
- [2] Burp Suite. Атаки с помощью Intruder
- [3] Burp Suite. Установление доверия по HTTPS
Project Options
Параметры проекта позволяют тестировщику сохранять или устанавливать конфигурации, специфичные для проекта или целевой области. На вкладке «Project Options» доступно несколько вложенных вкладок, в том числе «Connections», «HTTP», «SSL», «Sessions» и «Misc». Многие из этих опций необходимы для тестеров на проникновение при оценке конкретных целей, поэтому мы их рассматриваем.
Connections – работает с аутентификацией на хостах, прокси-серверами, прокси-сервером SOCKS, тайм-аутами, разрешением имён хостов и запросами вне области.
- Platform Authentication: позволяет создать подключение к хосту, используя сохраненные связки логин/пароль. Позволяет выбирать типы аутентификации и запрашивать учетные данные при ошибке.
- Upstream proxy servers: используется для того, чтобы параметры проекта, связанные с вышестоящими прокси-серверами, используемыми против целевого приложения, заменили любые параметры прокси, содержащиеся в пользовательских параметрах.
- После установки флажка, чтобы переопределить пользовательские параметры, тестеру предоставляется таблица, включающая параметры прокси-сервера исходящего потока, характерные для этого проекта. При нажатии на кнопку «Добавить» отображается всплывающее окно с названием «Добавить вышестоящее правило прокси».
- Это правило относится к среде целевого приложения. Эта функция очень полезна, если в среде целевого приложения используется веб-прокси, для которого требуется другой набор учетных данных, чем для входа в приложение:
- SOCKS Proxy: используется, в случае, если необходимо, чтобы параметры проекта, связанные с конфигурацией прокси-сервера SOCKS, использовались против целевого приложения для замены любых настроек прокси-сервера SOCKS в пользовательских настройках.
- В некоторых случаях доступ к веб-приложениям осуществляется по дополнительному протоколу, который использует сокет-соединения и аутентификацию, обычно называемых SOCKS:
HTTP - Эта вкладка содержит настройки для управления тем, как Burp обрабатывает HTTP-перенаправления, потоковые ответы и статус 100 ответов.
- Redirections: эти параметры управляют типами перенаправлений, которые Burp будет понимать в ситуациях, когда он настроен на их отслеживание.
- 3xx status code with Location header
- Refresh header
- Meta refresh tag
- JavaScript-driven
- Any status code with Location header
- Streaming Responses: эти настройки позволяют сообщать Burp, какие URL-адреса возвращают «потоковые» ответы, которые не прекращаются. Затем Burp будет обрабатывать эти ответы иначе, чем обычные ответы.
Поскольку перехватывающие прокси-серверы используют модель хранения и пересылки, они могут сломать эти приложения: прокси-сервер бесконечно ждет завершения потокового ответа, и ни один из них никогда не пересылается клиенту.
- Status 100 responses: эти параметры управляют тем, как Burp обрабатывает HTTP-ответы со статусом 100. Эти ответы часто возникают, когда на сервер отправляется запрос POST, и он отправляет промежуточный ответ до того, как тело запроса будет передано.
- Understand 100 Continue responses - если этот параметр установлен, Burp пропустит промежуточный ответ и проанализирует реальные заголовки ответа для получения информации ответа, такой как код состояния и тип содержимого.
- Remove 100 Continue headers - если этот параметр установлен, Burp удалит все промежуточные заголовки из ответа сервера, прежде чем он будет передан отдельным инструментам.
SSL - Опции находящиеся в этом разделе, могут быть определены как для Проекта, так и для Пользователя, если это понадобилось сделать позже.
- SSL Negotiations: когда Burp связывается с целевым приложением через SSL, эта опция предоставляет возможность использовать предварительно сконфигурированное шифрование SSL или указать другие.
Ниже представлена панель настроек SSL шифрования:
- Client SSL Certificates: эти параметры позволяют настраивать клиентские SSL-сертификаты, которые Burp будет использовать, когда целевой хост запрашивает их. Вы можете настроить несколько сертификатов и указать хосты, для которых должен использоваться каждый сертификат. Когда хост запрашивает SSL-сертификат клиента, Burp будет использовать первый сертификат в списке, конфигурация хоста которого совпадает с именем хоста, с которым осуществляется связь.
- Server SSL certificates: Эта информационная панель содержит сведения обо всех сертификатах X509, полученных от веб-серверов. Дважды щелкните элемент в таблице, чтобы отобразить полную информацию о сертификате.
Sessions - Эта вкладка содержит настройки для правил обработки сеанса, файла cookie и макросов. Сканер Burp автоматически обрабатывает сеансы во время сканирования и аудита на основе сканирования. Правила обработки сеансов не будут применяться к запросам, сделанным при сканированиях.
- Session handling rules: Burp позволяет вам определить список правил обработки сеансов, предоставляя вам контроль над тем, как Burp взаимодействует с механизмом обработки сеансов приложения и связанными функциями.
- Cookie Jar: тут хранятся все файлы cookie, которые вам удалось перехватить и сохранить.
Burp отслеживает ответы, полученные настроенными инструментами, и обновляет cookie с помощью новых установленных файлов cookie. В случае с Proxy входящие запросы от браузера также проверяются.
Это полезно, когда приложение ранее установило постоянный файл cookie, который присутствует в вашем браузере и который необходим для правильной обработки вашего сеанса.
- Macros: это предопределенная последовательность одного или нескольких запросов. Вы можете использовать макросы в правилах обработки сеансов для выполнения различных задач.
- Извлечение страницы приложения (например, домашней страницы пользователя), чтобы проверить, что текущий сеанс все еще действителен.
- Выполнение входа в систему для получения нового действительного сеанса.
- Получение токена или одноразового номера для использования в качестве параметра в другом запросе.
- При сканировании или фаззинге запроса в многоэтапном процессе, выполняя необходимые предыдущие запросы, переводите приложение в состояние, в котором целевой запрос будет принят.
- В многоэтапном процессе после запроса «атака», завершив оставшиеся этапы процесса, подтвердить выполненное действие или получить результат или сообщение об ошибке по завершении этого процесса.
Misc - Эта вкладка содержит настройки для запланированных задач, сервера Burp Collaborator и ведения журнала.
- Scheduled Tasks: вы можете использовать планировщик задач для автоматического запуска и остановки определенных задач в определенное время и через определенные промежутки времени.
- Burp Collaborator: это сетевой сервис, который Burp Suite использует для обнаружения множества видов уязвимостей.
- Некоторые уязвимости на основе внедрения могут быть обнаружены с использованием полезных нагрузок, которые инициируют взаимодействие с внешней системой при успешном внедрении.
- Уязвимости в службах, иногда можно обнаружить, отправив полезные данные, нацеленные на эти службы, в целевое приложение и проанализировав детали итоговых взаимодействий с экземпляром этой службы.
- Некоторые уязвимости возникают, когда приложение можно заставить извлекать контент из внешней системы и каким-то образом обрабатывать его. Например, приложение может извлечь содержимое предоставленного URL-адреса и включить его в свой собственный ответ.
- Logging: Эти настройки управляют протоколированием HTTP-запросов и ответов. Ведение журнала может быть настроено для каждого инструмента или для всего трафика Burp.
User Options
Пользовательские опции позволяют создавать конфигурации при запуске Burp Suite.
Включают в себя – «Connections», «SSL», «Display», «Misc».
Connections - ничем не отличается, от Project Options. Начнём с SSL.
SSL – Опции находящиеся в этом разделе, могут быть определены как для Проекта, так и для Пользователя, если это понадобилось сделать позже.
- Java SSL Options: эти параметры можно использовать для включения определенных функций SSL, которые могут потребоваться для успешного подключения к некоторым серверам.
- Enable algorithms blocked by Java security policy - Начиная с Java 7, политика безопасности Java может использоваться для блокировки определенных устаревших алгоритмов от использования при согласовании SSL, и некоторые из них по умолчанию блокируются (например, MD2). Многие действующие веб-серверы имеют сертификаты SSL, которые используют эти устаревшие алгоритмы, и невозможно подключиться к этим серверам с помощью политики безопасности Java по умолчанию. Включение этой опции позволяет Burp использовать устаревшие алгоритмы при подключении к уязвимым серверам. Изменения этого параметра вступают в силу после перезапуска Burp.
- Disable Java SNI extension - Начиная с Java 7, расширение индикации имени сервера (SNI) SSL реализовано и включено по умолчанию. Некоторые неправильно настроенные веб-серверы с включенным SNI отправляют предупреждение «Нераспознанное имя» в рукопожатии SSL. Хотя браузеры игнорируют это предупреждение, реализация Java этого не делает и не может подключиться. Вы можете использовать эту опцию, чтобы отключить расширение Java SNI и подключиться к уязвимым серверам. Изменения этого параметра вступают в силу после перезапуска Burp.
- Client SSL Certificate: описан в Project options.
- User Interface: предоставляет возможность изменять шрифт и размер интерфейса по умолчанию.
- HTTP Message Display: позволяет менять вид всех HTTP-сообщений.
- Character Sets: Позволяет менять наборы символов.
- HTML Rendering: управляет отображением HTML-страниц на вкладке Render, доступной в ответе HTTP:
Misc - Эта вкладка содержит настройки для горячих клавиш, автоматического резервного копирования проекта, перехвата прокси, API REST, ведения журнала истории прокси, размещения временных файлов и отзывов о производительности.
- Hotkeys: Горячие клавиши вместо команд.
- Automatic Project Backup [disk projects only]: позволяет определить частоту создания резервных копий файлов проекта. По умолчанию при использовании Burp Professional резервное копирование выполняется каждые 30 минут.
- Temporary Files Location: предоставляет возможность изменить место, где хранятся временные файлы во время работы Burp.
- REST API: может использоваться другими инструментами для интеграции с Burp Suite.
- URL, по которому работает служба. Вы можете выбрать номер порта и интерфейс для привязки. Вы не должны привязываться к интерфейсам без обратной связи при подключении к ненадежным сетям.
- Работает ли служба в данный момент.
- Разрешить ли доступ без ключа API. Этот вариант не рекомендуется. Это означает, что любой, имеющий сетевой доступ к конечной точке службы, может запускать действия внутри Burp и получать доступ к его данным. Это включает запросы CSRF от ненадежных веб-сайтов, которые вы просматриваете на том же компьютере, что и Burp, поэтому ключи API всегда должны использоваться, даже когда служба прослушивает только интерфейс обратной связи.
- Ключи API для использования клиентами. Вы можете создавать отдельные ключи API для разных целей и выборочно включать или отключать их. Ключи API - это секреты, с которыми нужно обращаться осторожно. Обратите внимание, что вы можете получить значение ключа API только во время его создания.
Proxy Interception: опция управления перехватом запросов при старте Burp.
- Proxy History Logging: этот параметр определяет, будет ли добавление элементов в целевую область автоматически устанавливать параметр «Прокси-сервер» для прекращения отправки элементов вне области действия в историю, или текущие задачи.
- Performance Feedback: предоставляет анонимные данные для PortSwigger относительно производительности.
На этом, не самая весёлая часть цикла, к счастью закончилась.
Специально для Codeby.net.