Мой опыт в nmap примеры сканирования сети.
Пробуем на любимой системе FreeBSD.
# cd /usr/ports/security/nmap && make install clean
Если при первом сканировании получаем такую ошибку,
route_dst_generic: Failed to obtain system routes: getsysroutes_dnet: sysroutes_dnet_find_interfaces() failed
Смотрим какие nmap видит сетевые интерфейсы.
# nmap --iflist Starting Nmap 7.31 ( https://nmap.org ) at 2016-12-25 10:21 GMT-3 INTERFACES: NONE FOUND(!) ROUTES: NONE FOUND(!)
Ничего не видит, жуть.
Придётся для таких случаем собрать его с ipv6, засада.
Добавим в Makefiles опцию —disable-ipv6 и после пересоберём его с ней.
# cd /usr/ports/security/nmap
nano Makefile CONFIGURE_ARGS+=--without-localdirs \ --without-zenmap \ --without-ndiff \ --with-libpcre=${LOCALBASE} \ --with-liblua=included \ --without-nmap-update \ --disable-ipv6
# make reinstall clean
Смотрим.
# nmap -V Nmap version 7.31 ( https://nmap.org ) Platform: amd64-portbld-freebsd10.3 Compiled with: liblua-5.3.3 openssl-1.0.2j libpcre-8.39 libpcap-1.8.1 nmap-libdnet-1.12 Compiled without: ipv6 Available nsock engines: kqueue poll select Под сеть сканируем.
# nmap 10.10.10.*
Ищем активные хосты.
# nmap -sn 10.10.10.0/24
Определяем диапазон сканирования.
# nmap 10.10.10.0-160
Сканируем из заранее созданного файла, записи должны разделятся одним или более пробелами, табуляциями или переходами на новую строку.
Содержимое файла:
# cat set.txt 10.10.10.0/24 10.10.10.5,9,18 10.10.10.0-160 10.10.10.* domain.local
# nmap -iL set.txt
Метод скрытного сканирования tcp syn, сканирование полуоткрытыми соединениями.
# nmap -sS 10.10.10.1
Метод сканирования tcp fin
# nmap -sF 10.10.10.1
Метод сканирования tcp null
# nmap -sN 10.10.10.1
Метод сканирования tcp xmas
# nmap -sX 10.10.10.1
Проверяем все tcp порты, ключ -sU определяет все upd порты.
# nmap -sT 10.10.10.1
Определяем порты у проверяемого сервера.
# nmap -sO 10.10.10.1
Исключения сканирования.
# nmap 10.10.10.0/24 --exclude 10.10.10.8 10.10.10.24 # nmap 10.10.10.0/24 --exclude 10.10.10.6,13,27
Так же можно создать файл с исключениями.
# nmap 10.10.10.0/24 --excludefile aut.txt
Сканируем диапазон портов.
# nmap -p 80-1000 10.10.10.1
Без пинга, сканируем все порты, ключ -n без обратного преобразования dns.
# nmap -Pn 10.10.10.1
Сканируем с подменой случайным мак адресом.
# nmap --spoof-mac 0 10.10.10.1
Пробуем просканировать с подменой mac адреса.
# nmap --spoof-mac 00:16:17:46:14:78 10.10.10.1
Проверим есть ли фаервол на проверяемом сервере, работает только из под root.
# nmap -sA 10.10.10.1
Что значит filtered, closed, unfiltered, для этих целей есть ключ —reason, он показывает почему принято такое решение, например получен tcp open smtp syn-ack или icmp port unreachable.
# nmap --reason 10.10.10.1
Показываем только открытые порты —open
Определяем какая операционная система установлена на сервере.
# nmap -O 10.10.10.1
Определяем версию сервисов у сервера.
# nmap -sV 10.10.10.1
Больше информации при сканировании.
# nmap -vv -PN 10.10.10.1
-A — Этот ключ запустит все возможные тесты, включая набор скриптов из nmap.org/nsedoc/, без агрессивного сканирования.
-T4 — Этот ключ управления временем, маленькие тайминги, большая скорость сканирования.
-sS — Этим ключем Пробуем только syn пакеты и считаем порт открытым если получаем syn_ack пакет.
Пример.
# nmap -sS -p- -PS21,80 -n -T4 -vvv --reason 10.10.10.1
Вот и вся мини инструкция по nmap примеры сканирования сети.