Pular para o conteúdo

Network Mapper - Nmap

O Nmap é certamente um dos melhores escanners de hosts, portas e serviços disponíveis na atualidade. Nesta matéria teremos uma introdução sobre como ele faz isto e de como utilizá-lo. Vamos lá!
Perfil removido removido
Hits: 65.244 Categoria: Linux Subcategoria: Internet
  • Indicar
  • Impressora
  • Denunciar

Parte 3: Métodos de scanning

Veremos agora a utilização prática dos conceitos aprendidos.

TCP connect()


Forma mais simples de scanning, ela tenta abrir uma conexão na máquina alvo, se for bem sucedida é porque a porta está aberta. Esse método é facilmente detectado pelo firewall da máquina alvo (é o default).

# nmap -sT alvo

(alvo é o IP da máquina, ex:127.0.0.1)

TCP SYN (half open)


Nesse método, um pacote SYN é enviado, caso haja resposta (um pacote SYN-ACK seja recebido), é porque a porta está aberta. Caso seja recebido um RST é porque está fechada. Se a resposta vier positiva (SYN-ACK), o nmap envia outro RST fechando a conexão, de modo que a conexão não se completará. A vantagem desse método é que fica mais difícil a detecção do portscan, pois ele não abre uma conexão TCP completa.

# nmap -sS alvo

FIN (Stealth)


Esse método envia pacotes FIN para o alvo, caso não haja resposta, a porta está aberta, caso seja recebido um pacote RST, é porque está fechada. Esse método é útil, pois alguns firewalls podem detectar a chegada de pacotes SYN, detectando o método TCP SYN, esse modo elimina essa possibilidade de detecção.

# nmap -sF alvo
# nmap -sX alvo

(Xmas Tree -> envia as flag FIN, URG e PUSH no pacote FIN)
# nmap -sN alvo
(null scan -> não envia flag no pacote FIN)

ACK (ack scan)


Esse método é utilizado para mapear o firewall alvo. Ele pode determinar o tipo de firewall e se ele apenas bloqueia os pacotes SYN.

# nmap -sA alvo

ICMP (ping scan)


Nesse método são enviados pacotes "ICMP echo request" para o alvo, caso não haja resposta, é enviado um pacote TCP ACK para a porta 80 ou então um pacote SYN (se nenhum das anteriores responder), isso tudo porque alguns firewalls bloqueiam o "ping". Ele é utilizado para ver se a máquina alvo está ativa ou não.

# nmap -sP alvo

UDP


Nesse método, um pacote UDP de 0 byte é enviado, caso seja recebido um "ICMP port unreachable" é porque a porta está fechada, caso contrário, está aberta.

# nmap -sU alvo

RPC scan


Esse método combina vários métodos de scan do nmap. Ele considera todas as portas TCP/UDP abertas e as "flooda" com comandos "NULL SunRPC", tentando descobrir quais portas RPC estão abertas, e se possível, o programa e a versão do RPC.

# nmap -sR alvo

TCP/IP Fingerprint


Esse método ativa a identificação remota do sistema operacional. Ela usa várias informações recebidas e as compara com a base da dados dos sistemas operacionais conhecidos, detectando qual o sistema usado na máquina.

# nmap -O alvo

Além dessas opções, o nmap possui muitas outras, como por exemplo o scan rápido (nmap -F) ou então a opção de não pingar a máquina antes de scaniá-la (nmap -P0).

Em adição a esses métodos de scan, o nmap oferece a opção de escolher "políticas", de modo a dificultar a detecção pelo IDS da máquina alvo. As opções são "Paranoid", "Sneaky", "Polite", "Normal", "Aggressive" ou "Insane".

A opção "Paranoid" escaneia de 5 em 5 minutos cada porta, a "Sneaky", de 15 em 15 segundos e assim evoluindo.

A vantagem do "scan" ser mais lento é que dificulta a descoberta pelo IDS da máquina alvo. A opção padrão é a normal.

# nmap -T <Paranoid|Sneaky|Polite|Normal|Aggressive|Insane> alvo

Vamos para a finalização.

   1. Introduzindo o NMAP
   2. Sintaxes de utilização
   3. Métodos de scanning
   4. Finalizando

Asterisk com PostgreSQL e unixodbc

Como imprimir diretamente na porta de impressão

Segurança para leigos

Instalando o Virtualbox da Sun Microsystems no Ubuntu

Aprendendo a modelar forms no Kylix

VivoZap do Moto Q no Ubuntu

Transformando o Linux em um Access Point com hostapd

Mozilla Firefox com plugins para Flash e JAVA

Roteamento no openVPN com redes iguais

SpamAssassin no Sendmail usando o Procmail

#1 Comentário enviado por scottys0 em 18/05/2005 - 03:51h
Além da tradução da man page do nmap vc tem mais alguma coisa para agregar ???
#2 Comentário enviado por Bique em 18/05/2005 - 07:01h
Que Deus o abencoe no Mundo dos Pinguins...Beleza...Kanimambo.
#3 Comentário enviado por lfowl em 18/05/2005 - 12:10h
perfeito.....oswaldinho é o lord da seguranca!!

#5 Comentário enviado por reimassupilami em 18/05/2005 - 14:31h
hehehe, bem não sei se o cara apenas traduziu a documentação, mas de qualquer forma achei muito legal o artigo... bem interessante...

falow...
#6 Comentário enviado por shocker em 18/05/2005 - 17:03h
Cópia da documentação ou não, o artigo ficou muito bom.
Parabéns!

[]'s
Alan Cota.
#7 Comentário enviado por lacierdias em 18/05/2005 - 22:00h
Ficou muito bom...gostei mesmo
#8 Comentário enviado por cvs em 19/05/2005 - 11:56h
para mim o -A faz é resolver a versão do serviço que tá rodando nas portas que ele detecta como aberta, pelo menos foi isso que li na documentação.
#9 Comentário enviado por removido em 19/05/2005 - 18:45h
cvs, v. está corretíssimo. A sintaxe -A não só mostra o serviço, assim como sua versão. É uma sintaxe implantada, recentemente nos últimos releases. Muito bem observado.
scotty, eu nao li o man page. da proxima vez, tenha consciencia de que muitos programas são baseados nas sintaxes e que uma explicação sobre as tais podem ser fundamentais para o ingresso de novos usuários na área. na próxima versão deste artigo, trarei mais inovacões sobre o uso do programa.
tzbishop2k@yahoo.es
#10 Comentário enviado por macroney em 23/05/2005 - 09:13h
TRADUTOR:
Antônio Pires de Castro Jr
apcastro@ic.unicamp.br ; apcastro@ondefor.com.br
Texto traduzido em 17 de Outubro de 2000
#11 Comentário enviado por macroney em 23/05/2005 - 09:14h
mas é válido!!

Contribuir com comentário

Entre na sua conta para comentar.