Как анонимно сканировать?
Вопрос анонимного использования инструментов для тестирования на проникновение очень широк. И даже если вам кажется, что вы всё правильно настроили, для вас может оказаться неприятным сюрпризом, что некоторые программы игнорируют общесистемный настройки прокси. К таким программа относятся Nmap, Masscan, IVRE и другие, которые не используют системные функции для подключений, а задействуют свои собственные низкоуровневые методики.
Поскольку тема достаточно широкая и сложная, мы к ней обязательно вернёмся с подробным анализом и тестами сделанных настроек, а в этой небольшой заметке хочу только показать практические решения по сканированию через Tor в программах Nmap, sqlmap и WPScan. Эти вопросы мне пришлось решать при настройке suIP.biz, поскольку программы достаточно часто используются, думаю, многих заинтересует как сканировать, при этом не выдавая свой IP.
0"
Установка и запуск Tor в Kali Linux и BlackArch
Поскольку для анонимности мы будем использовать Tor, то установим необходимые пакеты, которые нам понадобяться:
В Kali Linux
[SRC]
sudo apt-get install torsocks tor
В самый конец файла /etc/tor/torrc добавьте строки:
AutomapHostsOnResolve 1
DNSPort 53530
TransPort 9040
Запустите и добавьте в автозапуск службу Tor:
sudo systemctl start tor
sudo systemctl enable tor
В BlackArch / Arch Linux:
sudo pacman -S torsocks tor proxychains-ng --needed
В самый конец файла /etc/tor/torrc добавьте строки:
AutomapHostsOnResolve 1
DNSPort 53530
TransPort 9040
Запустите и добавьте в автозапуск службу Tor:
sudo systemctl start tor
sudo systemctl enable tor
[/SRC]
ProxyChains VS ProxyChains-NG (looks like an IPv6 target specification -- you have to use the -6 option)
У ProxyChains есть баг, если вы используете ProxyChains с nmap и попытаетесь в качестве цели задать имя хоста (а не IP адрес), то в результате получите сообщение об ошибке looks like an IPv6 target specification -- you have to use the -6 option.
[SRC]
proxychains nmap -sT -PN -sV -n --open -p 80 mi-al.ru
ProxyChains-3.1 (http://proxychains.sf.net)
Starting Nmap 7.25BETA2 ( https://nmap.org ) at 2016-09-26 15:41 MSK
|DNS-request| mi-al.ru
|S-chain|-<>-127.0.0.1:9050-<><>-4.2.2.2:53-<><>-OK
|DNS-response| mi-al.ru is 185.26.122.50
185.26.122.50/0 looks like an IPv6 target specification -- you have to use the -6 option.
WARNING: No targets were specified, so 0 hosts scanned.
Nmap done: 0 IP addresses (0 hosts up) scanned in 3.17 seconds
[/SRC]
Поскольку proxychains не обновлялся с 2006 года, а в ProxyChains-NG этот баг уже исправили, то предлагаю установить ProxyChains-NG (только для пользователей Kali Linux и производных Debian, в BlackArch / Arch Linux уже всё впорядке – по умолчанию ставиться ProxyChains-NG):
[SRC]
sudo apt-get remove proxychains
git clone https://github.com/rofl0r/proxychains-ng.git
cd proxychains-ng/
./configure --prefix=/usr --sysconfdir=/etc
make
sudo make install
sudo make install-config
[/SRC]
Сканирование Nmap через Tor
Nmap – это одна из тех программ, с которой нужно быть осторожным, если вы хотите сохранить свою анонимность.
Если мы хотим сканировать с Nmap через прокси, то нам обязательно понадобиться опция -sT. Давайте посмотрим в справке об этой опции и заодно узнаем о двух типов сканирования Nmap:
При доступности SYN сканирования, оно, безусловно, будет являться лучшим выбором. У Nmap имеется меньше возможностей контролирования высокоуровнего вызова connect по сравнению с сырыми пакетами, что делает его менее эффективным. Системный вызов завершает соединения по открытым портам, вместо того, чтобы использовать полуоткрытые соединения, как в случае с SYN сканированием. Таким образом на получение той же самой информации потребуется больше времени и пакетов, да к тому же целевые машины скорее всего запишут это соединение в свои логи. То же самое сделает и порядочная IDS, хотя большинство машин не имеют такой системы защиты. Многие службы на вашей Unix системе будут добавлять запись в системный лог (syslog), а также сообщение об ошибке, когда Nmap будет устанавливать и закрывать соединение без отправления данных. Некоторые службы даже аварийно завершают свою работу, когда это происходит, хотя это не является обычной ситуацией. Администратор, который увидит в логах группу записей о попытке установки соединения от одной и той же системы, должен знать, что его машина подверглась такому типу сканирования.
Итак, теперь мы запускаем nmap с опцией -sT, но без sudo, т.е. программе больше не нужны права суперпользователя.
Ещё полезными станут опции:
Наконец, мы подошли к опции --proxies. Интуиция подсказывает использовать её примерно так: --proxies socks4://127.0.0.1:9050. Но на самом деле, эту опции вообще НЕ НАДО использовать. Чтобы понять масштабы её ущербности, давайте обратимся к официальной справке:
Предупреждение: эта функция всё ещё в разработке и имеет ограничения. Она реализована внутри библиотеки nsock и, следовательно, не оказывает эффект на пинг, сканирование портов и фаз сканирования при определении ОС. Только NSE и сканирование версии могут извлечь выгоду из этой опции - поэтому другие функции могут раскрыть ваш истинный адрес. SSL ещё не поддерживаются, а также преобразование DNS на стороне прокси (имена хостов всегда преобразуются в Nmap).
Т.е. кроме как ввести нас в заблуждение, что мы находимся за прокси, эта опция ничего делать не умеет.
Именно для этого мы и устанавливали ProxyChains-NG. Перед каждой командой Nmap нам нужно добавлять proxychains4, тогда сканирование будет производиться через Tor:
[SRC]
proxychains4 nmap -sT -PN -sV --open -n ЦЕЛЬ
[/SRC]
Пример:
[SRC]
proxychains4 nmap -sT -PN -sV --open -n -p 80 mi-al.ru
[proxychains] config file found: /etc/proxychains.conf
[proxychains] preloading /usr/lib/libproxychains4.so
[proxychains] DLL init: proxychains-ng 4.11-git-5-ge527b9e
Starting Nmap 7.25BETA2 ( https://nmap.org ) at 2016-09-26 16:27 MSK
[proxychains] Strict chain ... 127.0.0.1:9050 ... mi-al.ru:80 ... OK
[proxychains] Strict chain ... 127.0.0.1:9050 ... mi-al.ru:80 ... OK
[proxychains] Strict chain ... 127.0.0.1:9050 ... mi-al.ru:80 ... OK
[proxychains] Strict chain ... 127.0.0.1:9050 ... mi-al.ru:80 ... OK
Nmap scan report for mi-al.ru (224.0.0.1)
Host is up (1.5s latency).
PORT STATE SERVICE VERSION
80/tcp open http nginx 1.6.3
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Вопрос анонимного использования инструментов для тестирования на проникновение очень широк. И даже если вам кажется, что вы всё правильно настроили, для вас может оказаться неприятным сюрпризом, что некоторые программы игнорируют общесистемный настройки прокси. К таким программа относятся Nmap, Masscan, IVRE и другие, которые не используют системные функции для подключений, а задействуют свои собственные низкоуровневые методики.
Поскольку тема достаточно широкая и сложная, мы к ней обязательно вернёмся с подробным анализом и тестами сделанных настроек, а в этой небольшой заметке хочу только показать практические решения по сканированию через Tor в программах Nmap, sqlmap и WPScan. Эти вопросы мне пришлось решать при настройке suIP.biz, поскольку программы достаточно часто используются, думаю, многих заинтересует как сканировать, при этом не выдавая свой IP.
0"
Установка и запуск Tor в Kali Linux и BlackArch
Поскольку для анонимности мы будем использовать Tor, то установим необходимые пакеты, которые нам понадобяться:
В Kali Linux
[SRC]
sudo apt-get install torsocks tor
В самый конец файла /etc/tor/torrc добавьте строки:
AutomapHostsOnResolve 1
DNSPort 53530
TransPort 9040
Запустите и добавьте в автозапуск службу Tor:
sudo systemctl start tor
sudo systemctl enable tor
В BlackArch / Arch Linux:
sudo pacman -S torsocks tor proxychains-ng --needed
В самый конец файла /etc/tor/torrc добавьте строки:
AutomapHostsOnResolve 1
DNSPort 53530
TransPort 9040
Запустите и добавьте в автозапуск службу Tor:
sudo systemctl start tor
sudo systemctl enable tor
[/SRC]
ProxyChains VS ProxyChains-NG (looks like an IPv6 target specification -- you have to use the -6 option)
У ProxyChains есть баг, если вы используете ProxyChains с nmap и попытаетесь в качестве цели задать имя хоста (а не IP адрес), то в результате получите сообщение об ошибке looks like an IPv6 target specification -- you have to use the -6 option.
[SRC]
proxychains nmap -sT -PN -sV -n --open -p 80 mi-al.ru
ProxyChains-3.1 (http://proxychains.sf.net)
Starting Nmap 7.25BETA2 ( https://nmap.org ) at 2016-09-26 15:41 MSK
|DNS-request| mi-al.ru
|S-chain|-<>-127.0.0.1:9050-<><>-4.2.2.2:53-<><>-OK
|DNS-response| mi-al.ru is 185.26.122.50
185.26.122.50/0 looks like an IPv6 target specification -- you have to use the -6 option.
WARNING: No targets were specified, so 0 hosts scanned.
Nmap done: 0 IP addresses (0 hosts up) scanned in 3.17 seconds
[/SRC]
Поскольку proxychains не обновлялся с 2006 года, а в ProxyChains-NG этот баг уже исправили, то предлагаю установить ProxyChains-NG (только для пользователей Kali Linux и производных Debian, в BlackArch / Arch Linux уже всё впорядке – по умолчанию ставиться ProxyChains-NG):
[SRC]
sudo apt-get remove proxychains
git clone https://github.com/rofl0r/proxychains-ng.git
cd proxychains-ng/
./configure --prefix=/usr --sysconfdir=/etc
make
sudo make install
sudo make install-config
[/SRC]
Сканирование Nmap через Tor
Nmap – это одна из тех программ, с которой нужно быть осторожным, если вы хотите сохранить свою анонимность.
Если мы хотим сканировать с Nmap через прокси, то нам обязательно понадобиться опция -sT. Давайте посмотрим в справке об этой опции и заодно узнаем о двух типов сканирования Nmap:
- -sT (TCP сканирование с использованием системного вызова connect)
При доступности SYN сканирования, оно, безусловно, будет являться лучшим выбором. У Nmap имеется меньше возможностей контролирования высокоуровнего вызова connect по сравнению с сырыми пакетами, что делает его менее эффективным. Системный вызов завершает соединения по открытым портам, вместо того, чтобы использовать полуоткрытые соединения, как в случае с SYN сканированием. Таким образом на получение той же самой информации потребуется больше времени и пакетов, да к тому же целевые машины скорее всего запишут это соединение в свои логи. То же самое сделает и порядочная IDS, хотя большинство машин не имеют такой системы защиты. Многие службы на вашей Unix системе будут добавлять запись в системный лог (syslog), а также сообщение об ошибке, когда Nmap будет устанавливать и закрывать соединение без отправления данных. Некоторые службы даже аварийно завершают свою работу, когда это происходит, хотя это не является обычной ситуацией. Администратор, который увидит в логах группу записей о попытке установки соединения от одной и той же системы, должен знать, что его машина подверглась такому типу сканирования.
Итак, теперь мы запускаем nmap с опцией -sT, но без sudo, т.е. программе больше не нужны права суперпользователя.
Ещё полезными станут опции:
- -Pn (Не использовать пинг сканирование)
- -sV (Определение версии)
- --open (Показывать только открытые (или возможно открытые) порты)
- -F (Быстрое (ограниченные порты) сканирование).
- -n (Без преобразования DNS)
Наконец, мы подошли к опции --proxies. Интуиция подсказывает использовать её примерно так: --proxies socks4://127.0.0.1:9050. Но на самом деле, эту опции вообще НЕ НАДО использовать. Чтобы понять масштабы её ущербности, давайте обратимся к официальной справке:
Предупреждение: эта функция всё ещё в разработке и имеет ограничения. Она реализована внутри библиотеки nsock и, следовательно, не оказывает эффект на пинг, сканирование портов и фаз сканирования при определении ОС. Только NSE и сканирование версии могут извлечь выгоду из этой опции - поэтому другие функции могут раскрыть ваш истинный адрес. SSL ещё не поддерживаются, а также преобразование DNS на стороне прокси (имена хостов всегда преобразуются в Nmap).
Т.е. кроме как ввести нас в заблуждение, что мы находимся за прокси, эта опция ничего делать не умеет.
Именно для этого мы и устанавливали ProxyChains-NG. Перед каждой командой Nmap нам нужно добавлять proxychains4, тогда сканирование будет производиться через Tor:
[SRC]
proxychains4 nmap -sT -PN -sV --open -n ЦЕЛЬ
[/SRC]
Пример:
[SRC]
proxychains4 nmap -sT -PN -sV --open -n -p 80 mi-al.ru
[proxychains] config file found: /etc/proxychains.conf
[proxychains] preloading /usr/lib/libproxychains4.so
[proxychains] DLL init: proxychains-ng 4.11-git-5-ge527b9e
Starting Nmap 7.25BETA2 ( https://nmap.org ) at 2016-09-26 16:27 MSK
[proxychains] Strict chain ... 127.0.0.1:9050 ... mi-al.ru:80 ... OK
[proxychains] Strict chain ... 127.0.0.1:9050 ... mi-al.ru:80 ... OK
[proxychains] Strict chain ... 127.0.0.1:9050 ... mi-al.ru:80 ... OK
[proxychains] Strict chain ... 127.0.0.1:9050 ... mi-al.ru:80 ... OK
Nmap scan report for mi-al.ru (224.0.0.1)
Host is up (1.5s latency).
PORT STATE SERVICE VERSION
80/tcp open http nginx 1.6.3
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 13.41 seconds
[/SRC]
Как видно, выводиться много информации, которую генерирует ProxyChains-NG. Для подавления вывода этой информации можно использовать следующую конструкцию:
[SRC]
proxychains4 nmap -sT -PN -sV --open -n ЦЕЛЬ 2>/dev/null
[/SRC]
Пример:
[SRC]
proxychains4 nmap -sT -PN -sV --open -n -p 80 mi-al.ru 2>/dev/null
Starting Nmap 7.25BETA2 ( https://nmap.org ) at 2016-09-26 16:28 MSK
Nmap scan report for mi-al.ru (224.0.0.1)
Host is up (1.7s latency).
PORT STATE SERVICE VERSION
80/tcp open http nginx 1.6.3
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 14.35 seconds
[/SRC]
Как мы можем убедиться, мы получаем обычный вывод Nmap:
Теперь переходим к самому главному – тестируем, что действительно используется Tor. На мой взгляд, самой лучшей проверкой была бы настройка пассивного мониторинга на машине, используемой в качестве цели. Но сейчас на это нет времени – к этому вопросу мы обязательно вернёмся позже.
А пока давайте проверим, что отсутствуют пакеты, отправляемые напрямую к целевой машине.
Откройте два консольных окна, в первом введите:
[SRC]
sudo tcpdump -w scan-without-tor.cap
[/SRC]
Во втором окне запустите сканирование (можете выбрать свою цель):
[SRC]
nmap -sT -PN -sV --open -n -p 80 185.26.122.50
[/SRC]
Когда сканирование закончиться, остановите tcpdump в первом окне.
Теперь снова, запустите в первом окне:
[SRC]
sudo tcpdump -w scan-with-tor.cap
[/SRC]
А во втором:
[SRC]
proxychains4 nmap -sT -PN -sV --open -n -p 80 185.26.122.50
[/SRC]
После окончания сканирования, остановите tcpdump.
Теперь ищем в двух сохранённых файлах:
[SRC]
sudo tcpdump -nS -c 10 -r scan-without-tor.cap "host 185.26.122.50"
sudo tcpdump -nS -c 10 -r scan-with-tor.cap "host 185.26.122.50"
[/SRC]
Как можно убедиться, во втором случае наш IP адрес не раскрывается:
[SRC]
sudo tcpdump -nS -c 10 -r scan-without-tor.cap "host 185.26.122.50"
reading from file scan-without-tor.cap, link-type EN10MB (Ethernet)
16:37:43.778879 IP 192.168.1.49.41770 > 185.26.122.50.80: Flags, seq 4089865578, win 29200, options [mss 1460,sackOK,TS val 2169689 ecr 0,nop,wscale 7], length 0
16:37:43.820027 IP 185.26.122.50.80 > 192.168.1.49.41770: Flags [S.], seq 1212857828, ack 4089865579, win 4380, options [mss 1460,nop,nop,TS val 1723278492 ecr 2169689,sackOK,eol], length 0
16:37:43.820061 IP 192.168.1.49.41770 > 185.26.122.50.80: Flags [.], ack 1212857829, win 29200, options [nop,nop,TS val 2169699 ecr 1723278492], length 0
16:37:43.820104 IP 192.168.1.49.41770 > 185.26.122.50.80: Flags [R.], seq 4089865579, ack 1212857829, win 29200, options [nop,nop,TS val 2169699 ecr 1723278492], length 0
16:37:43.902298 IP 192.168.1.49.41772 > 185.26.122.50.80: Flags, seq 849910226, win 29200, options [mss 1460,sackOK,TS val 2169720 ecr 0,nop,wscale 7], length 0
16:37:43.934850 IP 185.26.122.50.80 > 192.168.1.49.41772: Flags [S.], seq 768072989, ack 849910227, win 4380, options [mss 1460,nop,nop,TS val 1723278615 ecr 2169720,sackOK,eol], length 0
16:37:43.934880 IP 192.168.1.49.41772 > 185.26.122.50.80: Flags [.], ack 768072990, win 29200, options [nop,nop,TS val 2169728 ecr 1723278615], length 0
16:37:49.937544 IP 192.168.1.49.41772 > 185.26.122.50.80: Flags [P.], seq 849910227:849910245, ack 768072990, win 29200, options [nop,nop,TS val 2171229 ecr 1723278615], length 18: HTTP: GET / HTTP/1.0
16:37:49.955484 IP 185.26.122.50.80 > 192.168.1.49.41772: Flags [.], ack 849910245, win 4398, options [nop,nop,TS val 1723284651 ecr 2171229], length 0
16:37:50.593882 IP 185.26.122.50.80 > 192.168.1.49.41772: Flags [P.], seq 768072990:768074438, ack 849910245, win 4398, options [nop,nop,TS val 1723285286 ecr 2171229], length 1448: HTTP: HTTP/1.1 200 OK
sudo tcpdump -nS -c 10 -r scan-with-tor.cap "host 185.26.122.50"
reading from file scan-with-tor.cap, link-type EN10MB (Ethernet)
[/SRC]
nmap: netutil.cc:1348: int collect_dnet_interfaces(const intf_entry*, void*): Assertion `rc == 0' failed.
Если вы попытались использовать proxychains с nmap, например, для определения версии ОС:
[SRC]
proxychains4 nmap -sT -PN -sV -v -A -T4 suip.biz 2>/dev/null
[/SRC]
И у вас возникает ошибка nmap: netutil.cc:1348: int collect_dnet_interfaces(const intf_entry*, void*): Assertion `rc == 0' failed.
То у вас на выбор две опции:
Найдите там строку:
[SRC]
proxy_dns
[/SRC]
И закомментируйте её, чтобы получилось:
[SRC]
#proxy_
[/SRC]
Сканирование sqlmap через Tor
Здесь всё намного проще. Нам нужно добавить к вашей команде сканирования --proxy socks5://127.0.0.1:9050. Т.е. команда приобретает вид (можно также использовать все опции, какие вы обычно используете):
[SRC]
sqlmap -u ЦЕЛЬ --proxy socks5://127.0.0.1:9050
[/SRC]
Например:
[SRC]
sqlmap -u "https://mi-al.ru/index.php?page=ready&directory=gp&id=3312.htm" --proxy socks5://127.0.0.1:9050
[/SRC]
Как можно убедиться, заглянув в логи веб-сервера, сканирование осуществляется с адреса 91.219.236.218, хотя мой реальный адрес другой (узнать свой IP вы можете здесь
Сканирование WPScan через Tor
Здесь опять всё достаточно просто, прибавьте к вашей команде --proxy socks5://127.0.0.1:9050:
[SRC]
wpscan -u ЦЕЛЬ -e p,vt,u --proxy socks5://127.0.0.1:9050
[/SRC]
Также можно воспользоваться опциями --request-timeout 500 --connect-timeout 120, поскольку использование
Пример:
[SRC]
sudo wpscan -u kali.tools -e p,vt,u --proxy socks5://127.0.0.1:9050
[/SRC]
Снова заглянем в логи веб-сервера:
Опять чужой IP 176.126.252.11.
Заключение
Программа ProxyChains-NG является универсальной и вместе с ней можно использовать различные программы. Например, вместо предложенного варианта с опциями --proxy, можно было запускать так:
[SRC]
proxychains4 sqlmap -u ЦЕЛЬ
proxychains4 wpscan -u ЦЕЛЬ -e p,vt,u
[/SRC]
ProxyChains-NG особенно удобен в использовании с программами, которые не имеют опций/функционала для поддержки прокси.
Нужно обязательно тестировать, действительно ли вы скрываете свой IP. Поскольку, как показано на примере Nmap, даже с релевантными опциями программы что-то может пойти не так.
Если говорить не только об анонимности при сканировании, но и анонимности вообще, то это сложная тема, поскольку есть множество способов «проколоться», и мы к этому вопросу обязательно вернёмся в дальнейшем для подробного изучения.
[/SRC]
Как видно, выводиться много информации, которую генерирует ProxyChains-NG. Для подавления вывода этой информации можно использовать следующую конструкцию:
[SRC]
proxychains4 nmap -sT -PN -sV --open -n ЦЕЛЬ 2>/dev/null
[/SRC]
Пример:
[SRC]
proxychains4 nmap -sT -PN -sV --open -n -p 80 mi-al.ru 2>/dev/null
Starting Nmap 7.25BETA2 ( https://nmap.org ) at 2016-09-26 16:28 MSK
Nmap scan report for mi-al.ru (224.0.0.1)
Host is up (1.7s latency).
PORT STATE SERVICE VERSION
80/tcp open http nginx 1.6.3
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 14.35 seconds
[/SRC]
Как мы можем убедиться, мы получаем обычный вывод Nmap:
Теперь переходим к самому главному – тестируем, что действительно используется Tor. На мой взгляд, самой лучшей проверкой была бы настройка пассивного мониторинга на машине, используемой в качестве цели. Но сейчас на это нет времени – к этому вопросу мы обязательно вернёмся позже.
А пока давайте проверим, что отсутствуют пакеты, отправляемые напрямую к целевой машине.
Откройте два консольных окна, в первом введите:
[SRC]
sudo tcpdump -w scan-without-tor.cap
[/SRC]
Во втором окне запустите сканирование (можете выбрать свою цель):
[SRC]
nmap -sT -PN -sV --open -n -p 80 185.26.122.50
[/SRC]
Когда сканирование закончиться, остановите tcpdump в первом окне.
Теперь снова, запустите в первом окне:
[SRC]
sudo tcpdump -w scan-with-tor.cap
[/SRC]
А во втором:
[SRC]
proxychains4 nmap -sT -PN -sV --open -n -p 80 185.26.122.50
[/SRC]
После окончания сканирования, остановите tcpdump.
Теперь ищем в двух сохранённых файлах:
[SRC]
sudo tcpdump -nS -c 10 -r scan-without-tor.cap "host 185.26.122.50"
sudo tcpdump -nS -c 10 -r scan-with-tor.cap "host 185.26.122.50"
[/SRC]
Как можно убедиться, во втором случае наш IP адрес не раскрывается:
[SRC]
sudo tcpdump -nS -c 10 -r scan-without-tor.cap "host 185.26.122.50"
reading from file scan-without-tor.cap, link-type EN10MB (Ethernet)
16:37:43.778879 IP 192.168.1.49.41770 > 185.26.122.50.80: Flags
16:37:43.820027 IP 185.26.122.50.80 > 192.168.1.49.41770: Flags [S.], seq 1212857828, ack 4089865579, win 4380, options [mss 1460,nop,nop,TS val 1723278492 ecr 2169689,sackOK,eol], length 0
16:37:43.820061 IP 192.168.1.49.41770 > 185.26.122.50.80: Flags [.], ack 1212857829, win 29200, options [nop,nop,TS val 2169699 ecr 1723278492], length 0
16:37:43.820104 IP 192.168.1.49.41770 > 185.26.122.50.80: Flags [R.], seq 4089865579, ack 1212857829, win 29200, options [nop,nop,TS val 2169699 ecr 1723278492], length 0
16:37:43.902298 IP 192.168.1.49.41772 > 185.26.122.50.80: Flags
16:37:43.934850 IP 185.26.122.50.80 > 192.168.1.49.41772: Flags [S.], seq 768072989, ack 849910227, win 4380, options [mss 1460,nop,nop,TS val 1723278615 ecr 2169720,sackOK,eol], length 0
16:37:43.934880 IP 192.168.1.49.41772 > 185.26.122.50.80: Flags [.], ack 768072990, win 29200, options [nop,nop,TS val 2169728 ecr 1723278615], length 0
16:37:49.937544 IP 192.168.1.49.41772 > 185.26.122.50.80: Flags [P.], seq 849910227:849910245, ack 768072990, win 29200, options [nop,nop,TS val 2171229 ecr 1723278615], length 18: HTTP: GET / HTTP/1.0
16:37:49.955484 IP 185.26.122.50.80 > 192.168.1.49.41772: Flags [.], ack 849910245, win 4398, options [nop,nop,TS val 1723284651 ecr 2171229], length 0
16:37:50.593882 IP 185.26.122.50.80 > 192.168.1.49.41772: Flags [P.], seq 768072990:768074438, ack 849910245, win 4398, options [nop,nop,TS val 1723285286 ecr 2171229], length 1448: HTTP: HTTP/1.1 200 OK
sudo tcpdump -nS -c 10 -r scan-with-tor.cap "host 185.26.122.50"
reading from file scan-with-tor.cap, link-type EN10MB (Ethernet)
[/SRC]
nmap: netutil.cc:1348: int collect_dnet_interfaces(const intf_entry*, void*): Assertion `rc == 0' failed.
Если вы попытались использовать proxychains с nmap, например, для определения версии ОС:
[SRC]
proxychains4 nmap -sT -PN -sV -v -A -T4 suip.biz 2>/dev/null
[/SRC]
И у вас возникает ошибка nmap: netutil.cc:1348: int collect_dnet_interfaces(const intf_entry*, void*): Assertion `rc == 0' failed.
То у вас на выбор две опции:
- не использовать dns имя, а использовать сырой ipv4 адрес
- или отключить proxy_dns в файле конфигураци
Найдите там строку:
[SRC]
proxy_dns
[/SRC]
И закомментируйте её, чтобы получилось:
[SRC]
#proxy_
[/SRC]
Сканирование sqlmap через Tor
Здесь всё намного проще. Нам нужно добавить к вашей команде сканирования --proxy socks5://127.0.0.1:9050. Т.е. команда приобретает вид (можно также использовать все опции, какие вы обычно используете):
[SRC]
sqlmap -u ЦЕЛЬ --proxy socks5://127.0.0.1:9050
[/SRC]
Например:
[SRC]
sqlmap -u "https://mi-al.ru/index.php?page=ready&directory=gp&id=3312.htm" --proxy socks5://127.0.0.1:9050
[/SRC]
Как можно убедиться, заглянув в логи веб-сервера, сканирование осуществляется с адреса 91.219.236.218, хотя мой реальный адрес другой (узнать свой IP вы можете здесь
Пожалуйста,
Вход
или
Регистрация
для просмотра содержимого URL-адресов!
).Сканирование WPScan через Tor
Здесь опять всё достаточно просто, прибавьте к вашей команде --proxy socks5://127.0.0.1:9050:
[SRC]
wpscan -u ЦЕЛЬ -e p,vt,u --proxy socks5://127.0.0.1:9050
[/SRC]
Также можно воспользоваться опциями --request-timeout 500 --connect-timeout 120, поскольку использование
Пожалуйста,
Вход
или
Регистрация
для просмотра содержимого URL-адресов!
’а вызывает значительные задержки.Пример:
[SRC]
sudo wpscan -u kali.tools -e p,vt,u --proxy socks5://127.0.0.1:9050
[/SRC]
Снова заглянем в логи веб-сервера:
Опять чужой IP 176.126.252.11.
Заключение
Программа ProxyChains-NG является универсальной и вместе с ней можно использовать различные программы. Например, вместо предложенного варианта с опциями --proxy, можно было запускать так:
[SRC]
proxychains4 sqlmap -u ЦЕЛЬ
proxychains4 wpscan -u ЦЕЛЬ -e p,vt,u
[/SRC]
ProxyChains-NG особенно удобен в использовании с программами, которые не имеют опций/функционала для поддержки прокси.
Нужно обязательно тестировать, действительно ли вы скрываете свой IP. Поскольку, как показано на примере Nmap, даже с релевантными опциями программы что-то может пойти не так.
Если говорить не только об анонимности при сканировании, но и анонимности вообще, то это сложная тема, поскольку есть множество способов «проколоться», и мы к этому вопросу обязательно вернёмся в дальнейшем для подробного изучения.