Pentest Web e de API: guia técnico completo

TL;DR

Pentest web cobre as aplicações expostas no navegador (OWASP Top 10); pentest de API cobre os endpoints consumidos por mobile, web e B2B (OWASP API Top 10). Ambos exigem validação manual além das ferramentas automatizadas, e devem ser conduzidos em ambiente controlado, com escopo, autorização e retest.

Web e APIs são hoje a maior superfície de ataque de qualquer empresa digital. Toda funcionalidade nova é uma rota nova; toda integração externa é uma porta nova. Este guia explica como conduzimos pentest web e de API com profundidade técnica, e o que esperar como cliente.

Pentest Web: o que é testado

Um pentest web vai além de rodar um scanner. Ele cobre:

Referências obrigatórias

OWASP Top 10 é o ponto de partida — não a meta. Um pentest sério usa também o OWASP ASVS (Application Security Verification Standard) como checklist de profundidade, e o OWASP Testing Guide como manual de execução.

Pentest de API: por que é diferente

APIs não têm interface visual para guiar o testador, são consumidas por código (mobile, frontend, parceiros), aceitam estruturas de dados complexas e frequentemente expõem mais funcionalidade do que o frontend usa. Resultado: a superfície real é maior que a aparente.

OWASP API Top 10

O OWASP API Security Top 10 categoriza as principais falhas. Os mais frequentes na prática:

Fases práticas

1. Reconhecimento

Coletar todos os endpoints. Para web: crawling autenticado, análise de JavaScript bundles, sourcemap, wayback machine, GitHub leaks. Para API: pegar a documentação OpenAPI/Swagger se houver, capturar tráfego do app mobile, inspecionar o frontend.

2. Mapeamento de fluxos

Entender quais são os fluxos de negócio. Cadastro, login, recuperação, transação financeira, integração com terceiros. Cada fluxo tem premissas que podem ser quebradas.

3. Análise de autorização

Crie pelo menos duas contas de teste. Para cada endpoint que retorna ou modifica dado: teste se conta A consegue acessar dado de conta B trocando IDs. Teste se usuário comum consegue chamar endpoints administrativos.

4. Testes de injeção

Para cada parâmetro de entrada, testar payloads de SQLi, XSS, command injection, SSRF. Em APIs JSON, testar manipulação de tipos (string vira array, string vira objeto), comentários, encodings duplos.

5. Testes de lógica de negócio

Aqui mora o ouro. Pular etapas de um fluxo de checkout, repetir uma chamada de cashback, manipular valor em campo escondido, criar conta com email já existente, escalar privilégios via convite. Scanners não pegam isso.

6. Pós-exploração e impacto

Cada vulnerabilidade ganha um CVSS, um risco de negócio e uma prova de impacto. Sem impacto demonstrado, fica difícil priorizar.

7. Relatório e retest

Entrega-se relatório executivo (para liderança), relatório técnico (para devs e segurança) com cada finding, evidências e remediação. Após correção, retest valida o fix.

Ferramentas comuns

Burp Suite Professional, OWASP ZAP, Postman/Insomnia para API, ffuf para fuzzing, sqlmap para SQLi, nuclei para checks automatizados, Caido (alternativa moderna ao Burp), JWT_Tool para tokens, e muito trabalho manual em proxies. Ferramentas são acelerador — não substituem cérebro.

Conclusão

Pentest web e de API exigem método, profundidade técnica e validação manual. O resultado de qualidade não é uma lista de findings genéricos do scanner — é um mapa do que está realmente quebrado, com priorização real e plano de correção viável.