Рецепты nmap: делимся интересными примерами использования  

  RSS

MiAl
 MiAl
(@mial)
Участник Admin
Присоединился: 5 месяцев назад
Сообщения: 96
18/12/2018 5:07 дп  

Nmap применяется для анализа сети и сканирования портов. У программы огромное количество опций. Изучению этой программы посвящены целые книги! Предлагаю в этой теме делиться интересными находками по nmap. Если тема разрастётся, лучшие примеры будут подняты в шапку.

Обычное сканирование выполняется командой вида:

sudo nmap ЦЕЛЬ

В качестве ЦЕЛИ можно указать имя хоста, IP адрес, диапазоны IP адресов в разных нотациях.

Если нужно просканировать определённый порт или диапазон портов, то используется опция -p


Цитата
MiAl
 MiAl
(@mial)
Участник Admin
Присоединился: 5 месяцев назад
Сообщения: 96
18/12/2018 5:08 дп  

Как просканировать все порты с nmap

По умолчанию nmap сканирует только самые популярные порты. Чтобы просканировать все порты, можно использовать опцию -p с указанием полного диапазона:

sudo nmap -p 1-65535 ЦЕЛЬ

Если вы забываете максимальное количество портов (у меня есть такая проблема), то вы всегда можете посчитать его по формуле: 216 - 1

Но ещё проще использовать опцию -p следующим образом:

sudo nmap -p- ЦЕЛЬ

В качестве сканируемых портов можно указывать диапазон, разделённый дефисом. Если не указать начальное значение диапазона, то будут просканированы номера начиная с 1. Если не указать конечное значение диапазона, то будут просканированы номера вплоть до последнего. Если не указать ни начальное, ни конечное значение диапазона, то будут просканированые все возможные порты.


ОтветитьЦитата
MiAl
 MiAl
(@mial)
Участник Admin
Присоединился: 5 месяцев назад
Сообщения: 96
18/12/2018 5:20 дп  

Как узнать какие хосты в сети без сканирования портов

Иногда нужно только узнать, онлайн ли хост, либо просканировать локальную сеть, чтобы увидеть, какие устройства подключены к ней.

Если в этой ситуации пропустить сканирование портов, то можно сильно сэкономить время.

Чтобы только обнаружить активные хосты, но не сканировать их порты, используется опция -sn, например:

sudo nmap -sn 192.168.50.0/24

ОтветитьЦитата
MiAl
 MiAl
(@mial)
Участник Admin
Присоединился: 5 месяцев назад
Сообщения: 96
18/12/2018 6:05 дп  

Как собрать банеры служб

Если служба запущена на нестандартном порту, то получается, что по номеру порта невозможно определить что это за служба. Тем не менее при попытке подключения служба может вывести достаточно информации, чтобы раскрыть себя. Именно этим пользуются сборщики банеров — инициализируют самое начало процесса подключения и смотрят, что им прислала служба. В nmap есть скрипт (NSE) который называется banner, чтобы он использовался, добавьте две опции к вашей команде -sV --script=banner.

Можно собирать банеры как для всех портов, так и для одного или нескольких.

Пример команды:

sudo nmap -p 25,53,80,81,135,137,138,139,445,1121,1122,2921,2980,2988,4949,5554,9306,9312 -sV --script=banner 88.99.152.33

Пример вывода:

Host is up (0.32s latency).

PORT     STATE  SERVICE      VERSION
25/tcp   closed smtp
53/tcp   open   domain       ISC BIND 9.8.2rc1 (RedHat Enterprise Linux 6)
80/tcp   open   http         nginx 1.10.2
81/tcp   open   http         Apache httpd 2.2.15 ((CentOS))
|_http-server-header: Apache/2.2.15 (CentOS)
135/tcp  closed msrpc
137/tcp  closed netbios-ns
138/tcp  closed netbios-dgm
139/tcp  closed netbios-ssn
445/tcp  closed microsoft-ds
1121/tcp open   ftp          vsftpd 2.2.2
|_banner: 220 (vsFTPd 2.2.2)
1122/tcp open   ssh          OpenSSH 5.3 (protocol 2.0)
|_banner: SSH-2.0-OpenSSH_5.3
2921/tcp open   cesdcdman?
|_banner: 220 Ready
| fingerprint-strings: 
|   DNSStatusRequestTCP, DNSVersionBindReqTCP, FourOhFourRequest, GenericLines, GetRequest, HTTPOptions, Help, Kerberos, NULL, RPCCheck, RTSPRequest, SMBProgNeg, SSLSessionReq, TLSSessionReq, X11Probe: 
|_    220 Ready
2980/tcp open   http-proxy   3Proxy http proxy
2988/tcp open   socks-proxy  Socks4A
|_banner: \x00[\x81\xF6\xEF\x7F\x00\x00
4949/tcp open   tcpwrapped
5554/tcp closed sgi-esphttp
9306/tcp open   mysql        Sphinx Search SphinxQL 2.2.11-id64-release
| banner: K\x00\x00\x00\x0A2.2.11-id64-release (95ae9a6)\x00\x01\x00\x00\
|_x00\x01\x02\x03\x04\x05\x06\x07\x08\x00\x08\x82!\x02\x00\x00\x00\x00...
9312/tcp open   sphinxapi?
|_banner: \x00\x00\x00\x01
| fingerprint-strings: 
|   X11Probe: 
|_    :major command version mismatch (expected v.1.x, got v.0.0)
3 services unrecognized despite returning data. If you know the service/version, please submit the following fingerprints at  https://nmap.org/cgi-bin/submit.cgi?new-service  :
==============NEXT SERVICE FINGERPRINT (SUBMIT INDIVIDUALLY)==============
SF-Port2921-TCP:V=7.70%I=7%D=12/18%Time=5C185B1C%P=x86_64-unknown-linux-gn
SF:u%r(NULL,B,"220\x20Ready\r\n")%r(GenericLines,B,"220\x20Ready\r\n")%r(G
SF:etRequest,B,"220\x20Ready\r\n")%r(HTTPOptions,B,"220\x20Ready\r\n")%r(R
SF:TSPRequest,B,"220\x20Ready\r\n")%r(RPCCheck,B,"220\x20Ready\r\n")%r(DNS
SF:VersionBindReqTCP,B,"220\x20Ready\r\n")%r(DNSStatusRequestTCP,B,"220\x2
SF:0Ready\r\n")%r(Help,B,"220\x20Ready\r\n")%r(SSLSessionReq,B,"220\x20Rea
SF:dy\r\n")%r(TLSSessionReq,B,"220\x20Ready\r\n")%r(Kerberos,B,"220\x20Rea
SF:dy\r\n")%r(SMBProgNeg,B,"220\x20Ready\r\n")%r(X11Probe,B,"220\x20Ready\
SF:r\n")%r(FourOhFourRequest,B,"220\x20Ready\r\n");
==============NEXT SERVICE FINGERPRINT (SUBMIT INDIVIDUALLY)==============
SF-Port2988-TCP:V=7.70%I=7%D=12/18%Time=5C185B1C%P=x86_64-unknown-linux-gn
SF:u%r(NULL,8,"\0\[\x81\xf6\xef\x7f\0\0");
==============NEXT SERVICE FINGERPRINT (SUBMIT INDIVIDUALLY)==============
SF-Port9312-TCP:V=7.70%I=7%D=12/18%Time=5C185B1C%P=x86_64-unknown-linux-gn
SF:u%r(NULL,4,"\0\0\0\x01")%r(GenericLines,4,"\0\0\0\x01")%r(Help,4,"\0\0\
SF:0\x01")%r(X11Probe,4A,"\0\0\0\x01\0\x01\0\0\0\0\0>\0\0\0:major\x20comma
SF:nd\x20version\x20mismatch\x20\(expected\x20v\.1\.x,\x20got\x20v\.0\.0\)
SF:")%r(LPDString,4,"\0\0\0\x01")%r(TerminalServer,4,"\0\0\0\x01")%r(JavaR
SF:MI,4,"\0\0\0\x01")%r(ms-sql-s,4,"\0\0\0\x01");
Service Info: OSs: Linux, Unix; CPE: cpe:/o:redhat:enterprise_linux:6

Service detection performed. Please report any incorrect results at  https://nmap.org/submit/  .
Nmap done: 1 IP address (1 host up) scanned in 106.88 seconds

ОтветитьЦитата
MiAl
 MiAl
(@mial)
Участник Admin
Присоединился: 5 месяцев назад
Сообщения: 96
18/12/2018 7:07 дп  

Как просканировать UDP порты в nmap

По умолчанию nmap сканирует только TCP порты. Если использовать опцию -sU, то будут просканированы только UDP порты. Если нужно просканировать оба типа портов, то используйте одновременно -sS и -sU. Например:

sudo nmap -p 53 -sS -sU 88.99.152.33

Также с опцией -p перед номерами портов можно указать букву: T для TCP, U для UDP, S для SCTP или P для IP протоколов. Например, при задании аргумента -p U:53,111,137,T:21-25,80,139,8080 будут просканированы UDP порты 53,111, и 137, а также все перечисленные TCP порты. Имейте в виду, что для сканирования обоих и UDP и TCP портов, вы должны указать опцию -sU и, по крайне мере, один из типов сканирования TCP (таких как -sS, -sF или -sT) — если этого не сделать, то даже не смотр на буквы U и T при перечислении портов, будет использоваться опции по умолчанию, то есть будут просканированы только TCP порты.

sudo nmap -p U:53,111,137,T:21-25,80,139,8080 -sU -sS 88.99.152.33

Сканирование UDP портов не совсем тривиальная задача (из-за специфики протокола), поэтому полученные данные могут быть неточны, а сам процесс сканирования может сильно затянуться, поскольку UDP сканирование является довольно медленным.


ОтветитьЦитата
MiAl
 MiAl
(@mial)
Участник Admin
Присоединился: 5 месяцев назад
Сообщения: 96
25/01/2019 7:42 дп  

Как в Nmap делать трассировку узлов сети

В Nmap для трассировки есть опция --traceroute, пример трассировки до сайта suip.biz:

sudo nmap --traceroute suip.biz

Если вы не хотите сканировать порты, а хотите просто выполнить трассировку, то добавьте опцию -sn:

sudo nmap --traceroute -sn suip.biz

Кстати, это значительно сократить время до вывода результатов.

Бывает, что выводимые при трассировке программой nmap данные не являются полными. В этом случае попробуйте дополнительно добавить опцию -PE:

sudo nmap --traceroute -sn -PE suip.biz


ОтветитьЦитата
Share:
  
Работает

Пожалуйста, Вход или Зарегистрироваться