Digitalização TCP
O TCP é um protocolo com estado porque mantém o estado das conexões. A conexão TCP envolve um aperto de mão de três vias de soquete do servidor e soquete do lado do cliente. Enquanto um soquete do servidor está ouvindo, o cliente envia um syn e depois o servidor responde de volta com syn-acack. Cliente então, envia ACK para completar o aperto de mão para a conexão
Para digitalizar uma porta aberta do TCP, um scanner envia um pacote SYN para o servidor. Se o syn-ack for enviado de volta, a porta estará aberta. E se o servidor não concluir o aperto de mão e responder com um primeiro lugar, a porta será fechada.
Digitalização UDP
UDP, por outro lado, é um protocolo sem estado e não mantém o estado de conexão. Também não envolve aperto de mão de três vias.
Para digitalizar uma porta UDP, um scanner UDP envia um pacote UDP para a porta. Se essa porta estiver fechada, um pacote ICMP será gerado e enviado de volta à origem. Se isso não acontecer, isso significa que a porta está aberta.
A varredura de porta UDP geralmente não é confiável porque os pacotes ICMP são descartados por firewalls, gerando falsos positivos para scanners de porta.
Scanners de porta
Agora que analisamos como a digitalização da porta funciona, podemos avançar para diferentes scanners de portas e sua funcionalidade.
NMAP
O NMAP é o scanner de porta mais versátil e abrangente disponível até agora. Pode fazer de tudo, desde a digitalização portuária até os sistemas operacionais de impressão digital e a varredura de vulnerabilidades. NMAP tem interfaces de CLI e GUI, a GUI é chamada de Zenmap. Tem muitas opções variadas para fazer varreduras rápidas e eficazes. Veja como instalar o NMAP no Linux.
Atualização de sudo apt-get
sudo apt -get upgrade -y
sudo apt -get install nmap -y
Agora usaremos o NMAP para digitalizar um servidor (hackme.org) para portas abertas e para listar serviços disponíveis nessas portas, é realmente fácil. Basta digitar NMAP e o endereço do servidor.
nmap hackme.org
Para digitalizar portas UDP, inclua a opção -su com sudo porque requer privilégios de raiz.
sudo nmap -su hackme.org
Existem muitas outras opções disponíveis no NMAP, como:
-P-: digitalize para todas as portas 65535
-ST: TCP Connect Scan
-O: varreduras para o sistema operacional em execução
-V: varredura detalhada
-A: varredura agressiva, digitalizações para tudo
-T [1-5]: Para definir a velocidade de varredura
-PN: Caso o servidor bloqueie o ping
Zenmap
Zenmap é uma interface GUI do NMAP para Kid-Kiddies para que você não precise se lembrar de seus comandos. Para instalá -lo, digite
sudo apt -get install -y zenmap
Para digitalizar um servidor, basta digitar seu endereço e selecionar nas opções de digitalização disponíveis.
Netcat
O NetCat é um escritor de portas TCP e UDP bruto que também pode ser usado como um scanner de porta. Ele usa o Connect Scan, é por isso que não é tão rápido como o Mapper de rede. Para instalá -lo, digite
ubuntu@ubuntu: ~ $ sudo apt install netcat -tradicional -y
Para verificar se há uma porta aberta, escreva
ubuntu@ubuntu: ~ $ nc -z -v hackme.org 80
… Snip…
hackme.org [217.78.1.155] 80 (http) aberto
Para digitalizar uma variedade de portas, digite
ubuntu@ubuntu: ~ $ nc -z -nv 127.0.0.1 20-80
(Desconhecido) [127.0.0.1] 80 (http) aberto
(Desconhecido) [127.0.0.1] 22 (ssh) aberto
UnicornScan
UnicornScan é um scanner de portos abrangente e rápido, construído para pesquisadores de vulnerabilidades. Ao contrário do Retwork Mapper, ele usa sua própria pilha TCP/IP distribuída de terra de usuário. Tem muitos recursos que o NMAP não tem, alguns deles recebem,
Para instalar o UnicornScan, digite
ubuntu@ubuntu: ~ $ sudo apt -get install unicornscan -y
Para executar uma varredura, escreva
ubuntu@ubuntu: ~ $ sudo US 127.0.0.1
TCP Open FTP [21] de 127.0.0.1 TTL 128
TCP Open SMTP [25] de 127.0.0.1 TTL 128
TCP Open HTTP [80] de 127.0.0.1 TTL 128
… Snip…
Os scanners de portas são úteis, seja você um devop, jogador ou um hacker. Não há comparação real entre esses scanners, nenhum deles é perfeito, cada um deles tem seus benefícios e desvantagens. Depende completamente de seus requisitos e de como você os usa.