Nmap - Escaneando sua Rede e Mantendo-a Segura

O Nmap é um famoso software livre que realiza o scanner de redes. É simples de instalar, possuindo binários prontos para rodar em qualquer plataforma operacional (Linux, Windows, Mac OS). Escrito e mantido por Gordon Lyon (Fyodor).

[ Hits: 17.444 ]

Por: Diego Mendes Rodrigues em 28/04/2019 | Blog: https://www.linkedin.com/in/diegomendesrodrigues/


Utilizando o NMap



Esse ferramental costuma vir instalado em distribuições voltadas para segurança da informação, como o Kali Linux. Estou pressupondo que o leitor desse material utiliza uma voltada para o cotidiano, como o Debian ou o Ubuntu.

Para instalar o Nmap no Debian/Ubuntu, execute o seguinte comando como usuário root:

# apt -y install nmap

Estado das portas no escaneamento do Nmap:
  • O Nmap pode ser usado através de linha de comando ou em uma interface gráfica, embora nesse material nos concentremos no console.
  • Sua saída será uma lista contendo alvos, e/ou dispositivos rastreados, com informações adicionais de cada um. Uma das informações obtidas pelo rastreamento é uma tabela de portas, que exibe o número de porta, protocolo, nome do serviço e estado que pode ser aberto, filtrado, não filtrado ou fechado.
  • Se o estado for aberto, indica que o serviço, ou a aplicação, no servidor escaneado está em execução.
  • Quando o estado é filtrado, indica que o Firewall está bloqueando a porta e não permite que o Nmap diga se ela está aberta ou fechada.
  • Já no estado fechado, indica que a aplicação não está escutando na porta.
  • As portas classificadas como não filtradas, indicam que elas respondem o Nmap, mas ele por sua vez, não consegue determinar se determinada porta se encontra no estado aberto ou fechado.

Exemplos de escaneamento e exploração de redes

Irei expor alguns exemplos de utilização do Nmap, para que o leitor entenda melhor seu funcionamento, utilizando a linha de comandos.

1. Escaneamento básico do Nmap:

nmap 1.1.1.1

Caso você queira utilizar o hostname, basta trocar o IP pelo hostname.

nmap cloudflare.com

O resultado será algo como:

Starting Nmap 7.40 ( https://nmap.org ) at 2019-04-24 12:43 -03
Nmap scan report for one.one.one.one (1.1.1.1)
Host is up (0.019s latency).
Not shown: 995 closed ports
PORT    STATE    SERVICE
22/tcp  filtered ssh
25/tcp  filtered smtp
135/tcp filtered msrpc
139/tcp filtered netbios-ssn
445/tcp filtered microsoft-ds

Nmap done: 1 IP address (1 host up) scanned in 8.55 seconds
~$


2. Escanear portas específicas:

Para escanear todas as portas entre 1 e 65535, na máquina local, utilize:

nmap -p 1-65535 localhost

Para escanear as portas 80 (http) e 443 (https) em um IP:

nmap -p 80,443 8.8.8.8
Starting Nmap 7.40 ( https://nmap.org ) at 2019-04-24 12:44 -03
Nmap scan report for google-public-dns-a.google.com (8.8.8.8)
Host is up (0.021s latency).
PORT    STATE    SERVICE
80/tcp  filtered http
443/tcp open     https

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


3. Escanear vários IPs, ou vários hostnames:

Para realizar o escaneamento nos IPs 1.1.1.1 e 8.8.8.8, utilize:

nmap 1.1.1.1 8.8.8.8

Já para realizar a verificação em uma sequência de IPs (1.1.1.1, 1.1.1.2, 1.1.1.3 e 1.1.1.4):

nmap -p 1.1.1.1,2,3,4

4. Escanear faixas de IPs:

Realizar o escaneamento em 14 IPs consecutivos (8.8.8.1 até o 8.8.8.14):

nmap -p 8.8.8.0/28
Ou:
nmap 8.8.8.1-14

Escanear todo a classe C de um IP (256 IPs - 8.8.8.1 até 8.8.8.256):

nmap 8.8.8.*

Caso queira excluir um IP da lista que será analisada, utilize --exclude:

nmap -p 8.8.8.* --exclude 8.8.8.1

5. Escanear as portas populares na WEB:

Usando o parâmetro "top-ports" junto com o número de portas, como 20, viabiliza que sejam escaneadas as 20 portas mais populares.

nmap --top-ports 20 192.168.15.209
Starting Nmap 7.40 ( https://nmap.org ) at 2019-04-24 12:46 -03
Nmap scan report for 192.168.15.209
Host is up (0.00022s latency).
PORT     STATE  SERVICE
21/tcp   closed ftp
22/tcp   open   ssh
23/tcp   closed telnet
25/tcp   closed smtp
53/tcp   closed domain
80/tcp   closed http
110/tcp  closed pop3
111/tcp  closed rpcbind
135/tcp  closed msrpc
139/tcp  closed netbios-ssn
143/tcp  closed imap
443/tcp  closed https
445/tcp  closed microsoft-ds
993/tcp  closed imaps
995/tcp  closed pop3s
1723/tcp closed pptp
3306/tcp closed mysql
3389/tcp closed ms-wbt-server
5900/tcp closed vnc
8080/tcp open   http-proxy


nmap --top-ports 20 google.com
Starting Nmap 7.40 ( https://nmap.org ) at 2019-04-24 12:47 -03
Nmap scan report for google.com (64.233.185.139)
Host is up (0.25s latency).
Other addresses for google.com (not scanned): 64.233.185.102 64.233.185.101 64.2       33.185.100 64.233.185.113 64.233.185.138 2800:3f0:4001:810::200e
rDNS record for 64.233.185.139: yb-in-f139.1e100.net
PORT     STATE    SERVICE
21/tcp   filtered ftp
22/tcp   filtered ssh
23/tcp   filtered telnet
25/tcp   filtered smtp
53/tcp   filtered domain
80/tcp   open     http
110/tcp  filtered pop3
111/tcp  filtered rpcbind
135/tcp  filtered msrpc
139/tcp  filtered netbios-ssn
143/tcp  filtered imap
443/tcp  open     https
445/tcp  filtered microsoft-ds
993/tcp  filtered imaps
995/tcp  filtered pop3s
1723/tcp filtered pptp
3306/tcp filtered mysql
3389/tcp filtered ms-wbt-server
5900/tcp filtered vnc
8080/tcp filtered http-proxy

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


6. Salve o resultado do escaneamento em um arquivo:

Em muitos casos, será interessante salvar o resultado em um arquivo de texto, para análise no momento ou posterior, além da viabilidade de enviar por e-mail. Para isso, podemos utilizar o parâmetro "-oN" ou "-oX". Para gerar um arquivo de texto, utilize o "-oN".

nmap -oN resultados.txt google.com

Caso seja necessário, os resultados podem ser armazenados em um arquivo XML, será necessário o "-oX".

nmap -oX resultados.xml google.com

7. Desabilitar a resolução de nomes via DNS:

Para que o escaneamento seja mais rápido e mais discreto, a resolução de nomes via DNS pode ser desabilitada com a opção "-n":

nmap -p 80 -n 8.8.8.8

8. Escaneamento que detecta o S.O. (Sistema Operacional) de um servidor:

O uso do parâmetro "-A" permite a detecção do S.O. no servidor destino, ficando ainda mais rápido junto com o "-T4". Veja esse exemplo:

nmap -A -T4 drsolutions.com.br
Starting Nmap 7.40 ( https://nmap.org ) at 2019-04-24 13:03 -03
Nmap scan report for drsolutions.com.br (45.34.14.127)
Host is up (0.16s latency).
rDNS record for 45.34.14.127: playadelsol18.com
Not shown: 994 filtered ports
PORT STATE SERVICE VERSION
53/tcp closed domain
80/tcp open http Apache httpd 2.4.25 ((Debian))
|_http-server-header: Apache/2.4.25 (Debian)
|_http-title: Did not follow redirect to https://drsolutions.com.br/
443/tcp open ssl/http Apache httpd 2.4.25 ((Debian))
|_http-server-header: Apache/2.4.25 (Debian)
|_http-title: drSolutions - Ag\xC3\xAAncia Digital - Sites, Marketing A drSolution...
| ssl-cert: Subject: commonName=drsolutions.com.br
| Subject Alternative Name: DNS:drsolutions.com.br, DNS:hospedagem.drsolutions.com.br, DNS:suporte.drsolutions.com.br, DNS:tarefas.drsolutions.com.br, DNS:treinamentos.drsolutions.com.br, DNS:www.drsolutions.com.br
| Not valid before: 2019-04-15T22:37:25
|_Not valid after: 2019-07-14T22:37:25
|_ssl-date: TLS randomness does not represent time
993/tcp closed imaps
995/tcp closed pop3s
8080/tcp open ssl/ssl Apache httpd (SSL-only mode)
| http-robots.txt: 1 disallowed entry
|_/
|_http-server-header: Apache/2.4.25 (Debian)
| http-title: 400 Bad Request
|_Requested resource was /login/
| ssl-cert: Subject: commonName=server.zhap.com.br/organizationName=drSolutions/stateOrProvinceName=SP/countryName=BR
| Not valid before: 2019-04-08T13:02:13
|_Not valid after: 2029-04-05T13:02:13
|_ssl-date: TLS randomness does not represent time

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


9. Detectar serviços e suas versões:

Essa detecção pode ser realizada com os parâmetros "-sV".

nmap -sV vivaolinux.com.br
Starting Nmap 7.40 ( https://nmap.org ) at 2019-04-24 13:08 -03
Nmap scan report for vivaolinux.com.br (54.233.68.155)
Host is up (0.017s latency).
rDNS record for 54.233.68.155: ec2-54-233-68-155.sa-east-1.compute.amazonaws.com
Not shown: 994 filtered ports
PORT     STATE  SERVICE    VERSION
22/tcp   open   ssh        OpenSSH 7.2p2 Ubuntu 4ubuntu2.8 (Ubuntu Linux; protocol 2.0)
80/tcp   open   http       nginx 1.14.0
443/tcp  open   https?
3000/tcp closed ppp
8000/tcp closed http-alt
8443/tcp open   https-alt?
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

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


10. Escaneamento em protocolos TCP ou UDP:

Escaner básico utilizando o protocolo TCP, utilizando "-sT":

nmap -sT 1.1.1.1

Escaner básico utilizando o protocolo UDP, utilizando "-sU":

# nmap -sU 1.1.1.1
Starting Nmap 7.40 ( https://nmap.org ) at 2019-04-24 13:12 -03
Nmap scan report for one.one.one.one (1.1.1.1)
Host is up (0.017s latency).
Not shown: 981 closed ports
PORT      STATE         SERVICE
7/udp     open|filtered echo
13/udp    open|filtered daytime
19/udp    open|filtered chargen
67/udp    open|filtered dhcps
123/udp   open|filtered ntp
135/udp   open|filtered msrpc
136/udp   open|filtered profile
137/udp   open|filtered netbios-ns
138/udp   filtered      netbios-dgm
139/udp   open|filtered netbios-ssn
161/udp   open          snmp
445/udp   open|filtered microsoft-ds
520/udp   open|filtered route
1645/udp  open|filtered radius
1646/udp  open|filtered radacct
1812/udp  open|filtered radius
1813/udp  open|filtered radacct
2000/udp  open|filtered cisco-sccp
49152/udp open|filtered unknown


11. Utilizar o spoofing do IP:

Ao realizar um escaneamento, pode ser necessário realizar o spoofing do IP, ou seja, esconder o IP de origem do escaneamento. Isso pode ser feito com a opção "-S":

nmap -S 10.10.10.5 192.168.15.210

Nesse escaneamento, caso alguém esteja monitorando os pacotes, o IP de origem será 10.10.10.5, ao invés do IP real de minha máquina.

Página anterior     Próxima página

Páginas do artigo
   1. Conhecendo melhor o Nmap
   2. Utilizando o NMap
   3. Conclusões e Links
Outros artigos deste autor

Como forçar alteração de senha de usuário no próximo login no Linux

Port Scanner com Python

Ubuntu Linux 20.04.1 LTS

Criar RAID no Linux

Interface de Rede Virtual no Debian

Leitura recomendada

PHLAK :: [P]rofessional [H]acker's [L]inux [A]ssault [K]it

Instalando e integrando o amavis e o viruscan no sendmail

Snort - The Open Source Network Intrusion Detection System

O que é ForceCommand

SDI (IDS) com o SNORT, MySQL, PHP e BASE em 15 minutos

  
Comentários
[1] Comentário enviado por cizordj em 29/04/2019 - 15:54h

Gostei do artigo, isso me lembra de uma vez que scaneei um computador recém-formatado com Windows 10 e o nmap não trazia nenhuma informação, deve ser falta de experiência minha mas até achei que o Windows era seguro.


<---------------------------------------------------------------->
O seu tempo é o único bem que você não recupera

[2] Comentário enviado por Mc.Eagle em 01/05/2019 - 21:36h

Excelente artigo, realmente o nmap tem sido uma ferramenta poderosa para segurança de redes de computadores.

[3] Comentário enviado por diegomrodrigues em 05/05/2019 - 11:54h


[2] Comentário enviado por Mc.Eagle em 01/05/2019 - 21:36h

Excelente artigo, realmente o nmap tem sido uma ferramenta poderosa para segurança de redes de computadores.


Realmente, essa é uma ferramenta muito utilizada.

[4] Comentário enviado por diegomrodrigues em 05/05/2019 - 11:54h


[1] Comentário enviado por Cizordj em 29/04/2019 - 15:54h

Gostei do artigo, isso me lembra de uma vez que scaneei um computador recém-formatado com Windows 10 e o nmap não trazia nenhuma informação, deve ser falta de experiência minha mas até achei que o Windows era seguro.


&lt;----------------------------------------------------------------&gt;
O seu tempo é o único bem que você não recupera


Cada S.O. tem suas vantagens e suas desvantagens!

[5] Comentário enviado por amaurybsouza em 06/05/2019 - 21:21h

Parabéns pelo artigo Diego, nmap é uma ferramenta de qualquer profissional de infra.

Vou compartilhar com o pessoal da empresa, será de grande ajuda.

Abraços.

[6] Comentário enviado por metall em 26/05/2019 - 19:01h

A uns 3 Anos Já tinha publicado aqui uma matéria Semelhante com 30 Exemplos de Utilização
Segue Link nmap
https://www.vivaolinux.com.br/contribuir/artigo/verPagina.php?codpagina=54920

[7] Comentário enviado por fpimentajr em 24/06/2019 - 06:50h

Muito esclarecedor seu artigo, foi muito útil. Obrigado por compartilhar :)

[8] Comentário enviado por fpimentajr em 22/04/2020 - 08:32h

Muito boa a matéria.... rsrsr fui levado ao manual e mergulhei no nmap. Não imaginava que ele possuísse tantas possibilidades, obrigado por compartilhar. parabéns !!!

[9] Comentário enviado por sacioz em 17/03/2021 - 18:50h


Muito bom , conciso ao maximo...obrigado por compartilhar...


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts