30 de dez. de 2009

Nmap - Guia do Nmap em português

O Nmap foi desenhado para escanear rapidamente redes amplas, embora também funcione muito bem contra hosts individuais.


O que são portas:


Imagine que as duas partes do endereço IP (a parte referente à rede e a parte referente ao host) correspondem ao CEP da rua e ao número do prédio. Um carteiro só precisa destas duas informações para entregar uma carta. Mas, dentro do prédio moram várias pessoas. O CEP e número do prédio só vão fazer a carta chegar até a portaria. Daí em diante é preciso saber o número do apartamento. É aqui que entram as famosas portas TCP.


Existem 65.536 portas TCP, numeradas de 0 a 65535. Cada porta pode ser usada por um programa ou serviço diferente, de forma que em teoria poderíamos ter até 65536 serviços diferentes ativos simultaneamente em um mesmo servidor, com um único endereço IP válido. O endereço IP contém o CEP da rua e o número do prédio, enquanto a porta TCP determina a que sala dentro do prédio a carta se destina.


Além das 65.536 portas TCP, temos o mesmo número de portas UDP, seu protocolo irmão. Embora seja um protocolo menos usado que o TCP, o UDP continua presente nas redes atuais pois oferece uma forma alternativa de envio de dados, onde em vez da confiabilidade é privilegiada a velocidade e a simplicidade. Ambos trabalham em conjunto com o IP, que cuida do endereçamento.

As portas:


21 TCP: FTP – O FTP é um dos protocolos de transferência de arquivos mais antigos e ainda assim um dos mais usados.
22 TCP: SSH – O SSH é o canivete suíço da administração remota em servidores Linux.
23 TCP: Telnet – O Telnet é provavelmente o protocolo de acesso remoto mais antigo.
25 TCP: SMTP – O SMTP é o protocolo padrão para o envio de e-mails.
53 UDP: DNS – Os servidores DNS são contatados pelos clientes através da porta 53, UDP.
67 e 68 TCP: Bootps e Bootpc – Estes dois protocolos podem ser usados em sistemas de boot remoto, onde os clientes não possuem HD nem CD-ROM e acessam todos os arquivos de que precisam a partir do servidor.
69 UDP: TFTP – O TFTP é uma versão simplificada do FTP, que utiliza portas UDP para a transferência dos dados.
80 TCP: HTTP – O HTTP é o principal protocolo da Internet, usado para acesso às paginas web.
110 TCP: POP3 – Servidores de e-mail, como o Postfix, armazenam os e-mails recebidos em uma pasta local.
123 UDP: NTP – O NTP (Network Time Protocol) é o protocolo usado para sincronizar o relógio em relação a outras máquinas da rede ou da Internet.
137 UDP, 138 UDP e 139 TCP: NetBIOS – Estas três portas são usadas pelo protocolo de compartilhamento de arquivos e impressoras em redes Microsoft.
143 TCP: IMAP – O IMAP é mais um protocolo para recebimento de e-mails, assim como o POP3.
177 TCP: XDMCP – O XDMCP é um protocolo de acesso remoto, suportado nativamente pelo X (o ambiente gráfico usado no Linux e em outros sistemas Unix).
389 TCP: LDAP – O LDAP é muito usado atualmente para criar servidores de autenticação e definir permissões de acesso para os diferentes usuários da rede.
443 TCP: HTTPS – O HTTPS permite transmitir dados de forma segura, encriptados usando o SSL.
445 TCP: CIFS – O protocolo CIFS é uma versão atualizada do antigo protocolo NetBIOS, usado para a navegação e acesso a compartilhamentos em redes Windows.


Nmap mais que um scanner de portas:


Além da tabela de portas interessantes, o Nmap pode fornecer informações adicionais sobre os alvos, incluindo nomes de DNS reverso, possível sistema operacional, tipos de dispositivos e endereços MAC.


Sinopse:


nmap -Tipo de Scan –Opções -Especificação do alvo

Tipo de Scan & Opções:


Scan em massa:

-iL
Especifica um arquivo com uma lista de IP’s para ser escaneado.
 
-iR
Sorteia IP’s e começa a escanea. Você deve determinar o número de host que deseja escaniar para não para digite 0 (zero).
 
–exclude
Especifica uma lista de alvos, separados por vírgula, a serem excluídos do scan mesmo que façam parte da faixa de rede especificada.
 
–excludefile
Oferece a mesma funcionalidade que a opção –exclude, exceto que os alvos a excluir são fornecidos em um <”arquivo separado”>.


Descobrindo Hosts:


-sL (Scan Listagem)
O scan listagem é uma forma degenerada de descoberta de hosts que simplesmente lista cada host da rede especificada, sem enviar nenhum pacote aos hosts-alvos.

-sP (Scan usando Ping)
Esta opção diz ao Nmap para somente executar um scan usando o ping (descoberta de hosts), e então mostrar os hosts disponíveis que responderam ao scan.

-P0 (Sem ping)
Considera todos os IP’s como online e tenta fazer sondagens agressivas.

-PS/PA/PU[listadeportas] (Ping usando TCP SYN)
Envia um pacote TCP SYN / ACK ou UDP vazio. Por padrão é enviado é enviado na porta 80, mas você pode alterar usando vírgulas (ex. -PS22, 23, 25, 80, 113, 1050, 35000), nesse caso as sondagens serão tentadas contra cada porta em paralelo.

-PE/PP/PM (Tipos de Ping do ICMP)
Envia um pacote ICMP echo request do tipo 8 (ou também timestamp, e netmask) esperando como resposta um tipo 0 echo reply. (Obs: não entendo nada disso).

-PR (Ping usando ARP)
O scan ARP encarrega o Nmap e seus algoritmos otimizados de fazer as requisições ARP.

-n (Não faça resolução DNS)
Diz ao Nmap para nunca fazer uma resolução DNS. Uma vez que o DNS é normalmente lento, isso acelera as coisas.

-R (resolução DNS para todos os alvos)
Diz ao Nmap para sempre fazer uma resolução DNS.

–system-dns (Usa a resolução DNS do sistema)
Especifique esta opção se desejar utilizar a resolução DNS do seu sistema. A resolução DNS do sistema é sempre usada em escaneamento IPv6.

–dns-servers (Servidores a utilizar para a pesquisa DNS reversa)
Opcionalmente você pode usar esta opção para especificar servidores de DNS alternativos.

Escaneamento de Portas:


-sS (scan TCP SYN)
O scan SYN é o tipo de escaniamento padrão do Nmap. Ele também permite uma diferenciação limpa e confiável entre os estados aberto (open), fechado (closed), e filtrado (filtered).

-sT (scan TCP connect)
O scan TCP connect é o scan padrão do TCP quando o scan SYN não é uma opção. Esse é o caso quando o usuário não tem privilégios para criar pacotes em estado bruto ou escanear redes IPv6.

-sU (scans UDP)
Mesmo sendo mais usado o protocolo TCP o Nmap tem uma opção de scan de protocolo UDP. Ele pode ser combinado com um tipo de escaneamento TCP como o scan SYN (-sS) para averigüar ambos protocolos na mesma execução.

-sN/sF/sX (scans TCP Null, FIN, e Xmas)
Esses três tipos de scan exploram uma brecha sutil na RFC do TCP para diferenciarem entre portas abertas e fechadas.
scan Null (-sN)
Não marca nenhum bit (o cabeçalho de flag do tcp é 0)
scan FIN (-sF)
Marca apenas o bit FIN do TCP.
scan Xmas(-sX)
Marca as flags FIN, PSH e URG, iluminando o pacote como uma árvore de Natal.

-sA (scan TCP ACK)
Ele nunca determina se uma porta está aberta (ou mesmo aberta|filtrada). Ele é utilizado para mapear conjuntos de regras do firewall, determinando se eles são orientados à conexão ou não e quais portas estão filtradas.

-sW (scan da Janela TCP)
Scan da Janela é exatamente o mesmo que o scan ACK, exceto que ele explora um detalhe da implementação de certos sistemas de forma a diferenciar as portas abertas das fechadas.

-sM (scan TCP Maimon)
A técnica é exatamente a mesma que os scans Null, FIN e Xmas, exceto que a sondagem é FIN/ACK. De acordo com a RFC 793 (TCP), um pacote RST deveria ser gerado em resposta a tal sondagem se a porta estiver aberta ou fechada. Entretanto, Uriel Maimon notou que muitos sistemas derivados do BSD simplesmente descartavam o pacote se a porta estivesse aberta.

–scanflags (scan TCP Personalizado)
A opção –scanflags permite que você desenhe seu próprio scan permitindo a especificação de flags TCP arbitrárias. Esperimento algumas combinações de URG, ACK, PSH, RST, SYN, e FIN (ex. –scanflags URGACKPSHRSTSYNFIN) marca tudo, embora não seja muito útil para escaneamento.

-sI portadesondagem]> (scan Idle)
Funciona como um proxy para fazer o scan (veja mais em português: http://nmap.org/idlescan-pt-br.html).
 
-sO (Scans do protocolo IP)
Scans do Protocolo IP permitem que você determine quais protocolos IP (TCP, ICMP, IGMP, etc.) são suportados pelas máquina-alvo.
 
-b (Scan de FTP bounce)
Isso permite que um usuário conecte-se a um servidor FTP, e então solicite que arquivos sejam enviados a um terceiro servidor.


Especificação de Portas e Ordem de Scan:


-p (Escaneia apenas as portas especificadas)
Esta opção especifica quais portas que você deseja escanear e prevalece sobre o padrão.
 
-F (Scan Rápido (portas limitadas))
Especifica que você deseja apenas escanear as portas listadas no arquivo nmap-services que vem com o nmap.
 
-r (Não usa as portas de forma aleatória)
Essa técnica de busca aleatória normalmente é desejável, mas você pode especificar -r para um escaneamento de portas sequencial.

Detecção de Serviço e Versão e SO:


-A
Para habilitar tanto a detecção de SO como a detecção de versão.

-sV
Habilita a detecção de versão.

–allports
Não exclui nenhuma porta da detecção de versão.

-O
Habilita a detecção de SO.


Enganando o Firewall/IDS


-S (Disfarça o endereço de origem)
Em algumas circunstâncias o Nmap pode não conseguir determinar o seu endereço de origem (o Nmap irá dizer se for esse o caso). Nesta situação use o -S com o endereço IP da interface que deseja utilizar para enviar os pacotes.
 
-e (Usa a interface especificada)
Diz ao Nmap qual interface deve ser utilizada para enviar e receber pacotes.
 
–spoof-mac (Disfarça o endereço MAC)
Solicita ao Nmap que utilize o endereço MAC informado para todos os frames ethernet em estado bruto (raw) que ele enviar.


Estados das portas:


Aberto (open)
Filtrado (filtered)
Fechado (closed)
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).

Fechadas (closed) não possuem uma aplicação escutando nelas, embora possam abrir a qualquer instante.

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 quais dos dois estados descrevem melhor a porta.

Sites Utilizados:
Site GuiadoHardware

Nenhum comentário:

Postar um comentário