Port Scanner
Port Scanner (scanner de porta) é uma técnica com o objetivo de mapear as portas TCP e UDP. Neste teste ele identifica o status das portas como aberta, fechada ou filtrada por um firewall.
Também é possível identificar qual serviço (e sua respectiva versão) está sendo executado em determinada porta.
MassScan
Esse sem dúvida o Port Scanner mais rápido atualmente, sendo capaz de enviar 10 milhões de pacotes por segundo, o equivale a varredura de toda a internet em apenas 6 mnutos.
Instalação
sudo apt install masscan
Utilização
sudo masscan -p80 192.168.1.0/24
sudo masscan -p80 192.168.1.0/24 --rate=1000 -e eth0 --router-ip 192.168.1.1
Hping3
O Significado das Flags devolvidas no hping3 são:
FLAG
DESCRIÇÃO
R
RESET
S
SYN
A
ACK
F
FIN
P
PUSH
U
URGENT
X
not standard 0x40
Y
not standard 0x80
Bypass com ping (ICMP)
Mesmo quando o firewall está bloqueando o PING (enviando ou recebendo através do ICMP) ainda sim é possível utilizar através do hping3
utilizando um dos comandos abaixo:
hping3 --icmp <ip>
hping --syn <ip>
hping3 --syn -c 1 -p <destination_port>
Bypass via DNS
A porta 53 (DNS) geralmente é liberado pelo firewall, então podemos utilizar o tamanho da janela como 100
hping3 --syn <ip> -s 53 -p 80 -k -w 100
Varredura X-MAS
hping3 <ip> --xmas -p 80 -c 3
Netcat
TCP
# Verificando uma única porta
nc -vnz <ip> <port>
# Verificando um range de portas
nc -vnz <ip> 20-25
# Verificando todas as portas
# -w 2 = Tempo de timeout | -z = modo Zero I/O, onde não envia dados
nc -nvv -w 2 -z <ip> 1-65535
UDP
nc -nv -u -z -w 1 <IP> <port>
Metasploit
msfconsole
use auxiliary/scanner/portscan/tcp
SET RHOSTS <ip>
exploit
NMAP
Essa sem dúvida é uma ótima ferramenta (na minha opinião o melhor Port Scanner), mas devido a sua grande quantidade de informações, decidi deixar uma página para explicar melhor sobre o Nmap.
NMAPBash
Sim, isso mesmo. Com os próprios recursos do bash, podemos criar nosso próprio port scanner. Isso pode ser útil quando não temos nenhuma ferramenta disponivel.
#!/bin/bash
host=<ip_alvo>
for port in {1..65535}; do
timeout .1 bash -c "echo >/dev/tcp/$host/$port" &&
echo "port $port is open"
done
echo "Done"
Powershell
Test-NetConnection -ComputerName <ip> -Port <port>
Last updated
Was this helpful?