Proxychains – это инструмент, позволяющий направлять сетевой трафик через ряд прокси-серверов. Это может быть полезно по разным причинам, например, для сокрытия вашего истинного IP-адреса или доступа к внутренним ресурсам из внешней сети. В этом сообщении блога мы обсудим различные параметры конфигурации, доступные в прокси-цепочках, и то, как пентестер может использовать их, чтобы скрыть свой настоящий IP-адрес и получить доступ к внутренним ресурсам.

Одна из первых вещей, которую следует учитывать при настройке proxychains, — это тип используемого прокси-сервера. Proxychains поддерживает несколько типов прокси-серверов, включая SOCKS4, SOCKS5 и HTTP. Каждый тип прокси-сервера имеет свои преимущества и недостатки, поэтому важно выбрать тот, который лучше всего соответствует вашим потребностям.

SOCKS5 — это широко используемый протокол для проксирования сетевого трафика. Это особенно полезно для приложений, которые изначально не поддерживают прокси-серверы, таких как игровые клиенты или программное обеспечение для одноранговых сетей. SOCKS5 также поддерживает расширенные функции, такие как проксирование UDP и аутентификация, которые могут быть полезны в определенных ситуациях.

Одним из основных преимуществ SOCKS5 является поддержка трафика TCP и UDP. Это делает его идеальным для случаев, когда вам нужно проксировать оба типа трафика, например, игры или VoIP. Кроме того, SOCKS5 поддерживает аутентификацию, что может быть полезно для защиты от несанкционированного использования прокси-сервера.

С другой стороны, прокси-серверы HTTP в основном используются для проксирования веб-трафика. Они особенно полезны для доступа к заблокированным или ограниченным веб-сайтам или для обхода корпоративных брандмауэров. Прокси-серверы HTTP также можно использовать для основных задач, таких как интернет очистка или автоматическое тестирование.

Одним из основных преимуществ прокси-серверов HTTP является то, что они широко поддерживаются веб-браузерами и другими веб-приложениями. Это делает их простыми в использовании и настройке, и многие пользователи часто выбирают их по умолчанию. Кроме того, прокси-серверы HTTP можно использовать в сочетании с другими инструментами, такими как Burp Suite или ZAP, для расширенного тестирования веб-приложений или тестирования на проникновение.

Еще один важный параметр конфигурации — номер порта прокси-сервера. По умолчанию proxychains использует порт 9050 для SOCKS5 и порт 1080 для SOCKS4 и HTTP. Однако при необходимости эти порты можно изменить.

Чтобы указать тип прокси-сервера, вам необходимо отредактировать следующую строку в файле конфигурации:

socks5  127.0.0.1 9050

И измените «socks5» на «socks4» или «http» в зависимости от желаемого типа прокси-сервера.

Кроме того, proxychains позволяет указать в файле конфигурации несколько прокси-серверов, чтобы трафик по очереди маршрутизировался через каждый из них. Чтобы добавить новый прокси-сервер, вам нужно добавить новую строку с IP-адресом прокси-сервера и номером порта в файл конфигурации, например:

http  192.168.1.100 8080

Тихий режим — еще один полезный параметр конфигурации. Если этот параметр включен, прокси-цепочки не будут отображать вывод на консоль, что может быть полезно при запуске инструмента в автоматизированных сценариях или во время теста на проникновение.

Чтобы включить тихий режим, вам нужно добавить следующую строку в файл конфигурации proxychains:

quiet_mode

Файл конфигурации обычно находится по адресу /etc/proxychains.conf или /usr/local/etc/proxychains.conf, в зависимости от вашей системы. Вы также можете указать расположение файла конфигурации с помощью параметра -f при запуске проксичейнов.

После того, как вы настроите файл конфигурации, вы можете SSH подключиться к удаленному серверу с опцией -D, за которой следует порт номер в файле proxychains.conf как таковой:

ssh -D 9050 [email protected]

Теперь, когда вы используете команду, вы просто добавляете proxychains перед обычной командой to для проксирования всего вашего сетевого трафика через удаленный хост. Таким образом, ваша команда выполняется через контекст удаленного сервера. Давайте рассмотрим пример с curl.

Обычная команда curl без моей строки ssh -D:

curl http://ipinfo.io
{
  "ip": "98.233.XX.XXX",
  "hostname": "c-98-233-XX-XXX.hsd1.va.comcast.net",
  "city": "XXXXXX",
  "region": "Maryland",
  "country": "US",
  "loc": "XX.2856,-XX.6899",
  "org": "AS33XXX Comcast Cable Communications, LLC",
  "postal": "XXXXX",
  "timezone": "America/New_York",
  "readme": "https://ipinfo.io/missingauth"
}     

Теперь с моей строкой ssh ​​-D:

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