May 15, 2022

Перенаправление трафика Burp Suite через SOCKS-прокси

В сегодняшней статье продолжим изучать этот инструмент и рассмотрим работу Burp Suite с Proxy. Я покажу, как перенаправить трафик Burp Suite через SOCKS-прокси.

Во время внутреннего пентеста от вас, как от пентестера может потребоваться протестировать внутренние веб-приложения. В такой ситуации, для захвата трафика HTTP/WS, нужен Burp Suite.

Перенаправление трафика Burp Suite через SOCKS-прокси

SOCKS-proxy — это просто сетевой протокол, облегчающий связь между клиентом и целевым сервером. Когда мы настраиваем прокси SSH SOCKS, машина, к которой мы подключаемся по SSH, становится посредником между нами и целевым сервером. По умолчанию протокол SOCKS не является безопасным, поэтому прокси SSH SOCKS также обеспечивает безопасную зашифрованную связь.

Настройки SSH SOCKS-прокси

Настройка SSH SOCKS-прокси довольно проста, поскольку для этого требуется только указать только дополнительный аргумент для команды SSH -D. Например:

ssh -D 7777 -N -C -q user@client-jumpbox  

Команда создаст SOCKS-прокси на порту 7777.

  • -N означает, что мы не будем взаимодействовать с этим подключением через стандартный ввод.
  • -q указывает SSH не выводить ошибки на консоль.
  • -C указывает SSH сжимать данные перед их отправкой по сети.

Теперь для перенаправления трафика через SOCKS-proxy можно заюзать что-то типа ProxyChains, добавив следующую запись в раздел ProxyList файла /etc/proxychains4.conf:

socks5 127.0.0.1 7777

Например, чтобы перенаправить трафик через наш SOCKS-прокси с помощью ProxyChains, добавьте к любой команде префикс proxychains ( -q для игнорирования ошибок):

proxychains -q curl -q ipinfo.me; echo

Настройка Burp Suite для использования SOCKS-прокси

Настроить Burp для использования SSH SOCKS-прокси, который мы создали в предыдущей главе, довольно легко . Необходимо на вкладе Project Options (Параметры проекта) ввести IP-адрес и порт, на котором прослушивается этот SOCKS-прокси. Для этого выполните следующие шаги:

Шаг 1: Перейдите на вкладку Project Options (Параметры проекта).

Шаг 2: Посетите раздел SOCKS Proxy и отмеьте опцию Override user options (Переопределить параметры пользователя):

Шаг 3: Выберите параметры Use SOCKS proxy (Использовать SOCKS-proxy). Введите IP-адрес машины, на которой запущен SOCKS-прокси. В этом случае прокси работает на локальном хосте, поэтому введите 127.1.

Также введите номер порта, который прослушивает SOCKS-proxy, и выберите параметр Do DNS lookups over SOCKS proxy (Выполнять поиск DNS через прокси SOCKS).

Теперь Burp настроен на пересылку всего трафика через наш SOCKS-прокси.

Чтобы проверить перенаправление трафика через наш прокси, перехватите и перенаправьте запрос на https://whatismyipaddress.com/. Затем отключите SOCKS-прокси в Burp и повторно отправьте захваченный запрос на вкладке Repeater. Вы заметите, что IP-адрес изменился. Например, когда я отключаю опцию SOCKS-proxy, мой IP-адрес начинается с 73:

И как только я включаю SOCKS-proxy, он меняется на IP-адрес SSH-сервера, который начинается с 34:

На этом все. Теперь вы можете отправлять запросы с помощью Burp во внутреннее веб-приложение во время пентеста.