nmap (“Network Mapper”) e’ uma ferramenta para explorar e
auditar networks.
“Good neighbors always spy on you to make sure you are doing well.”
– Pawan Mishra
TLTR
Como o nmap tem milhoes de combinacoes de configuracoes, vou
apresentar as que mais uso e no final um resumo das configuracoes que
conheco/uso. Recomendo que invista tempo e energia para ler o manual
completo do nmap.
Target
Assuma <target>
como um IP Address, Subnet ou
hostname. Exemplos:
- IP Address: 8.8.8.8
- Subnet: 192.168.0.0/24
- Hostname: umgeher.org
Dia a dia…
Para identificar um host, normalmente eu uso as seguinte configuracoes.
nmap -sV -sS -O <target>
Com isso ele devolve quais portas estao abertas ou filtradas, quantas
estao fechadas. Nome e versao de cada servico que esta’ atras da porta
descoberta. Alem da identificacao do sistema operacional.
Configuracoes
Alguns, para nao falar varias, configuracoes podem ser usadas em
conjunto. E basicamente quase todas as configuracoes devem ser rodados
com um superuser.
Aqui separei em tres categorias:
- Discovery e Identificacao - sao as configuracoes para voce
identificar e fazer discovery dos seus targets.
- Performance - configuracoes de como o nmap vai se comportar com
delay e agressividade dos scans.
- Output - configuracoes de output
Discovery e Identificacao
Configuracoes para discovery e identificacoes de targets.
- -6 - utiliza IPv6
- -A - modo agressivo… o mesmo que usar -O, -sC, -sV
e –traceroute
- –dns-servers - informa enderecos dos DNS servers a serem
utilizados
- -e - informa a interface de rede a ser usada
- -iL - “input from list”, use um arquivo como uma lista de
targets
- -O - ativa a identificacao do sistema operacional
- -Pn - trata todos os targets como online
- -PS - envia um packet com SYN flag para a porta definida, em
caso de nao informar a porta, o padrao e’ a 80
- -PU - envia um packet UDP para a porta definida, em caso de nao
informar a porta, o padrao e’ a 40125
- -sn - scan sem port ping
- -sC - executa o scan usando o script default
- -sV - executa a identificacao dos servicos em cada porta encontrada
- –traceroute - ativa o modo traceroute
Configuracoes para controlar o tempo e velocidade dos scans.
- -T0 - modo paranoico, envia o packet a cada 5
minutos. praticamente nao da’ para usar
- -T1 - aguarda 15s para enviar cada packet
- -T2 - aguarda 0.4s para enviar cada packet
- -T3 - modo default do nmap
- -T4 - forca o tempo de timeout para 1250ms
- -T5 - forca o tempo de timeout para 300ms
Output
Configuracoes de output.
- -oG - grep mode!
- -oN - normal, o default do nmap
- -oS - s|<rIp7 k1dd13
- -oX - xml
Basicamente, se voce estiver apenas vendo no terminal, nao use opcao
de output. Caso queria guardar o resultado, utilize -oG. Todas
essas 4 opcoes precisam do nome do arquivo para fazer o
storage. Exemplo:
nmap -A -oG result-nmap-grep <target>
Scripts
O nmap tem o rescurso de voce executar scripts. Vou escrever sobre
eles no futuro. Mas um exemplo basico. Descobrir quais methods o HTTP
Server aceita.
nmap -p80,443 --script http-methods --script-args httpmethods.test-all=true <target>
Curiosidades
Zine
O nmap foi publicado pela primeira vez na antiga e otima zine
phrack, em 1997-09-01. O codigo fonte foi publicado na propria
zine. Veja o artigo aqui. Nostalgia pura!
POP
Varios filmes, series e animes usam o nmap em cenas de “hacking”. O
site oficial tem uma lista deles, caso queira ver.
/comments ~umgeher/changelog@lists.sr.ht?Subject=Re: nmap - asn scan
/permalink https://umgeher.org/posts/2023/03/nmap-asn-scan.html