Fundamentos do Rastreio(Scan) de Portas

Embora o Nmap tenha crescido em funcionalidades ao longo dos anos, ele começou como um eficiente scanner de portas e essa permanece a sua função principal. O simples comando nmap <alvo> faz o rastreio(scan) a mais de 1660 portas TCP no anfitrião(host) <alvo>. Embora muitos scanner de portas tenham tradicionalmente agrupado todas as portas nos estados aberto ou fechado, o Nmap é muito mais granular. Ele divide as portas em seis estados: aberto(open), fechado(closed),filtrado(filtered), não-filtrado(unfiltered), aberto(open)|filtrado(filtered), ou fechado(closed)|filtrado(filtered).

Esses estados não são propriedades intrínsecas da porta mas descrevem como o Nmap as vê. Por exemplo, um rastreio(scan) do Nmap da mesma rede como alvo pode mostrar a porta 135/tcp como aberta, enquanto um rastreio(scan) ao mesmo tempo com as mesmas opções a partir da Internet poderia mostrar essa porta como filtrada.

Os seis estados de porta reconhecidos pelo Nmap
aberto (open)

Uma aplicação está activamente aceitando conexões TCP ou pacotes UDP nesta porta. Encontrar esse estado é frequentemente o objectivo principal de um rastreio(scan) de portas. Pessoas conscientes sobre a segurança sabem que cada porta aberta é um convite para um ataque. Invasores e profissionais de avaliação de segurança querem explorar as portas abertas, enquanto os administradores tentam fechar ou proteger com firewalls sem bloquear usuários legítimos. Portas abertas são também interessantes para rastreios(scans) não-relacionados à segurança pois mostram os serviços disponíveis para utilização na rede.

fechado (closed)

Uma porta fechada está acessível (ela recebe e responde a pacotes de sondagens do Nmap), mas não há nenhuma aplicação ouvindo nela. Elas podem ser úteis para mostrar que um anfitrião(host) está activo em um determinado endereço IP (descoberta de hosts, ou rastreio(scan) usando ping), e como parte de uma deteção de SO. Pelo facto de portas fechadas serem alcançáveis, pode valer a pena o rastreio(scan) mais tarde no caso de alguma delas abrir. Os administradores deveriam considerar o bloqueio dessas portas com um firewall. Então elas apareceriam no estado filtrado, discutido a seguir.

filtrado(filtered)

O Nmap não consegue determinar se a porta está aberta porque uma filtragem de pacotes impede que as sondagens alcancem a porta. A filtragem poderia ser de um dispositivo firewall dedicado, regras de router, ou um software de firewall baseado em anfitrião(host). Essas portas frustram os atacantes pois elas fornecem poucas informações. Às vêzes elas respondem com mensagens de erro ICMP tais como as do tipo 3 código 13 (destino inalcançável: comunicação proibida administrativamente), mas os filtros que simplesmente descartam pacotes sem responder são bem mais comuns. Isso força o Nmap a tentar diversas vezes só para o caso de a sondagem ter sido descartada por congestionamento da rede ao invés de filtragem. Isso reduz a velocidade do rastreio(scan) dramaticamente.

não-filtrado(unfiltered)

O estado não-filtrado significa que uma porta está acessível, mas que o Nmap é incapaz de determinar se ela está aberta ou fechada. Apenas o rastreio(scan) ACK, que é usado para mapear conjuntos de regras de firewall classifica portas com este estado. O rastreio(scan) de portas não-filtradas com outros tipos de scan, tal como scan Window, scan Syn, ou scan FIN, podem ajudar a responder se a porta está aberta.

open|filtered

O Nmap coloca portas neste estado quando é incapaz de determinar se uma porta está aberta ou filtrada. Isso acontece para tipos de rastreio(scan) onde as portas abertas não dão nenhuma resposta. A falta de resposta poderia também significar que um filtro de pacotes descartou a sondagem ou qualquer resposta que ela tenha provocado. Portanto o não sabe com certeza se a porta está aberta ou se está sendo filtrada. Os rastreios(scans) UDP, IP Protocol, FIN, Null, e Xmas classificam portas desta forma.

closed|filtered

Este estado é usado quando o Nmap é incapaz de determinar se uma porta está fechada ou filtrada. É apenas usado para o rastreio(scan) IPID Idle scan.