Penetration Testing
Penetration Testing, ou teste de invasão, é uma metodologia de avaliação de segurança que simula ataques reais para identificar vulnerabilidades antes que sejam exploradas por atacantes maliciosos.
Metodologias de Pentesting
OWASP Testing Guide
Framework completo para testes de segurança em aplicações web, cobrindo desde coleta de informações até testes de lógica de negócio.
PTES (Penetration Testing Execution Standard)
Metodologia estruturada em 7 fases: pré-engajamento, coleta de informações, modelagem de ameaças, análise de vulnerabilidades, exploração, pós-exploração e relatório.
OSSTMM
Open Source Security Testing Methodology Manual - metodologia científica para testes de segurança em diversos canais (humanos, físico, wireless, telecomunicações e redes).
Fases do Penetration Testing
1. Reconnaissance (Reconhecimento)
- Passive: Coleta de informações sem interação direta (OSINT, DNS, WHOIS)
- Active: Scan de rede, enumeração de serviços, identificação de tecnologias
- Ferramentas: Nmap, Recon-ng, theHarvester, Shodan, Maltego
2. Scanning & Enumeration
- Port scanning e service fingerprinting
- Vulnerability scanning automatizado
- Enumeração de usuários, compartilhamentos, serviços
- Ferramentas: Nessus, OpenVAS, Nikto, enum4linux
3. Gaining Access (Exploração)
- Exploração de vulnerabilidades identificadas
- SQL Injection, XSS, Command Injection
- Buffer Overflow, privilege escalation
- Ferramentas: Metasploit, Burp Suite, SQLmap, Cobalt Strike
4. Maintaining Access (Pós-Exploração)
- Instalação de backdoors e persistence mechanisms
- Privilege escalation (horizontal e vertical)
- Pivoting e lateral movement
- Data exfiltration
5. Covering Tracks
- Limpeza de logs e evidências
- Demonstração de técnicas de evasão
- Documentação das atividades realizadas
Tipos de Pentesting
Black Box
Testador não possui conhecimento prévio sobre o alvo. Simula ataque externo realista.
White Box
Testador possui conhecimento completo (código-fonte, arquitetura, credenciais). Permite análise mais profunda.
Gray Box
Conhecimento parcial do sistema. Simula ataque de insider ou usuário privilegiado.
Ferramentas Essenciais
Frameworks e Distribuições
- Kali Linux: Distribuição completa com 600+ ferramentas
- Parrot OS: Alternativa focada em privacidade e forense
- Metasploit Framework: Suite de exploração e desenvolvimento de exploits
Web Application Testing
- Burp Suite: Proxy interceptor e scanner web
- OWASP ZAP: Scanner automático open-source
- SQLmap: Ferramenta automática de SQL injection
- Nikto: Scanner de vulnerabilidades web
Network Penetration
- Nmap: Network scanner e service detection
- Wireshark: Análise de tráfego de rede
- Responder: LLMNR/NBT-NS/MDNS poisoning
- Impacket: Suite Python para protocolos de rede
Password Cracking
- John the Ripper: Password cracker clássico
- Hashcat: Cracker GPU-accelerated
- Hydra: Brute force para serviços de rede
- CrackMapExec: Post-exploitation em ambientes Windows
Vetores de Ataque Comuns
Web Applications
- SQL Injection (SQLi)
- Cross-Site Scripting (XSS)
- Cross-Site Request Forgery (CSRF)
- Server-Side Request Forgery (SSRF)
- XML External Entity (XXE)
- Insecure Deserialization
Network & Infrastructure
- Man-in-the-Middle (MitM)
- ARP Spoofing e DNS Poisoning
- SMB Relay attacks
- Kerberoasting
- Pass-the-Hash/Pass-the-Ticket
Social Engineering
- Phishing campaigns
- Vishing (voice phishing)
- Physical intrusion testing
- USB drop attacks
Relatório de Pentesting
Um relatório de qualidade deve incluir:
- Executive Summary: Visão high-level para gestão
- Metodologia: Abordagem e scope do teste
- Vulnerabilidades Identificadas: Classificadas por severidade (CVSS)
- Exploração Técnica: Detalhes técnicos com screenshots e PoCs
- Recomendações: Medidas de remediação priorizadas
- Apêndices: Logs, scripts, evidências técnicas
Certificações Profissionais
- OSCP: Offensive Security Certified Professional
- CEH: Certified Ethical Hacker
- GPEN: GIAC Penetration Tester
- CRTP: Certified Red Team Professional
- PNPT: Practical Network Penetration Tester
Aspectos Legais e Éticos
- Sempre obter autorização por escrito (RoE - Rules of Engagement)
- Definir claramente o scope e limitações
- Respeitar leis de privacidade e proteção de dados
- Não causar danos aos sistemas testados
- Manter confidencialidade das informações descobertas
- Seguir código de ética profissional (EC-Council, SANS)
Penetration Testing é uma disciplina essencial para validar a postura de segurança de organizações. Combina conhecimento técnico profundo, metodologia estruturada e pensamento criativo para simular ataques reais. Um pentest efetivo vai além de scanners automatizados, exigindo análise manual, compreensão do contexto do negócio e comunicação clara dos riscos encontrados.
