вторник, 20 ноября 2012 г.

Nmap

Nmap

Сравнительное быстрое (благодаря ключам -nF)  сканирование локальной сети с маской 255.255.255.0:

nmap -nF 192.168.0.0/24 


Сканирование сети  

Основные опции сканирования начинаются с -s.
По-умолчанию nmap практикует скрытое сканирование (-sS) сети, не создавая соединений до конца: nmap  <маска подсети>.
Например:
nmap 192.168.0.1-254


Пинг-сканирование (-sP), в этом режиме порты не сканируются, что, конечно, заметно увеличивает скорость работы:

  
При этом сканировании отправляеться ICMP эхо-запрос, такой же как это делает утилита ping.
Однако пинг сканирование может привети и к ложноотрицательному срабатыванию, когда активнй, хост настроен не отвечать на ICMP эхо-запросы. Здесь логично использовать ключ -Pn,  считаz все хосты активными.

Два следующих ключа, также призванны сократить время сканирования: -n не производить разрешение DNS имен. Преобразование DNS может быть медленным;
-F быстрое сканирование, ограничивает число сканируемых портов с 1000 до 100;
-sS TCP SYN сканирование или т.н. полуоткрытое сканирование ибо оно не устанавливает полных соединений [wiki:TCP], посылая только запросы на открытие и не производя больше никаких операций. В отличии от -sT. используется по-умолчанию;
-sA TCP ACK сканирование [wiki:TCP], позволяет определить, фильтруются ли порты;
-sU сканирование UDP портов.

маска подсети 

Следующие три формата записи идентичны:
192.168.1.0/24
192.168.1.0-255
192.168.1.*
Если адресов немного, то их можно перечислить: 192.168.1.1,2,3,4

сканирование хоста

-sV определение сервисов;
-p порт1, порт2, ... - сканирование заданного порта или их писка
-p- сканирование всех портов;
-O определение операционной системы [os detection].
Если не удаётся точно определить ОС можно просмотреть список вероятных версий операционных использую ключ --osscan-guess:
Aggressive OS guesses: Linux 3.5 (99%), Cisco SRP 527 WAP (Linux 2.6) (99%), Linux 2.6.9 - 2.6.30 (97%), Tomato 1.28 (Linux 2.6.22) (97%), DD-WRT v24-sp2 (Linux 2.6.24) (97%), Linux 2.6.18 - 2.6.32 (96%), Linux 2.6.9 - 2.6.19 (96%), Belkin N600 DB WAP (96%), Ubiquiti AirMax NanoStation WAP (Linux 2.6) (95%), Linux 2.6.15 (likely TP-Link WAP) (95%)
-A позволяет использовать расширенные возможности программы по детектированию ОС (-O), определению версии (-sV) и др.

Настройки времени и производительности
-T - устанавливает шаблон настроек управления временем:
0 \ paranoid(параноидальный) | 1 \ sneaky(хитрый)| 2 \ polite(вежливый)| 3 \ normal(обычный)| 4 \ aggressive(агрессивный)| 5 \ insane(безумный).
По умолчанию используется режим T3, в пароноидельном режиме nmap сканирует по одному порту совершая один запрос раз в 5 минут. Такие настройки не создают заметного трафика в сети, но это сильно замедляет сканирование. С настройками T1 и T2 запросы отправляются с интервалом в 15 и 0.4 секунды соответственно. Если сеть имеет высокую пропускную способность то использование режимов T4 и T5 вполне опраадано.

IdleSan (-sI)
Сканирование посредством зомби-хоста: отправить поддельный пакет от чужого имени (зомби-хоста), и проверить пришёл ли ответ на этот зомби-хост сравнив его значение счётчика пакетов с заранее измеренным.
Хороший способ скрыть адрес сканера и возможность избежать фильтрацию пакетов по IP адресам, посылая пакеты от имени доверенного хоста. Однако, трафик на последнем должен быть довольно маленьким или отсутствовать, дабы корректно отслеживать ответы сканируемой машины.
https://bozza.ru/art-11.html

Примеры


nmap -n -F -A 192.168.56.101. example

Шесть состояний портов распознаваемых Nmap [подробнее]

открыт (open) Приложение принимает запросы на TCP соединение или UDP пакеты на этот порт. 
закрыт (closed) Закрытый порт доступен (он принимает и отвечает на запросы Nmap), но не используется каким-либо приложение.
фильтруется (filtered) Nmap не может определить, открыт ли порт, т.к. фильтрация пакетов не позволяет достичь запросам Nmap этого порта. 
не фильтруется (unfiltered) Это состояние означает, что порт доступен, но Nmap не может определить открыт он или закрыт. 
открыт|фильтруется (open|filtered) Nmap характеризует порт таким состоянием, когда не может определить открыт порт или фильтруется. 
закрыт|фильтруется (closed|filtered) Это состояние используется, когда Nmap не может определить закрыт порт или фильтруется. Используется только при сканировании IP ID idle типа.

Сохранение результатов сканирования [подробнее]

основные опции вывода начинается с -o
Сохранение результатов сканирования в XML и копирование стандартного вывода в файл.
-oX myscan.xml -oN myscan.nmap
-oA <базовое_имя_файла> использовать все (gmap, xml, normal) форматы вывода. 
Формат вывода gmap является своеобразной альтернативой выводу в XML и проигрывает последнему по мощности.
--webxml загружает таблицу стилей с Nmap.Org чтобы создать XML файл отображаемый как HTML
-v увеличивает уровень вербальности (количество выводимой информации), например показывает приблизительное время завершения работы. Ещё увеличить число подробностей можно задав этот параметр дважды.

Алсо 
В Mtasploit Framework есть db_nmap, который взаимодействует со встроенной в MSF БД, записывая обнаруженные хосты и сервисы соответственно в таблицы hosts и services.
Кроме того можно используя команду db_import report_file загрузить отчёт nmap'а в формате XML в БД MSF [link].

Поддельные адреса сканераподробнее
-D <ip1>,[ipN] - маскирует реальный адрес сканера, среди нескольких поддельных. В примере, адрес сканера - 192.168.56.1, адрес-приманка - 192.168.56.100. Вывод снифера показывает, что сканирование происходит с этих двух адресов, однако сканер находится только на первом.
nmap -p 23 192.168.56.101 -D 192.168.56.100
--randomize-hosts сканирование заданного диапазона хостов в произвольном порядке.
Порядок сканирования портов по-умолчанию в nmap случайный, за исключением некоторых популярных портов, которые сканер проверяет в первую очередь. Ключ -r включает упорядоченное сканирование.

Подделка mac адреса
--spoof-mac <0 (случайный), mac (001122334455) или производитель (Apple, Cisco)>

***
Сканирование через Tor
Применяем proxychains для перенаправления трафика через сеть Tor.
Проследим, чтобы в разделе ProxyList конфигурационного файла /etc/proxychains.conf proxychains был указан порт tor'а:
socks4  127.0.0.1 9050
Запустим tor и приступим к сканированию.
SYN сканирвание в таких условиях не работает, поэтому для каждого порта подключение выполняться полностью (-sT). Цель не пингуем (-PN) и не производим DNS разрешения (-n) чтобы не создавать трафика идущего мимо Tor. Cканирование довольно медленное, поэтому сканируем только самые популярныйе порты (-F)
proxychains nmap -PN -n -sT -F 45.33.32.156
ProxyChains-3.1 (http://proxychains.sf.net)

Starting Nmap 6.40 ( http://nmap.org ) at 2041-12-01 12:57
|S-chain|-<>-127.0.0.1:9050-<><>-45.33.32.156:1723-<--denied
|S-chain|-<>-127.0.0.1:9050-<><>-45.33.32.156:53-<--denied

...
|S-chain|-<>-127.0.0.1:9050-<><>-45.33.32.156:22-<><>-OK
|S-chain|-<>-127.0.0.1:9050-<><>-45.33.32.156:587-<--denied
|S-chain|-<>-127.0.0.1:9050-<><>-45.33.32.156:113-<--denied
|S-chain|-<>-127.0.0.1:9050-<><>-45.33.32.156:80-<><>-OK

...
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.60s latency).
Not shown: 98 closed ports
PORT   STATE SERVICE
22/tcp open  ssh
80/tcp open  http

Nmap done: 1 IP address (1 host up) scanned in 102.05 seconds


Pen Testing Through the Tor Network
Anonymous port scanning using proxychains and tor
 
***
Hping - генератор TCP/UDP пакетов, который показывает так же подробную информацию и о полученных данных. Последняя версия - hping3. описание.
***
EtherApe - инструмент для мониторинга трафика, с помощью которого можно наглягдно отследить интенсивность трафика между узлами, к примеру наблюдая за сканированием nmap.
EtherApe screenshot

Ссылки

Сводка опций
Документация на официальном сайте
Описание программы и опций
nmap wikibook
nmap. некоторые примеры 
10 полезных возможностей nmap 
Алсо
Сбор информации и сканирование 

Комментариев нет:

Отправить комментарий