O Nmap (“Network Mapper”) é uma ferramenta de código
aberto para exploração de rede e auditoria de segurança. Ela foi
desenhada para escanear rapidamente redes amplas, embora também funcione
muito bem contra hosts individuais. O Nmap utiliza pacotes IP em estado
bruto (raw) de maneira inovadora para determinar quais hosts estão
disponíveis na rede, quais serviços (nome da aplicação e versão) os
hosts oferecem, quais sistemas operacionais (e versões de SO) eles estão
executando, que tipos de filtro de pacotes/firewalls estão em uso, e
dezenas de outras características. Embora o Nmap seja normalmente
utilizado para auditorias de segurança, muitos administradores de
sistemas e rede consideram-no útil para tarefas rotineiras tais como
inventário de rede, gerenciamento de serviços de atualização agendados,
e monitoramento de host ou disponibilidade de serviço.
A saída do Nmap é uma lista de alvos escaneados, com informações
adicionais de cada um dependendo das opções utilizadas. Uma informação
chave é a “tabela de portas interessantes”. Essa tabela
lista o número da porta e o protocolo, o nome do serviço e o estado. O
estado pode ser aberto (open)
, filtrado
(filtered)
, fechado (closed)
, ou
não-filtrado (unfilterd)
. Aberto (open) significa que
uma aplicação na máquina-alvo está escutando as conexões/pacotes naquela
porta. Filtrado (filtered)
significa que o firewall,
filtro ou outro obstáculo de rede está bloqueando a porta de forma que o
Nmap não consegue dizer se ela está aberta (open)
ou
fechada (closed)
. Portas fechadas
(closed)
não possuem uma aplicação escutando nelas, embora
possam abrir a qualquer instante. Portas são classificadas como
não filtradas (unfiltered)
quando elas respondem às
sondagens do Nmap, mas o Nmap não consegue determinar se as portas estão
abertas ou fechadas. O Nmap reporta as combinações
aberta|filtrada (open|filtered)
e
fechada|filtrada (closed|filtered)
quando não consegue
determinar qual dos dois estados descrevem melhor a porta. A tabela de
portas também pode incluir detalhes de versão de software quando a
detecção de versão for solicitada. Quando um scan do protocolo IP é
solicitado (-sO
), o Nmap fornece informações dos
protocolos IP suportados ao invés de portas que estejam abertas.
Além da tabela de portas interessantes, o Nmap pode fornecer
informações adicionais sobre os alvos, incluíndo nomes de DNS reverso,
possível sistema operacional, tipos de dispositivos e endereços
MAC.
Um scan típico do Nmap é mostrado em Exemplo 1, “Uma amostra de scan do Nmap”. Os únicos argumentos que o Nmap utiliza
nesse exemplo são -A
, para habilitar a detecção de SO e
a versão, -T4
para execução mais rápida, e os hostnames
de dois alvos.
Exemplo 1. Uma amostra de scan do Nmap
# nmap -A -T4 scanme.nmap.org playground
Starting nmap ( https://nmap.org/ )
Interesting ports on scanme.nmap.org (205.217.153.62):
(The 1663 ports scanned but not shown below are in state: filtered)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 3.9p1 (protocol 1.99)
53/tcp open domain
70/tcp closed gopher
80/tcp open http Apache httpd 2.0.52 ((Fedora))
113/tcp closed auth
Device type: general purpose
Running: Linux 2.4.X|2.5.X|2.6.X
OS details: Linux 2.4.7 - 2.6.11, Linux 2.6.0 - 2.6.11
Uptime 33.908 days (since Thu Jul 21 03:38:03 2005)
Interesting ports on playground.nmap.org (192.168.0.40):
(The 1659 ports scanned but not shown below are in state: closed)
PORT STATE SERVICE VERSION
135/tcp open msrpc Microsoft Windows RPC
139/tcp open netbios-ssn
389/tcp open ldap?
445/tcp open microsoft-ds Microsoft Windows XP microsoft-ds
1002/tcp open windows-icfw?
1025/tcp open msrpc Microsoft Windows RPC
1720/tcp open H.323/Q.931 CompTek AquaGateKeeper
5800/tcp open vnc-http RealVNC 4.0 (Resolution 400x250; VNC TCP port: 5900)
5900/tcp open vnc VNC (protocol 3.8)
MAC Address: 00:A0:CC:63:85:4B (Lite-on Communications)
Device type: general purpose
Running: Microsoft Windows NT/2K/XP
OS details: Microsoft Windows XP Pro RC1+ through final release
Service Info: OSs: Windows, Windows XP
Nmap finished: 2 IP addresses (2 hosts up) scanned in 88.392 seconds
A versão mais nova do Nmap pode ser obtida em https://nmap.org/. A versão mais nova da página do
manual está disponível em https://nmap.org/man/.