ethical-redteam-bugbounty

Conducts authorized ethical security tests (Red Team / Bug Bounty) covering OSINT reconnaissance, subdomain enumeration, social media username investigation (Sherlock, Blackbird), port/service scanning, vulnerability analysis, and professional OWASP/NIST report generation. Use when the user asks for "penetration testing", "pentest", "vulnerability scan", "OSINT", "bug bounty", "security report", "port scan", "network analysis", "red team", "recon on target", "subdomain enumeration", "username search", or "social media OSINT". Requires written authorization before any active test. Outputs executive and technical reports in Markdown and PDF.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "ethical-redteam-bugbounty" with this command: npx skills add prof-ramos/ethical-redteam-skill/prof-ramos-ethical-redteam-skill-ethical-redteam-bugbounty

Ethical Red Team & Bug Bounty Skill

⚠️ DISCLAIMER OBRIGATÓRIO Esta skill destina-se exclusivamente a testes de segurança autorizados em ambientes controlados. Uso não autorizado contra sistemas de terceiros é ilegal e viola LGPD, Marco Civil da Internet, CFAA e Computer Misuse Act. SEMPRE obtenha e documente autorização escrita antes de qualquer teste.


Instructions

Step 1: Validação de Autorização (OBRIGATÓRIO)

Antes de executar qualquer módulo, pergunte ao usuário:

Para prosseguir, confirme:
1. Você possui autorização ESCRITA do proprietário do sistema alvo?
2. O escopo do teste está claramente definido?
3. Existe um Rules of Engagement (RoE) documentado?

Responda SIM para todas para continuar.

Se qualquer resposta for NÃO, interrompa e oriente sobre como obter autorização legal. Consulte references/ethics-guide.md para modelos de autorização e orientações legais completas.


Step 2: Reconhecimento (OSINT/DNS/IP)

Execute reconhecimento passivo ou ativo conforme o escopo autorizado:

python scripts/recon.py --target ALVO --mode [passive|active|full] --output recon_output/

Modos disponíveis:

  • passive — Apenas OSINT (sem contato direto com o alvo)
  • active — DNS enumeration + IP range mapping
  • full — Passive + Active combinados

Saída esperada: recon_output/ALVO_recon_TIMESTAMP.json

Se theHarvester der timeout: use --mode passive --timeout 30.


Step 3: Enumeração de Subdomínios (subfinder)

Expande a superfície de ataque identificando subdomínios ativos do alvo:

subfinder -d DOMINIO -o recon_output/ALVO_subdomains.txt -silent

Opções úteis:

  • -all — Usa todas as fontes disponíveis (mais lento, mais completo)
  • -recursive — Enumeração recursiva de subdomínios
  • -t 50 — Controla o número de threads (padrão: 10)
  • -nW — Remove wildcards dos resultados

Após enumerar, resolva e filtre ativos:

subfinder -d DOMINIO -all -o recon_output/ALVO_subdomains.txt
cat recon_output/ALVO_subdomains.txt | httpx -silent -o recon_output/ALVO_subdomains_live.txt

Saída esperada: recon_output/ALVO_subdomains.txt + ALVO_subdomains_live.txt

Instalação: go install -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest Alternativa sem Go: pip install sublist3rsublist3r -d DOMINIO -o saida.txt


Step 4: OSINT de Usuário — Sherlock

Busca username em centenas de redes sociais e plataformas para mapeamento de pegada digital:

sherlock USERNAME --output recon_output/ALVO_sherlock.txt --timeout 10

Opções:

  • --site SITE — Limita a busca a um site específico
  • --timeout 10 — Timeout por requisição (padrão: 60s)
  • --print-found — Imprime apenas resultados encontrados
  • --csv — Exporta em CSV: sherlock USERNAME --csv
  • --tor — Roteia via rede Tor (recomendado para testes sensíveis)

Busca de múltiplos usernames:

sherlock USERNAME1 USERNAME2 USERNAME3 --output recon_output/

Saída esperada: USERNAME.txt com URLs encontradas por plataforma

Instalação: pip install sherlock-project Documentação: https://github.com/sherlock-project/sherlock


Step 5: OSINT de Usuário/Email — Blackbird

Investigação aprofundada de username ou e-mail em mais de 600 sites, com metadados e exportação JSON:

# Por username
python blackbird.py -u USERNAME --json

# Por e-mail
python blackbird.py -e EMAIL --json

# Redirecionar saída
python blackbird.py -u USERNAME --json -o recon_output/ALVO_blackbird.json

Opções:

  • --json — Exporta resultados em JSON estruturado
  • --pdf — Gera relatório PDF dos achados
  • -p — Habilita modo de permissive matching
  • --timeout 10 — Timeout por site

Instalação:

git clone https://github.com/p1ngul1n0/blackbird.git
cd blackbird
pip install -r requirements.txt

Documentação: https://github.com/p1ngul1n0/blackbird

⚠️ Blackbird não inclui proxy por padrão. Para testes sensíveis, configure --proxy http://127.0.0.1:9050 com Tor ativo.


Step 6: Web Application Scanning — Burp Suite MCP (Community)

Analisa aplicações web interceptando tráfego via Burp Suite + MCP, sem necessidade de Burp Pro:

# Pré-requisito: Burp Suite com extensão MCP carregada e browser usando proxy 127.0.0.1:8080

# 1. Verificar se Burp MCP está ativo
python scripts/burp_mcp.py --check

# 2. Análise passiva do histórico de proxy (navegue no alvo antes)
python scripts/burp_mcp.py --mode history --output scan_output/

# 3. Probing ativo + histórico combinados
python scripts/burp_mcp.py --mode full --target https://alvo.com --output scan_output/

O que detecta (Community — sem Burp Pro):

  • Headers de segurança ausentes (HSTS, CSP, X-Frame-Options, etc.)
  • Cookies sem HttpOnly/Secure/SameSite
  • Dados sensíveis expostos em URLs (tokens, senhas, session IDs)
  • Versão do servidor exposta (Server: header)
  • HTTP sem criptografia (sem redirect para HTTPS)
  • CORS wildcard (Access-Control-Allow-Origin: *)
  • Caminhos sensíveis: /.git/HEAD, /.env, /admin, /phpinfo.php, etc.
  • Métodos HTTP perigosos (PUT, DELETE, TRACE)

Configuração da extensão MCP:

git clone https://github.com/portswigger/mcp-server
cd mcp-server && ./gradlew embedProxyJar
# Burp Suite → Extensions → Add → Java → build/libs/mcp-server-all.jar
# Aba MCP → Enable Server (porta padrão: 9876)

Saída: scan_output/ALVO_burp_mcp_TIMESTAMP.json — compatível com analyzer.py

Burp Pro: Adiciona GetScannerIssues para SQLi, XSS, IDOR e 100+ vulnerabilidades automáticas. A versão Community cobre os 20% de esforço que detectam 80% dos problemas mais comuns.


Step 8: Scanning (Portas / Serviços / Vulnerabilidades)

python scripts/scanner.py --target ALVO --profile [quick|standard|deep] --output scan_output/

Perfis:

  • quick — Top 100 portas + detecção de SO
  • standard — Top 1000 portas + banner grabbing (recomendado)
  • deep — Todas as portas + detecção de CVEs conhecidos

Limite de recursos: máx. 4 GB RAM configurado para M3. Em redes grandes com deep, use --profile standard.

Saída esperada: scan_output/ALVO_scan_TIMESTAMP.json


Step 9: Análise de Vulnerabilidades

python scripts/analyzer.py \
  --recon recon_output/ARQUIVO.json \
  --scan scan_output/ARQUIVO.json \
  --output analysis/

Gera análise consolidada com classificação de severidade CVSS v3.1. Consulte references/owasp-checklist.md para cobertura metodológica OWASP WSTG completa.

Saída esperada: analysis/ALVO_analysis_TIMESTAMP.json


Step 10: Geração de Relatório

python scripts/reporter.py \
  --analysis analysis/ARQUIVO.json \
  --target "Nome do Alvo" \
  --tester "Seu Nome" \
  --output reports/

Gera automaticamente três artefatos:

  • ALVO_executive_report.md — Sumário executivo para gestores
  • ALVO_technical_report.md — Detalhamento técnico completo
  • ALVO_full_report.pdf — Relatório unificado em PDF

Consulte references/report-template.md para o template e references/sample-report.md para exemplo de saída esperada.


Examples

Example 1: Bug Bounty — Recon Completo com OSINT Social

Usuário diz: "Preciso fazer recon completo em alvo.com com mapeamento de presença social"

Ações:

  1. Confirmar autorização (Step 1)
  2. python scripts/recon.py --target alvo.com --mode passive --output ./saida/
  3. subfinder -d alvo.com -all -o ./saida/subdomains.txt
  4. sherlock admin_username --output ./saida/ --timeout 10
  5. python blackbird.py -u admin_username --json -o ./saida/blackbird.json
  6. python scripts/reporter.py --analysis ./saida/analysis_*.json --target "Alvo" --tester "Pentester"

Resultado: Mapa completo de subdomínios + pegada digital social + relatório técnico


Example 2: Red Team Interno — Varredura de Rede

Usuário diz: "Red team na rede interna 192.168.1.0/24, tenho autorização documentada"

Ações:

  1. Confirmar RoE e escopo (Step 1)
  2. python scripts/scanner.py --target 192.168.1.0/24 --profile standard --output ./saida/
  3. python scripts/analyzer.py --scan ./saida/scan_*.json --output ./saida/
  4. python scripts/reporter.py --analysis ./saida/analysis_*.json --target "Rede Interna Lab" --tester "Pentester A" --output ./reports/

Resultado: Relatório executivo + técnico + PDF em reports/


Example 3: OSINT de Pessoa — Investigação de Username

Usuário diz: "Preciso mapear a pegada digital de um username suspeito para um case de threat intel"

Ações:

  1. Confirmar autorização e escopo legal (Step 1)
  2. sherlock USERNAME --csv --timeout 10 --output ./saida/
  3. python blackbird.py -u USERNAME --json --pdf -o ./saida/blackbird.json

Resultado: Lista de perfis encontrados em +600 plataformas + relatório PDF Blackbird


Troubleshooting

Erro: subfinder: command not found Causa: subfinder não instalado ou não está no PATH. Solução: go install -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest e adicione $GOPATH/bin ao PATH

Erro: sherlock: command not found Causa: Sherlock não instalado. Solução: pip install sherlock-project

Erro: python blackbird.py: No module named 'requests' Causa: Dependências do Blackbird não instaladas. Solução: cd blackbird && pip install -r requirements.txt

Erro: nmap not found Causa: nmap não instalado. Solução: brew install nmap (macOS) ou sudo apt install nmap (Linux)

Erro: Permission denied no install.sh Causa: Arquivo sem permissão de execução. Solução: chmod +x scripts/install.sh && ./scripts/install.sh

Erro: memória excedida no scan deep Causa: Range de rede muito grande. Solução: Reduza o range ou use --profile standard

Erro: theHarvester timeout Causa: APIs externas lentas ou indisponíveis. Solução: --mode passive --timeout 30

Sherlock com muitos falsos positivos Causa: Sites com detecção inconsistente. Solução: Valide manualmente as URLs retornadas; use --print-found para filtrar

Blackbird sem resultados Causa: Username inexistente ou rate limiting. Solução: Tente com variações do username; aguarde e reexecute com --timeout 20


Hooks de Ciclo de Vida

A skill suporta hooks de ciclo de vida para inicializar e encerrar serviços temporários.

on_start.sh

Inicializa serviços e valida dependências:

  • Inicia Tor para anonimato (se disponível) e exporta TOR_PID
  • Verifica dependências críticas (nmap, subfinder, httpx)
  • Configura variáveis de ambiente (TOR_PROXY)

on_end.sh

Encerra serviços e limpa recursos:

  • Encerra Tor apenas se foi iniciado pela skill (usa TOR_PID)
  • Remove arquivos temporários de diretório controlado
  • Limpa variáveis de ambiente (TOR_PID, TOR_PROXY)

Uso

# Executar hooks manualmente (para testes)
source hooks/on_start.sh && on_start
source hooks/on_end.sh && on_end

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Security

rag-auditor

No summary provided by upstream source.

Repository SourceNeeds Review
General

n8n-skills

No summary provided by upstream source.

Repository SourceNeeds Review
General

cyberduck-expert

No summary provided by upstream source.

Repository SourceNeeds Review
General

social-ads-creator

No summary provided by upstream source.

Repository SourceNeeds Review