Анонимное Сканирование Портов: Nmap + Tor + ProxyChains
Life-Hack [Жизнь-Взлом]/ХакингВ этом посте я расскажу как сохранить анонимность при сканировании портов Nmap-ом (программой для исследования сети и аудита безопасности).
Я покажу как осуществлять анонимное сканирование портов через сеть Tor с помощью утилиты ProxyChains.
А также я покажу как обходить блокирование выходных нод Tor-а сканируемым хостом.
Установка Tor + Nmap + ProxyChains
Для осуществления анонимного сканирования портов нам необходимо установить следующие программы:

Tor
Установите Tor клиент из стандартных репозиториев:
$ sudo apt-get install tor
Nmap
Установите Nmap:
$ sudo apt-get install nmap
ProxyChains
Установите ProxyChains:
$ sudo apt-get install proxychains
ProxyChains по умолчанию уже настроен на работу с Tor.
В этом можно убедиться заглянув в /etc/proxychains.conf
.
Последние строки конфига должны выглядеть следующим образом:
[ProxyList] # add proxy here ... # meanwile # defaults set to "tor" socks4 127.0.0.1 9050
Анонимное Сканирование Портов Через Tor
Выполните следующую команду для анонимного сканирования Nmap-ом через cеть Tor:
$ proxychains nmap -sT -PN -n -sV -p 80,443,21,22 217.xx.xx.xx ProxyChains-3.1 (http://proxychains.sf.net) Starting Nmap 6.00 ( http://nmap.org ) at 2014-03-24 17:34 EET |S-chain|-<>-127.0.0.1:9050-<><>-217.xx.xx.xx:443-<><>-OK |S-chain|-<>-127.0.0.1:9050-<><>-217.xx.xx.xx:21-<><>-OK |S-chain|-<>-127.0.0.1:9050-<><>-217.xx.xx.xx:80-<><>-OK |S-chain|-<>-127.0.0.1:9050-<><>-217.xx.xx.xx:22-<--denied Nmap scan report for 217.xx.xx.xx Host is up (0.14s latency). PORT STATE SERVICE VERSION 21/tcp open ftp Pure-FTPd 22/tcp closed ssh 80/tcp open http Apache httpd 2.2.26 ((CentOS)) 443/tcp open ssl/http Apache httpd 2.2.26 ((CentOS))
В логах сканирования мы можем увидеть ‘цепочку’, которая идет от Tor-прокси (127.0.0.1:9050) к сканируемому хосту (217.xx.xx.xx).
Nmap через Tor: Обходим Блокировку Нод
Мы можем столкнуться с ситуацией когда сканирование не удается из-за того, что выходные ноды Tor-а попадают под блокировку (банятся сканируемым хостом).
Выходом из этой ситуации может быть добавление в ‘цепочку’ обыкновенного публичного прокси-сервера.
Это делается путем редактирования /etc/proxychains.conf
и добавления новой записи в конце [ProxyList] (также убедитесь что опция random_chain отключена).
[ProxyList] # add proxy here ... # meanwile # defaults set to "tor" socks4 127.0.0.1 9050 socks4 115.71.237.212 1080
Новая ‘цепочка’ идет через Tor-прокси (127.0.0.1:9050) к указанному нами публичному прокси-серверу (115.71.237.212:1080), а затем к сканируемому хосту (217.xx.xx.xx).
$ proxychains nmap -sT -PN -n -sV -p 21 217.xx.xx.xx ProxyChains-3.1 (http://proxychains.sf.net) Starting Nmap 6.00 ( http://nmap.org ) at 2014-03-25 11:05 EET |S-chain|-<>-127.0.0.1:9050-<>-115.71.237.212:1080-<><>-217.xx.xx.xx:21-<><>-OK |S-chain|-<>-127.0.0.1:9050-<>-115.71.237.212:1080-<><>-217.xx.xx.xx:21-<><>-OK Nmap scan report for 217.xx.xx.xx Host is up (1.2s latency). PORT STATE SERVICE VERSION 21/tcp open ftp Pure-FTPd
В примерах выше, я запускаю Nmap со следующими опциями:

Сканирование через Tor очень медленное. Поэтому, в примерах выше, я сканировал только определенные порты.
Списки Бесплатных Публичных Прокси-Серверов
Даже если Вы используете прокси, все Ваши DNS запроси все равно направляются на DNS сервера Вашего Интернет-Провайдера.
Во избежание утечек через DNS, используйте команду tor-resolve, для преобразования имени хоста в IP-адрес, через сеть Tor:
$ tor-resolve google.com 173.194.34.174