Nmap (Network Mapper) — свободная утилита с открытым исходным кодом, предназначенная для сканирования сетей и аудита сетевой безопасности. Nmap использует множество различных методов сканирования (UDP, TCP, TCP SYN, FTP, ICMP и т.д.), а также поддерживает большой набор дополнительных возможностей.
Ниже описаны некоторые полезные возможности этой замечательной утилиты.
Для выполнения большинства операций nmap требуются полномочия пользователя root. При запуске nmap от имени обычного пользователя значительная часть функций будет не доступна.
1. Получение информации об удаленном хосте и определение операционной системы
Nmap используются в следующем виде:
$ sudo nmap -sS -P0 -sV -O <target>
где:
- < target > — IP, хост или подсеть
- -sS — TCP SYN сканирование (полуоткрытое)
- -P0 — отключение ICMP сканирования.
- -sV — определение закрытых и фильтруемых портов
- -O — определение версии операционной системы
Еще опции:
- -A — включает определение «отпечатка» и версии операционной системы
- -v|-vv — уровень вывода диагностических сообщений
Используя дополнительные опции, команда выглядит следующим образом:
$ sudo nmap -sS -P0 -A -v < target >
2. Определение списка серверов с открытым портом
Nmap используются в следующем виде:
$ sudo nmap -sT -p 22 -oG - 192.168.1.* | grep open
Номер порта указывается после опции «-p». В данном примере, выполняется поиск
машин, для которых возможен вход по ssh (если, конечно, не изменен порт по
умолчанию для ssh).
машин, для которых возможен вход по ssh (если, конечно, не изменен порт по
умолчанию для ssh).
3. Поиск активных IP адресов в сети
Nmap используются в следующем виде:
$ sudo nmap -sP 192.168.0.*
Чтобы опросить конкретную подсеть, можно использовать следующие параметры:
$ sudo nmap -sP 192.168.0.0/24
4. Опросить (пропинговать) диапазон адресов
Nmap используются в следующем виде:
$ sudo nmap -sP 192.168.1.100-254
Nmap понимает много натаций IP адресов.
5. Поиск неиспользуемых IP адресов в подсети
Nmap используются в следующем виде:
$ sudo nmap -T4 -sP 192.168.2.0/24 && egrep “00:00:00:00:00:00″ /proc/net/arp
6. Поиск вируса Conficker в подсети
Nmap используются в следующем виде:
$ sudo nmap -PN -T4 -p139,445 -n -v \
-script=smb-check-vulns \
-script-args \
safe=1 192.168.0.1-254
Чтобы скорректировать список IP адресов, заменить «192.168.0.1-256» на свой вариант.
7. Поиск в сети мошеннических точек доступа (AP)
Nmap используются в следующем виде:
$ sudo nmap -A -p1-85,113,443,8080-8100 \
-T4 -min-hostgroup 50 \
-max-rtt-timeout 2000 \
-initial-rtt-timeout 300 \
-max-retries 3 \
-host-timeout 20m \
-max-scan-delay 1000 \
-oA wapscan 10.0.0.0/8
8. Декорирование истинного IP адреса при сканировании сети
Nmap используются в следующем виде:
$ sudo nmap -sS 192.168.0.10 -D 192.168.0.2
В данном примере выполняется поиск открытых портов на машине 192.168.0.10, в качестве адреса, откуда ведется сканирование указывается адрес 192.168.0.2. Таким образом, в логах машины 192.168.0.10 будет отображен не истинный IP адрес, с которой ведется сканирование, а указанный — 192.168.0.2.
9. Список обратных DNS записей для подсети
Nmap используются в следующем виде:
$ sudo nmap -R -sL 209.85.229.99/27 | \
awk '{if($3=="not")print"(" $2 ") no PTR";else print $3 " is "$2}' | \
grep ‘(‘
В этом примере, nmap выполняет поиск обратных DNS записей для подсети. Результатом поиска будет список IP адресов с соответствующими PTR записями для подсети. Чтобы выполнить запрос через конкретный DNS сервер, необходимо добавить «-dns-servers x.x.x.x» после опции «-sL».
10. Подсчет Linux/Windows машин в сети
Nmap используются в следующем виде:
$ sudo nmap -F -O 192.168.0.1-255 | \
grep "Running: " > /tmp/os; \
echo "$(cat /tmp/os | grep Linux | wc -l) Linux device(s)"; \
echo "$(cat /tmp/os | grep Windows | wc -l) Window(s) devices"