Мы уже рассказывали про автоматизацию атак в Burp Suite. Очень рекомендую прочитать статью. В сегодняшней статье продолжим изучать этот инструмент и рассмотрим работу 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. Например:
1 |
ssh -D 7777 -N -C -q user@client-jumpbox |
Команда создаст SOCKS-прокси на порту 7777.
- -N означает, что мы не будем взаимодействовать с этим подключением через стандартный ввод.
- -q указывает SSH не выводить ошибки на консоль.
- -C указывает SSH сжимать данные перед их отправкой по сети.
Теперь для перенаправления трафика через SOCKS-proxy можно заюзать что-то типа ProxyChains, добавив следующую запись в раздел ProxyList файла /etc/proxychains4.conf:
1 |
socks5 127.0.0.1 7777 |
Например, чтобы перенаправить трафик через наш SOCKS-прокси с помощью ProxyChains, добавьте к любой команде префикс proxychains ( -q для игнорирования ошибок):
1 |
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 во внутреннее веб-приложение во время пентеста. В добавок, рекомендую ознакомиться с лучшими расширениями Burp Suite.
Полезные ссылки: