Bóson Treinamentos em Ciência e Tecnologia

12 Exemplos de uso do utilitário nmap

12 exemplos de uso do nmap - network mapper

Nmap – Network Mapper

O nmap é um utilitário open source para exploração de redes e auditoria de segurança. Criado por Gordon Lyon em 1997, ele permite escanear desde hosts únicos a grandes redes de dispositivos, tanto local quanto remotamente, por meio do envio de pacotes e análise das repostas recebidas.

O nmap roda em Linux, BSD, OS X e Windows, possuindo interface padrão em linha de comandos e também uma implementação de interface gráfica, chamada de zenmap.

Neste tutorial vamos mostrar doze exemplos de uso do nmap. Mas antes, precisamos instalá-lo no sistema. Usaremos um sistema Ubuntu Linux para mostrar os exemplos, que poderão ser replicados em qualquer outro sistema:

Como instalar o nmap e zenmap

Vamos instalar os pacotes:

# apt install nmap zenmap

Verificar se nmap e zenmap estão instalados:

# whereis nmap
# whereis zenmap

Não vamos utilizar o zenmap neste tutorial; deixe-o instalado pois vamos mostrar como usá-lo nos próximos tutoriais sobre o assunto.

Vamos aos exemplos de uso do nmap agora.

Exemplos

1 – Listar as portas abertas em um host remoto, como o scanme.nmap.org:

# nmap scanme.nmap.org

Conta comum: envia TCP Connect Scan; Conta com privilégios: envia SYN Stealth Scan.

Estados das portas

As portas podem se encontrar nos seguintes estados:

2 – Detecção de Versão de Serviços

A detecção de serviço é uma das técnicas mais usadas no nmap, permitindo por exemplo identificar vulnerabilidades de segurança ou simplesmente verificar se um serviço está rodando em uma porta específica.

A flag sV habilita detecção de serviço, retornando informações sobre serviços e versões.

# nmap -sV scanme.nmap.org

3 – Usar o Modo Agressivo

O modo agressivo é um modo de operação especial do nmap que é ativado com o uso da flag A, habilitando a detecção de S.O., versão, escaneamento de script e traceroute:

# nmap -A localhost

4 – Encontrar hosts ativos na rede

Podemos enumerar ou monitorar alvos ativos, usando a flag P (ping scanning):

# sudo nmap -sP 192.168.1.1/24

5 – Escanear portas específicas na rede

Podemos escanear uma porta ou grupo de portas específicas com a flag -p

# sudo nmap -p80 192.168.1.1/24

Outras formas de escanear portas específicas:

Lista de portas:

# sudo nmap -p80, 443 192.168.1.1/24

Faixa de portas:

# sudo nmap -p1-200 192.168.1.1/24

Todas as portas:

# sudo nmap -p- 192.168.1.1/24

Portas específicas por protocolos:

# sudo nmap -pT:22,U:53 192.168.1.1/24

Por nome de serviço:

# sudo nmap -p ftp 192.168.1.1/24

6 – Identificar hostnames

Podemos identificar os nomes de hosts ativos na rede com a flag -L

# sudo nmap -sL 192.168.1.1/24

7 – Identificar sistema operacional

Para identificar o sistema operacional de um host usamos a flag -O

# sudo nmap -O 192.168.1.1

8 – Escanear as x principais portas

Podemos escanear as x principais portas (por exemplo, as 20 principais portas) com o parâmetro –top-ports:

# sudo nmap --top-ports 20 192.168.1.1

9 – Salvar a saída em um arquivo de texto

Podemos salvar a saída gerada pelo nmap em um arquivo de texto, que pode ser analisado posteriormente, com a opção -oN:

# sudo nmap --top-ports 20 -oN saida.txt 192.168.1.1

E então abrir essa saída usando qualquer editor de textos, ou até mesmo o comando cat.

10 – Ler um arquivo de texto contendo IPs

Podemos usar um arquivo de texto contendo diversos endereços IP com entrada para o escaneamento do nmap com a opção -iL.

Suponha que tenhamos um arquivo de nome listaIP.txt e que possua o seguinte conteúdo:

192.168.1.1
8.8.8.8
192.168.1.60
www.locaweb.com.br

Usamos o comando como segue:

# sudo nmap -p80 -iL listaIP.txt

11 – Escanear apenas portas TCP ou UDP

Podemos especificar se o escaneamento deve ocorrer apenas em portas TCP ou UDP (o padrão é em ambas), com as flags -sT (TCP) e -sU (UDP):

# sudo nmap -sT localhost
# sudo nmap -sU localhost

12 – Mostrar rotas e interfaces no host

Podemos verificar a configuração das interfaces de rede e as rotas no host que roda o nmap, para fins de troubleshooting:

# sudo nmap -iflist

Bônus: Como usar o NSE – Nmap Scripting Engine

Recurso poderoso do nmap, o NSE nos permite usar um conjunto pré-determinado de scripts, ou ainda escrever nossos próprios scripts de alta complexidade.

Um exemplo é um script de teste completo de vulnerabilidade:

# sudo nmap -Pn --script vuln 192.168.1.1

Referências

Lyon, G. F. Nmap Network Scanning. Ed. Insecure.com, 1ª Ed. 2008

 

Sair da versão mobile