roadmap.local / web-api-pentest / v4 · base + avançada
progresso salvo automaticamente
24 semanas base + 7 avançadas · 10 horas por semana · prática autorizada

Web/API Pentest sem voltar a ser dev.

Trilha para um desenvolvedor fullstack júnior que quer migrar para testes de segurança de aplicações, usando código apenas como conhecimento de apoio. O centro do trabalho será observar, manipular, validar, documentar e comunicar vulnerabilidades.

cargo-alvo: Web/API Pentester · Application Security Tester
24+7semanas base + avançada
310hcarga estimada
8módulos
3avaliações completas de laboratório
Regra absoluta

Teste somente laboratórios, sistemas próprios ou alvos com autorização explícita e escopo documentado. Não teste o sistema do seu empregador, clientes ou terceiros por curiosidade. Uma boa intenção não substitui permissão.

O que esta trilha deliberadamente não prioriza

Secure code review diário, desenvolvimento de correções, regras SAST, pipelines DevSecOps, Active Directory, exploração de rede e administração de servidores. Você ainda verá recomendações e conceitos de implementação, mas não será treinado para trabalhar programando funcionalidades ou mantendo CI/CD.

Ritmo recomendado para cada semana

Não transforme 10 horas em consumo passivo. O estudo deve terminar em evidência e entrega.

2–3hteoria essencial, usando tradução do navegador
5–6hlaboratórios e testes manuais no Burp
1–2haplicação em laboratório sem roteiro
1hevidência, relatório e retrospectiva

Como usar PortSwigger e TryHackMe

PortSwigger Web Security Academy é a fonte técnica principal. Faça uma seleção de labs, não “todos os labs” em uma semana. TryHackMe Web Application Pentesting entra como explicação guiada e reforço; use apenas os módulos indicados e mantenha toda a carga dentro das 10 horas. Quando travar: 25 minutos tentando, consulte uma dica; após 45 minutos, leia a solução, feche-a e reproduza novamente sem guia.

0 de 72 etapas · 0%
M1 · Semanas 01–04

Fundamentos e método

Aprender somente o Linux, HTTP e Burp necessários para testar aplicações. O objetivo não é virar administrador de sistemas: é conseguir observar, repetir e documentar o comportamento de uma aplicação.

base operacional
Terminal suficiente para trabalhar sem travarLeitura completa de requisições e respostas HTTPUso diário de Proxy, Repeater, Decoder e IntruderOrganização de evidências e notas de teste
S01 Linux mínimo para pentest webMontar um ambiente de estudo e conseguir navegar, buscar, filtrar, baixar, inspecionar e registrar dados pelo terminal sem depender de tutoriais para cada comando. terminal
Resultado esperado

Montar um ambiente de estudo e conseguir navegar, buscar, filtrar, baixar, inspecionar e registrar dados pelo terminal sem depender de tutoriais para cada comando.

Conteúdo que precisa dominar

  • Sistema de arquivos, caminhos absolutos e relativos
  • Permissões no nível de leitura e execução
  • Pipes e redirecionamento
  • grep, find, less, head, tail, cut e sort
  • curl, wget, jq e openssl no uso cotidiano
  • Docker apenas para subir laboratórios

Laboratórios da semana

  • Bandit 0–12
  • Subir OWASP Juice Shop com Docker e confirmar a porta local
  • Fazer uma requisição GET e uma POST com curl
  • Formatar uma resposta JSON com jq

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Crie um repositório privado de notas com uma folha de consulta contendo apenas os comandos que você realmente usou. Para cada comando, registre um exemplo real e o resultado esperado.

Entrega de portfólio

`comandos-pentest-web.md` + arquivo `setup.md` explicando como subir e derrubar seu laboratório local.

Critério para avançar

Você consegue subir o laboratório, encontrar um arquivo, filtrar texto e consultar uma API JSON sem copiar uma sequência pronta.

Evite

Não estudar administração Linux, hardening, serviços de rede ou shell scripting avançado nesta fase.

S02 HTTP, navegador e fronteiras de confiançaLer uma transação HTTP completa e explicar quais dados o cliente controla, como o navegador mantém estado e quais controles pertencem ao navegador ou ao servidor. fundamento web
Resultado esperado

Ler uma transação HTTP completa e explicar quais dados o cliente controla, como o navegador mantém estado e quais controles pertencem ao navegador ou ao servidor.

Conteúdo que precisa dominar

  • Métodos, status, headers e corpo
  • Cookies, atributos Secure, HttpOnly e SameSite
  • Sessão, cache e redirecionamentos
  • Origin, site, same-origin policy e CORS
  • Content-Type e codificação de URL
  • TLS no nível necessário para testes web

Laboratórios da semana

  • Capturar no DevTools login, logout e renovação de sessão de um app local
  • Alterar método, Content-Type, query string e body com curl
  • Comparar respostas 200, 302, 401, 403, 404 e 500
  • Identificar todos os cookies e atributos de uma sessão

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Desenhe o fluxo de uma ação do seu app: navegador → frontend → API → banco/serviço. Marque em vermelho tudo que o usuário consegue alterar antes de a requisição chegar ao servidor.

Entrega de portfólio

Diagrama simples do fluxo HTTP + tabela de cookies, headers e parâmetros controláveis pelo cliente.

Critério para avançar

Você consegue olhar uma requisição desconhecida e explicar autenticação, estado, formato, origem e possíveis pontos de manipulação.

Evite

Não decorar headers. Entenda quem os define, quem confia neles e o que muda quando você os altera.

S03 Burp Suite como ferramenta principalUsar o Burp sem depender do navegador para repetir, comparar e modificar requisições. Burp
Resultado esperado

Usar o Burp sem depender do navegador para repetir, comparar e modificar requisições.

Conteúdo que precisa dominar

  • Proxy e histórico HTTP
  • Escopo e interceptação seletiva
  • Repeater e organização por abas
  • Decoder e Comparer
  • Intruder Community e limitações
  • Match/replace e comentários
  • Evidências reproduzíveis

Laboratórios da semana

  • Configurar escopo para ignorar domínios externos
  • Enviar login e uma chamada autenticada ao Repeater
  • Usar Decoder em URL, Base64 e HTML
  • Comparar duas respostas de usuários diferentes
  • Executar um ataque pequeno no Intruder contra laboratório autorizado

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

No seu app local, capture uma operação completa de CRUD. Repita sem a interface, altere um campo escondido e remova headers até descobrir quais são realmente necessários.

Entrega de portfólio

Arquivo de projeto do Burp ou capturas organizadas + checklist pessoal de fluxo Proxy → Repeater → evidência.

Critério para avançar

Você consegue reproduzir uma ação exclusivamente pelo Repeater e produzir uma sequência de passos que outra pessoa consegue repetir.

Evite

Não instalar dezenas de extensões. Primeiro domine as ferramentas nativas e mantenha o ambiente previsível.

S04 Metodologia, escopo e primeiro relatórioTransformar exploração solta em um teste autorizado, rastreável e comunicável. ofício
Resultado esperado

Transformar exploração solta em um teste autorizado, rastreável e comunicável.

Conteúdo que precisa dominar

  • Escopo, regras de engajamento e limitações
  • Hipóteses e casos de teste
  • Evidência mínima suficiente
  • Passos de reprodução
  • Impacto técnico e impacto de negócio
  • CWE e introdução ao CVSS
  • Reteste e estado do achado

Laboratórios da semana

  • Ler cinco relatórios públicos e comparar estruturas
  • Classificar três falhas de laboratório com CWE
  • Pontuar duas falhas no CVSS v4.0 e justificar cada métrica
  • Escrever e retestar um achado no próprio laboratório

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Escolha uma falha simples já reproduzida e escreva um relatório com título, resumo, ativo afetado, pré-condições, passos, evidências, impacto, CWE, CVSS, recomendação e reteste.

Entrega de portfólio

Primeiro relatório profissional em Markdown e um template reutilizável de achado.

Critério para avançar

Um desenvolvedor consegue reproduzir e compreender o risco sem conversar com você, e um gestor entende por que o problema importa.

Evite

Não aumentar severidade para chamar atenção. Severidade sem justificativa prejudica credibilidade.

M2 · Semanas 05–08

Identidade, autenticação e acesso

Testar quem o usuário é, como mantém a sessão e o que pode acessar. É uma das áreas mais valiosas para Web/API Pentest porque envolve impacto real e muitas falhas de lógica.

alto impacto
Enumeração, força bruta e recuperação de contaCookies, sessões, JWT e OAuth/OIDCIDOR/BOLA e escalação de privilégiosMFA, troca de e-mail e fluxos de conta
S05 Testes de autenticaçãoAvaliar sistematicamente cadastro, login, recuperação e proteção contra tentativas abusivas. login
Resultado esperado

Avaliar sistematicamente cadastro, login, recuperação e proteção contra tentativas abusivas.

Conteúdo que precisa dominar

  • Enumeração de usuários
  • Política de senha e credenciais padrão
  • Brute force, credential stuffing e rate limit
  • Recuperação e alteração de senha
  • Tokens previsíveis, reutilização e expiração
  • Diferenças de resposta e timing

Laboratórios da semana

  • 3–5 labs Apprentice/Practitioner de autenticação
  • Testar enumeração por mensagem, status, tamanho e tempo
  • Observar rate limit por IP, conta, sessão e endpoint
  • Mapear o fluxo completo de recuperação de senha

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Monte uma matriz para seu app local: cadastro, login, logout, alterar senha, esqueci a senha, alterar e-mail e exclusão da conta. Liste estados e abusos possíveis.

Entrega de portfólio

Checklist de autenticação preenchido + um relatório de falha ou de controle validado.

Critério para avançar

Você consegue testar autenticação sem se limitar a “tentar senhas” e consegue demonstrar impacto no fluxo de conta.

Evite

Não realizar brute force em alvo real sem permissão explícita e limites definidos no escopo.

S06 Sessões, JWT e OAuth/OIDCEntender como identidade e estado atravessam cookies, tokens e fluxos de autorização, identificando erros de implementação. tokens
Resultado esperado

Entender como identidade e estado atravessam cookies, tokens e fluxos de autorização, identificando erros de implementação.

Conteúdo que precisa dominar

  • Fixação, roubo, renovação e invalidação de sessão
  • Atributos de cookie e timeout
  • JWT: header, claims, assinatura, algoritmo e chaves
  • OAuth roles, redirect_uri, state e PKCE
  • Diferença entre autenticação e autorização
  • Logout e revogação

Laboratórios da semana

  • 3 labs de JWT
  • 2 labs de OAuth
  • Testar invalidação no logout e na troca de senha
  • Comparar sessão em dois navegadores e após mudança de privilégio

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Desenhe o ciclo de vida do token do seu app: emissão, armazenamento, envio, renovação, revogação e expiração. Teste o que acontece quando cada etapa é manipulada.

Entrega de portfólio

Diagrama do ciclo de sessão/token + relatório de teste com evidências positivas e negativas.

Critério para avançar

Você consegue explicar por que “JWT assinado” não significa “sessão segura” e identificar onde o servidor deve tomar decisões.

Evite

Não focar só em `alg:none`; problemas modernos aparecem em validação de claims, chaves, fluxo e autorização.

S07 Controle de acesso, IDOR e BOLATestar acesso horizontal, vertical e contextual em páginas, funções, objetos e propriedades. #1 prioridade
Resultado esperado

Testar acesso horizontal, vertical e contextual em páginas, funções, objetos e propriedades.

Conteúdo que precisa dominar

  • Autorização horizontal e vertical
  • IDOR/BOLA em path, query, body e headers
  • Controles apenas no frontend
  • Métodos alternativos e endpoints esquecidos
  • Multi-tenant e troca de contexto
  • Matriz usuário × ação × objeto

Laboratórios da semana

  • 4–6 labs de access control
  • Criar dois usuários e uma conta administrativa no laboratório
  • Trocar IDs, UUIDs, tenant IDs e roles em todas as posições
  • Testar GET, POST, PUT, PATCH e DELETE separadamente

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Crie uma matriz de autorização do seu app com pelo menos três perfis e dez ações. Execute cada ação com a sessão errada e registre resposta, evidência e impacto.

Entrega de portfólio

Matriz de autorização + relatório de IDOR/BOLA ou evidência de cobertura adequada.

Critério para avançar

Você testa autorização por ação e objeto, e não considera um botão escondido como controle de segurança.

Evite

Não testar apenas IDs sequenciais. UUIDs também precisam de autorização e podem vazar em outras respostas.

S08 MFA e falhas de lógica em fluxos de contaEncontrar formas de pular etapas, reutilizar estados ou combinar funções legítimas para tomar uma conta. lógica
Resultado esperado

Encontrar formas de pular etapas, reutilizar estados ou combinar funções legítimas para tomar uma conta.

Conteúdo que precisa dominar

  • Bypass e recuperação de MFA
  • Troca de e-mail e telefone
  • Convites e vinculação de conta
  • Reautenticação para ações sensíveis
  • Estados incompletos e passos fora de ordem
  • Account linking e identidade federada

Laboratórios da semana

  • 2–3 labs de MFA
  • 2 labs de lógica relacionados a conta
  • Reordenar passos e reutilizar tokens
  • Testar navegação direta depois da primeira etapa

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Escolha um fluxo com três ou mais passos do seu app. Desenhe uma máquina de estados simples e teste transições não previstas: voltar, pular, repetir, trocar usuário e abrir em outra sessão.

Entrega de portfólio

Diagrama de estados + lista de abuse cases + relatório de uma quebra de fluxo ou conclusão fundamentada.

Critério para avançar

Você deixa de testar apenas inputs e começa a testar a sequência e as invariantes do processo.

Evite

Não confundir “a interface não deixa” com “o servidor não aceita”. Envie as etapas manualmente no Repeater.

M3 · Semanas 09–12

Injeções e segurança do navegador

Dominar as classes de falha que surgem quando dados não confiáveis são interpretados como SQL, HTML, comandos, caminhos ou instruções de template.

núcleo técnico
SQLi e NoSQLiXSS refletido, armazenado e DOMCSRF, CORS e fronteiras do navegadorCommand injection, SSTI e path traversal
S09 SQL Injection e NoSQL InjectionIdentificar, confirmar e explorar injeções em consultas sem depender de scanners automáticos. injeção
Resultado esperado

Identificar, confirmar e explorar injeções em consultas sem depender de scanners automáticos.

Conteúdo que precisa dominar

  • Contexto de string, número, ORDER BY e LIKE
  • UNION, error-based e blind SQLi
  • Boolean e time-based
  • NoSQL operators e sintaxe JSON
  • Limites de impacto e extração mínima
  • Diferenciação entre erro e falso positivo

Laboratórios da semana

  • 4–6 labs de SQLi incluindo ao menos um blind
  • 1–2 labs de NoSQLi
  • Confirmar manualmente cada comportamento no Repeater
  • Registrar payload, hipótese, resposta e conclusão

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Em um laboratório local, crie uma tabela de teste por parâmetro: contexto provável, caracteres especiais, mudança observada e técnica de confirmação. Não precisa escrever uma aplicação vulnerável.

Entrega de portfólio

Caderno de testes de injeção + um relatório completo com extração mínima necessária para provar impacto.

Critério para avançar

Você consegue distinguir erro de aplicação, filtro, WAF e injeção real usando respostas controladas.

Evite

Não extrair dados além do necessário em alvo autorizado. Prova de impacto deve ser proporcional e segura.

S10 XSS refletido, armazenado e DOMEntender contexto de execução e construir provas de conceito seguras para diferentes tipos de XSS. browser
Resultado esperado

Entender contexto de execução e construir provas de conceito seguras para diferentes tipos de XSS.

Conteúdo que precisa dominar

  • HTML, atributo, JavaScript e URL contexts
  • Reflected, stored e DOM XSS
  • Sources, sinks e DOM clobbering básico
  • Encoding e sanitização
  • CSP como mitigação adicional
  • Impacto real: sessão, ações e dados

Laboratórios da semana

  • 5 labs cobrindo reflected, stored e DOM
  • Identificar contexto antes de escolher payload
  • Demonstrar impacto sem capturar dados reais
  • Testar comportamento com e sem CSP quando o lab permitir

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Audite campos que refletem dados no seu app local: pesquisa, mensagens, nome de arquivo, perfil e parâmetros de URL. Registre contexto e encoding, mesmo quando não houver falha.

Entrega de portfólio

Tabela source → contexto → sink → payload seguro → resultado + relatório de XSS.

Critério para avançar

Você para de tentar o mesmo `<script>` em todos os lugares e escolhe payload com base no parser e no contexto.

Evite

Não usar payloads que enviem cookies ou dados a servidores externos. Uma PoC local visual é suficiente.

S11 CSRF, CORS e confiança no navegadorTestar se o navegador consegue ser induzido a enviar ou expor requisições em nome do usuário. origens
Resultado esperado

Testar se o navegador consegue ser induzido a enviar ou expor requisições em nome do usuário.

Conteúdo que precisa dominar

  • CSRF tokens, SameSite e métodos
  • CORS preflight, ACAO e credenciais
  • Origin e Referer
  • Clickjacking
  • Mensagens cross-window e postMessage básico
  • Diferença entre leitura e envio cross-origin

Laboratórios da semana

  • 3 labs de CSRF
  • 3 labs de CORS
  • 1 lab de clickjacking
  • Construir PoC HTML local e explicar pré-condições

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Para três ações sensíveis do seu app, registre método, autenticação, Content-Type, token anti-CSRF, SameSite e validação de Origin/Referer. Teste com PoC local.

Entrega de portfólio

Matriz de proteção cross-origin + duas PoCs seguras e autocontidas.

Critério para avançar

Você consegue prever quando uma requisição cross-origin será enviada, quando a resposta poderá ser lida e quais controles realmente bloqueiam o ataque.

Evite

Não classificar todo CORS permissivo como crítico. Impacto depende de credenciais, dados acessíveis e origem permitida.

S12 Command injection, SSTI e path traversalReconhecer quando entrada do usuário alcança shell, template ou sistema de arquivos. interpretação
Resultado esperado

Reconhecer quando entrada do usuário alcança shell, template ou sistema de arquivos.

Conteúdo que precisa dominar

  • OS command injection direto e blind
  • Separadores, argumentos e canais laterais
  • Server-side template injection
  • Path traversal e normalização
  • File inclusion como conceito
  • Confirmação segura de execução

Laboratórios da semana

  • 2–3 labs de command injection
  • 2 labs de SSTI
  • 2–3 labs de path traversal
  • Documentar como cada bypass altera a interpretação

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Escolha funcionalidades que lidam com arquivos, conversão, exportação, templates ou comandos em um laboratório. Faça um mapa entrada → componente interpretador → saída observável.

Entrega de portfólio

Mapa de superfícies de interpretação + três mini-relatórios, um por classe.

Critério para avançar

Você consegue formular uma hipótese sobre o componente interno e escolher testes que confirmem ou refutem essa hipótese.

Evite

Não executar comandos destrutivos. Use provas inofensivas, como atraso controlado ou leitura de arquivo de laboratório.

M4 · Semanas 13–16

Server-side, arquivos e lógica de negócio

Sair do payload óbvio e aprender a raciocinar sobre integrações, processamento de arquivos, estados, concorrência e regras de negócio.

raciocínio manual
SSRF e XXEUpload, desserialização e exposição de informaçãoFalhas de lógica, race conditions e WebSocketsAvaliação integrada sem roteiro
S13 SSRF e XXETestar integrações que fazem o servidor buscar recursos ou processar XML, incluindo bypasses comuns. server-side
Resultado esperado

Testar integrações que fazem o servidor buscar recursos ou processar XML, incluindo bypasses comuns.

Conteúdo que precisa dominar

  • SSRF básico, blind e via redirects
  • Allowlist, parsing de URL e DNS
  • Metadados cloud como conceito de impacto
  • XXE clássico, blind e out-of-band conceitual
  • Content-Type e formatos alternativos
  • Escopo seguro em chamadas externas

Laboratórios da semana

  • 3–4 labs de SSRF
  • 2–3 labs de XXE
  • Testar redirects e diferentes representações de IP em laboratório
  • Diferenciar resposta direta, timing e callback

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Mapeie funcionalidades de URL: webhook, importação, avatar remoto, PDF, preview, callback e integrações. Para XML, procure upload, SOAP, SVG e conversores.

Entrega de portfólio

Checklist SSRF/XXE aplicado + relatório com cadeia de impacto cuidadosamente limitada.

Critério para avançar

Você consegue explicar por que bloquear apenas `localhost` ou uma string de IP não resolve SSRF.

Evite

Nunca apontar SSRF de alvo real para redes ou serviços que não estejam explicitamente autorizados.

S14 Upload, desserialização e exposição de informaçãoAvaliar processamento de arquivos e objetos sem cair na visão simplista de “extensão permitida”. arquivos e dados
Resultado esperado

Avaliar processamento de arquivos e objetos sem cair na visão simplista de “extensão permitida”.

Conteúdo que precisa dominar

  • Validação de nome, tipo, conteúdo e armazenamento
  • Execução e acesso público
  • Polyglots como conceito
  • Desserialização insegura e gadget chains no nível conceitual
  • Stack traces, backups e artefatos esquecidos
  • Metadados e dados sensíveis em respostas

Laboratórios da semana

  • 3 labs de upload
  • 2 labs introdutórios de desserialização
  • 2 labs de information disclosure
  • Testar diferença entre upload, armazenamento, entrega e processamento

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Faça inventário de entradas de arquivo em um laboratório: extensão, MIME, magic bytes, nome, caminho, acesso, transformação e remoção. Observe também respostas de erro e arquivos esquecidos.

Entrega de portfólio

Matriz do ciclo de vida do arquivo + relatório de upload ou disclosure.

Critério para avançar

Você avalia toda a cadeia do arquivo e sabe quando uma desserialização é apenas possível ou realmente explorável.

Evite

Não enviar malware real. Use arquivos de prova inofensivos e somente em ambiente autorizado.

S15 Falhas de lógica, race conditions e WebSocketsEncontrar vulnerabilidades que scanners dificilmente identificam porque dependem de estado, concorrência e regras de negócio. manual
Resultado esperado

Encontrar vulnerabilidades que scanners dificilmente identificam porque dependem de estado, concorrência e regras de negócio.

Conteúdo que precisa dominar

  • Invariantes e abuse cases
  • Preço, quantidade, limites e cupons
  • Estados fora de ordem
  • Race conditions e ações simultâneas
  • WebSockets, mensagens e autorização
  • Impacto financeiro e operacional

Laboratórios da semana

  • 3–4 labs de lógica
  • 2 labs de race condition
  • 1–2 labs de WebSockets
  • Para cada falha, escrever a invariante que deveria permanecer verdadeira

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Escolha um processo com valor de negócio: compra, convite, limite, aprovação, saldo ou permissão. Liste pré-condições, invariantes, estados e operações concorrentes; teste no laboratório.

Entrega de portfólio

Documento de abuse cases + relatório com impacto de negócio, não apenas impacto técnico.

Critério para avançar

Você consegue explicar a regra quebrada em uma frase e demonstrar um caminho reproduzível para quebrá-la.

Evite

Não reduzir pentest a payloads. Nesta semana, perguntas sobre o negócio valem mais que listas de strings.

S16 Avaliação integrada do OWASP Juice ShopExecutar uma avaliação web curta sem saber previamente qual vulnerabilidade procurar. sem roteiro
Resultado esperado

Executar uma avaliação web curta sem saber previamente qual vulnerabilidade procurar.

Conteúdo que precisa dominar

  • Mapeamento de superfície
  • Priorização de funcionalidades
  • Teste por hipótese
  • Controle de tempo e cobertura
  • Encadeamento responsável
  • Organização de evidências

Laboratórios da semana

  • Definir escopo e tempo antes de iniciar
  • Mapear aplicação por 90 minutos sem explorar
  • Executar testes por 5 horas
  • Reservar 2 horas para relatório e 1 hora para retrospectiva

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Faça uma avaliação de 8 horas distribuídas na semana. Só consulte dicas depois de registrar hipótese, tentativa, resultado e motivo do bloqueio.

Entrega de portfólio

Relatório de pentest do Juice Shop com resumo executivo, metodologia, cobertura, achados, evidências e limitações.

Critério para avançar

Você consegue manter organização quando ninguém informa qual falha existe e termina com um relatório utilizável.

Evite

Não medir sucesso apenas pelo número de desafios resolvidos. Cobertura, raciocínio e comunicação também contam.

M5 · Semanas 17–20

Pentest de APIs

Transformar sua experiência de fullstack em vantagem ofensiva. Mapear contratos, objetos, propriedades, funções e fluxos de negócio em REST e GraphQL.

especialização
Mapeamento de endpoints e OpenAPIBOLA, BFLA e autenticação de APIsMass assignment, consumo de recursos e fluxos sensíveisGraphQL e avaliação completa do crAPI
S17 Mapeamento de APIs REST e contratos OpenAPIDescobrir e organizar endpoints, versões, objetos, propriedades e fluxos sem depender da interface web. API recon
Resultado esperado

Descobrir e organizar endpoints, versões, objetos, propriedades e fluxos sem depender da interface web.

Conteúdo que precisa dominar

  • REST, recursos e métodos
  • JSON e Content-Type
  • OpenAPI/Swagger e documentação exposta
  • Versionamento e endpoints antigos
  • Parâmetros em path, query, header e body
  • Inventário de objetos e identificadores

Laboratórios da semana

  • Mapear API pelo histórico do Burp
  • Procurar especificações OpenAPI e endpoints não usados pela UI
  • Testar métodos alternativos e versões
  • Criar inventário endpoint × método × auth × objeto

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Escolha uma API de laboratório e reconstrua uma documentação mínima apenas observando tráfego e respostas. Depois compare com Swagger/OpenAPI, se existir.

Entrega de portfólio

Inventário de API em CSV/Markdown + mapa de objetos e identificadores.

Critério para avançar

Você consegue navegar e testar a API sem depender do frontend e identifica lacunas entre documentação e implementação.

Evite

Não usar fuzzing massivo antes de entender o contrato e os limites do laboratório.

S18 Autenticação de API, BOLA e BFLATestar identidade, objetos e funções em APIs usando múltiplos usuários e perfis. API access
Resultado esperado

Testar identidade, objetos e funções em APIs usando múltiplos usuários e perfis.

Conteúdo que precisa dominar

  • API2 Broken Authentication
  • API1 BOLA
  • API5 Broken Function Level Authorization
  • Tokens em headers e cookies
  • Escopos e claims
  • Multi-tenant e contexto de organização

Laboratórios da semana

  • Criar pelo menos dois usuários e dois papéis no crAPI/lab
  • Trocar objetos em todos os métodos
  • Testar funções administrativas por rota e método
  • Modificar claims apenas para verificar se o servidor confia neles

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Monte uma matriz API: token/usuário × endpoint × método × objeto × resultado esperado. Execute testes positivos e negativos.

Entrega de portfólio

Matriz de autorização de API + dois relatórios: objeto e função.

Critério para avançar

Você diferencia BOLA de BFLA e demonstra a decisão de autorização ausente no ponto correto.

Evite

Não presumir que endpoint não listado no frontend está fora de uso ou protegido.

S19 Propriedades, mass assignment, recursos e fluxos sensíveisTestar riscos específicos de API além de IDs e login. API business
Resultado esperado

Testar riscos específicos de API além de IDs e login.

Conteúdo que precisa dominar

  • API3 Broken Object Property Level Authorization
  • Leitura excessiva e alteração de propriedades
  • Mass assignment
  • API4 Unrestricted Resource Consumption
  • API6 Sensitive Business Flows
  • API7 SSRF e API10 Unsafe Consumption
  • Paginação, filtros, batch e exportação

Laboratórios da semana

  • Adicionar propriedades não presentes na UI
  • Remover campos e observar defaults
  • Alterar paginação, tamanho, filtros e batch
  • Testar repetição segura de fluxo sensível em laboratório
  • Investigar chamadas a APIs de terceiros

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Pegue três objetos da API e registre propriedades de leitura, criação e atualização por perfil. Depois teste limites de volume e automação com valores pequenos e controlados.

Entrega de portfólio

Matriz de propriedades + relatório de mass assignment/BOPLA + nota de risco de consumo/automação.

Critério para avançar

Você testa o schema e o comportamento do objeto, não apenas a URL do endpoint.

Evite

Não causar negação de serviço. Teste limites com carga mínima e somente quando o ambiente autorizar.

S20 GraphQL e avaliação integrada do crAPITestar GraphQL e consolidar uma avaliação completa de API REST. API capstone
Resultado esperado

Testar GraphQL e consolidar uma avaliação completa de API REST.

Conteúdo que precisa dominar

  • Schema, queries, mutations e resolvers
  • Introspection e sugestões de campo
  • Aliases, batching e profundidade
  • Autorização por resolver e objeto
  • Erros e exposição de schema
  • Metodologia completa de API

Laboratórios da semana

  • 3 labs de GraphQL
  • Mapear crAPI sem guia de soluções
  • Executar testes por categoria do API Top 10
  • Produzir relatório integrado de API

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Reserve seis horas para o crAPI: uma para mapeamento, quatro para testes e uma para organizar evidências. Use uma conta por perfil quando possível.

Entrega de portfólio

Relatório de pentest de API do crAPI + inventário de endpoints + matriz OWASP API Top 10.

Critério para avançar

Você executa um teste de API com método próprio e consegue defender a cobertura e as limitações do trabalho.

Evite

Não abrir walkthrough antes de terminar sua primeira rodada e registrar os pontos cegos.

M6 · Semanas 21–24

Trabalho profissional e portfólio

Executar um teste com começo, meio e fim: escopo, plano, evidências, severidade, relatório, reteste e comunicação. Bug bounty entra como treino autorizado, não como renda principal.

empregabilidade
Planejamento e checklist WSTGRelatório técnico e executivoCVSS v4.0, CWE e retesteCapstone e portfólio profissional
S21 Recon, escopo e plano de teste profissionalPlanejar uma avaliação com limites claros, cobertura justificável e uso responsável de automação. engagement
Resultado esperado

Planejar uma avaliação com limites claros, cobertura justificável e uso responsável de automação.

Conteúdo que precisa dominar

  • Regras de engajamento
  • Ativos, ambientes e contas
  • Testes permitidos e proibidos
  • Recon passivo e ativo no escopo
  • Checklist baseado em risco
  • Estimativa, timeboxing e registro de cobertura

Laboratórios da semana

  • Escrever regras de engajamento para um laboratório
  • Selecionar casos WSTG por arquitetura e risco
  • Criar planilha de cobertura e evidências
  • Realizar recon limitado e justificar cada ferramenta

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Escolha Juice Shop, crAPI ou outro laboratório e produza um plano de teste de duas páginas antes de abrir o Burp.

Entrega de portfólio

Documento de escopo + plano de teste + matriz de cobertura e limitações.

Critério para avançar

Outra pessoa entende exatamente o que será testado, o que não será, como evidências serão registradas e quando parar.

Evite

Não confundir quantidade de ferramentas com cobertura. Cada ação precisa responder a uma hipótese ou caso de teste.

S22 Relatórios, CVSS v4.0 e retesteEntregar resultados tecnicamente corretos, priorizáveis e verificáveis. comunicação
Resultado esperado

Entregar resultados tecnicamente corretos, priorizáveis e verificáveis.

Conteúdo que precisa dominar

  • Título e resumo orientados ao risco
  • Pré-condições e passos mínimos
  • Evidências antes/depois
  • CWE e CVSS v4.0
  • Severidade versus risco de negócio
  • Recomendação sem escrever a correção
  • Reteste, residual risk e fechamento

Laboratórios da semana

  • Reescrever três achados antigos
  • Pontuar os mesmos achados com CVSS v4.0
  • Criar evidência de reteste corrigido e não corrigido
  • Produzir resumo executivo de uma página

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Pegue o relatório da semana 16 ou 20 e transforme-o em um pacote profissional: relatório executivo, relatório técnico e planilha de achados.

Entrega de portfólio

Relatório final revisado + planilha de achados + modelo de reteste.

Critério para avançar

Cada severidade possui vetor e justificativa; cada achado possui impacto, reprodução, recomendação e condição objetiva de reteste.

Evite

Não usar CVSS como sinônimo automático de prioridade. Contexto do ativo e do negócio também precisa ser comunicado.

S23 Primeiro teste externo autorizado e bug bounty como treinoAplicar metodologia em um alvo com regras reais sem transformar recompensa em objetivo principal. escopo real
Resultado esperado

Aplicar metodologia em um alvo com regras reais sem transformar recompensa em objetivo principal.

Conteúdo que precisa dominar

  • VDP versus bug bounty
  • Leitura de escopo e safe harbor
  • Duplicado, informativo e N/A
  • Teste proporcional e minimização de impacto
  • Comunicação com o programa
  • Diário de hipóteses e pontos cegos

Laboratórios da semana

  • Escolher um VDP/programa público com regras claras ou permanecer em CTF
  • Ler escopo três vezes e registrar proibições
  • Focar em uma única funcionalidade e uma classe de falha
  • Produzir submissão somente com evidência suficiente

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Realize seis horas de teste autorizado. Mantenha diário com hipótese, ação, resultado e próxima decisão. Pare imediatamente ao encontrar limite de escopo ou risco de impacto.

Entrega de portfólio

Um report submetido ou um relatório privado equivalente de CTF/laboratório + retrospectiva sobre duplicados, lacunas e eficiência.

Critério para avançar

Você segue escopo mesmo quando uma pista interessante leva para fora dele e consegue produzir um relatório responsável.

Evite

Não testar sistema do empregador, clientes, vizinhos ou qualquer terceiro sem autorização explícita e documentada.

S24 Capstone, portfólio e preparação para vagasConsolidar evidências de competência para Web/API Pentest e definir os próximos seis meses. carreira
Resultado esperado

Consolidar evidências de competência para Web/API Pentest e definir os próximos seis meses.

Conteúdo que precisa dominar

  • Portfólio sem dados sensíveis
  • Apresentação de metodologia
  • Entrevista técnica e demonstração no Burp
  • Histórias de investigação e comunicação
  • Lacunas técnicas e plano de continuidade
  • Certificações como opção, não atalho

Laboratórios da semana

  • Escolher alvo de laboratório novo
  • Planejar e executar avaliação de 6 horas
  • Produzir relatório em 2 horas
  • Apresentar um achado em 10 minutos como entrevista

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Monte um repositório público higienizado com metodologia, dois relatórios de laboratório, uma matriz de autorização, um mapa de API, um template de achado e uma retrospectiva. Não publique payloads contra alvos reais nem dados de terceiros.

Entrega de portfólio

Capstone Web/API Pentest + portfólio público + currículo/LinkedIn ajustados para Application Security Testing ou Web/API Pentest.

Critério para avançar

Você consegue demonstrar ao vivo como mapeia, testa, valida, classifica e comunica uma falha, sem depender de dizer apenas quais cursos concluiu.

Evite

Não esperar “sentir-se pronto”. Após o capstone, comece a se candidatar e use entrevistas para calibrar lacunas.

M7 · Semanas 25–28 · trilha avançada

Segurança de IA e LLMs

A fronteira onde quase ninguém tem experiência, porque não existia. A regra que organiza o módulo inteiro: prompt injection só vira crítico quando o modelo tem ferramenta na mão. Sem ferramenta, é curiosidade.

opcional
Arquitetura de aplicações com IA e fronteiras de confiançaPrompt injection direta e indiretaRAG, agentes, tool poisoning e excessive agencyRelatório de pentest de IA com CVSS v4.0
S25 Fundamentos de IA aplicadaEntender a arquitetura de uma aplicação com IA bem o suficiente para saber onde ela quebra — antes de tentar quebrá-la. base
Resultado esperado

Você desenha o fluxo de dados de uma aplicação com IA e aponta exatamente por onde entra texto não confiável e o que o modelo consegue fazer depois de lê-lo.

Conteúdo que precisa dominar

  • Como um LLM gera texto: previsão de token, não raciocínio
  • Tokens, janela de contexto e custo por requisição
  • Embeddings e busca vetorial: como texto vira número
  • RAG: recuperar, aumentar, gerar — e onde cada etapa confia em algo
  • Ferramentas (function calling) e agentes: quando o modelo deixa de só falar e passa a agir
  • Onde a aplicação integra: prompt de sistema, entrada do usuário, dado recuperado, saída do modelo

Laboratórios da semana

  • Montar um chatbot local simples que chame um modelo
  • Ligar esse chatbot a um documento seu (RAG mínimo)
  • Dar uma ferramenta ao modelo (ex.: uma função que lê arquivo)
  • Listar, no seu próprio fluxo, cada fronteira de confiança

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Pegue uma feature com IA que você usaria de verdade (resumo de ticket, busca semântica, chatbot de suporte). Desenhe o fluxo: quem escreve o prompt de sistema, de onde vem o texto do usuário, que documentos entram no contexto, que ferramentas o modelo pode chamar e com que permissões.

Entrega de portfólio

Diagrama de arquitetura da aplicação com IA + tabela de fronteiras de confiança: em cada fronteira, quem é a fonte, ela é confiável, e o que passa a valer se ela mentir.

Critério para avançar

Você consegue apontar, no seu diagrama, todo ponto onde texto que você não controla entra na janela de contexto do modelo.

Evite

Tentar atacar antes de entender a arquitetura. Sem saber que ferramentas o modelo tem, prompt injection vira só curiosidade de chat.

S26 Prompt InjectionManipular o comportamento do modelo através de entrada, e provar impacto real em vez de tirar print de resposta engraçada. labs
Resultado esperado

Você explora prompt injection direta e indireta em laboratório e sabe explicar por que uma delas é crítica e a outra é ruído.

Conteúdo que precisa dominar

  • Prompt injection direta: o atacante fala com o modelo
  • Prompt injection indireta: o atacante planta o texto que o modelo vai ler
  • Jailbreak não é injection: um quebra política, o outro quebra fronteira de confiança
  • Exfiltração de dados via saída do modelo e via ferramenta
  • Escalada de permissões: usar o modelo como confused deputy
  • LLM01 e LLM07 (vazamento de prompt de sistema) na lista 2025

Laboratórios da semana

  • Todos os labs de Web LLM attacks da PortSwigger
  • Refazer o lab de injection indireta anotando o caminho do texto hostil
  • Para cada lab, registrar: onde entrou, o que o modelo podia chamar, o que vazou
  • Um lab mystery para testar metodologia sem enunciado

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

No chatbot que você montou na S25: esconda uma instrução hostil dentro do documento que o RAG recupera. O usuário nunca digita nada malicioso — e mesmo assim o modelo obedece. Essa é a diferença entre injection direta e indireta, e é o motivo de a indireta ser a perigosa.

Entrega de portfólio

Relatório de um caso de injection indireta: vetor de entrada, o que o modelo executou, evidência reproduzível, e a mitigação que você testou (e se ela realmente segurou).

Critério para avançar

Você demonstra impacto além de "o modelo falou algo que não devia" — o modelo fez algo, leu algo ou vazou algo.

Evite

Confundir jailbreak com achado de segurança. Fazer o modelo xingar não é vulnerabilidade; fazer o modelo chamar uma API que ele não deveria é.

S27 Segurança de RAG e agentesAtacar a camada onde a IA deixa de conversar e passa a buscar, decidir e executar. construção
Resultado esperado

Você envenena a base de conhecimento de um RAG que você mesmo construiu e demonstra que o problema não está no modelo — está na confiança que a arquitetura deposita no dado recuperado.

Conteúdo que precisa dominar

  • Vetores e embeddings: LLM08 — falhas em como o texto é indexado e recuperado
  • Envenenamento de conhecimento e de dados: LLM04
  • Tool poisoning: a descrição da ferramenta também é prompt
  • Excessive agency: LLM06 — funcionalidade, permissão e autonomia demais
  • Unbounded consumption: LLM10 — o antigo "model DoS", agora incluindo denial of wallet
  • Improper output handling: LLM05 — saída do modelo indo para um sink perigoso

Laboratórios da semana

  • Construir um fluxo com RAG + pelo menos uma ferramenta
  • Envenenar um documento da base e observar a recuperação
  • Alterar a descrição de uma ferramenta e ver o modelo mudar de comportamento
  • Medir custo: quantas requisições até o gasto sair do controle
  • Ler o código das definições de ferramenta e apontar o sink

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Aqui sua vantagem de dev aparece: leia o código das definições de ferramenta do seu agente. A descrição que você escreveu para o modelo entender a função é texto que entra no contexto — logo, é superfície de ataque. Rastreie o parâmetro que o modelo preenche até onde ele é executado. Isso é revisão de código, não caça a payload.

Entrega de portfólio

Threat model do fluxo agêntico: cada ferramenta, a permissão que ela carrega, o sink que ela alcança, e o que um documento hostil consegue fazer com ela. Mais o PoC do envenenamento.

Critério para avançar

Você explica por que restringir o prompt não resolve, e por que a correção real está em permissão de ferramenta e validação de saída.

Evite

Tratar o modelo como o alvo. O modelo é o intermediário confuso; o alvo é o que está atrás dele.

S28 Pentest de IAExecutar uma avaliação completa de uma aplicação com IA e entregar no mesmo padrão profissional das semanas 21–24. avaliação
Resultado esperado

Um relatório de pentest de aplicação com IA que um time de engenharia consegue ler, reproduzir e corrigir sem te perguntar nada.

Conteúdo que precisa dominar

  • Escopo e regras de engajamento específicos de IA
  • Cobertura sistemática: as dez categorias LLM01–LLM10
  • Evidência reproduzível quando o alvo é não determinístico
  • Severidade: por que a nota vem do impacto da ferramenta, não da esperteza do prompt
  • Mitigações que funcionam: permissão mínima, validação de saída, isolamento, limites de consumo
  • Reteste: confirmar que a correção segura o vetor, não só o payload

Laboratórios da semana

  • Avaliação completa do fluxo com IA construído nas S25–S27
  • Aplicar a matriz LLM01–LLM10 como checklist de cobertura
  • Pontuar cada achado com CVSS v4.0
  • Escrever o relatório e depois retestar as próprias correções

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

O desafio real: o alvo é não determinístico. O mesmo payload pode funcionar 7 em 10 vezes. Seu relatório precisa registrar a taxa de reprodução e o setup exato (modelo, temperatura, versão do prompt) — senão o dev tenta uma vez, não reproduz, e fecha como "não aplicável".

Entrega de portfólio

Relatório técnico completo: sumário executivo, escopo, achados com CVSS v4.0, evidências, passos de reprodução com taxa de sucesso, mitigação sugerida e resultado do reteste. Este é o terceiro item do seu portfólio, ao lado do Juice Shop e do crAPI.

Critério para avançar

Você entrega um relatório que sustenta escrutínio de um engenheiro cético — e que trata o não determinismo como dado, não como desculpa.

Evite

Reportar "o modelo alucinou" como vulnerabilidade. Sem impacto em confidencialidade, integridade ou disponibilidade, é problema de qualidade, não de segurança.

M8 · Semanas 29–31 · trilha avançada

Vulnerabilidades modernas

As três classes que scanner não acha, IA não deduz sozinha e o BSCP cobra. É o que separa quem executa checklist de quem faz pentest — e é o preparo direto para o exame.

preparação BSCP
HTTP request smuggling: CL.TE, TE.CL, TE.TEWeb cache poisoning e deceptionPrototype pollution e gadget huntingReconhecimento sem enunciado: mystery labs
S29 HTTP Request SmugglingExplorar o desacordo entre front-end e back-end sobre onde uma requisição termina. BSCP
Resultado esperado

Você explora CL.TE, TE.CL e TE.TE em laboratório e explica a causa raiz sem recorrer a payload decorado.

Conteúdo que precisa dominar

  • Content-Length e Transfer-Encoding: as duas formas de dizer onde a requisição acaba
  • CL.TE — front-end usa Content-Length, back-end usa Transfer-Encoding
  • TE.CL — o inverso
  • TE.TE — os dois entendem TE, mas um pode ser induzido a ignorá-lo
  • Desync de front-end e back-end: a requisição envenenada afeta o próximo usuário
  • Cache desync e bypass de controles do front-end

Laboratórios da semana

  • Todos os labs de request smuggling, incluindo os de nível Expert
  • Refazer um lab CL.TE do zero, sem consultar a solução
  • Anotar, em cada lab, qual componente leu o quê
  • Cronometrar: no BSCP você tem cerca de 40 minutos por estágio

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Desenhe no papel, para cada variante, dois retângulos — front-end e back-end — e a mesma sequência de bytes chegando nos dois. Marque onde cada um acha que a requisição terminou. Quando o desenho ficar óbvio, você entendeu; enquanto for payload, não.

Entrega de portfólio

Explicação escrita de CL.TE e TE.CL em cinco linhas, sem jargão, para alguém que não é da área. Se não couber em cinco linhas, você decorou.

Critério para avançar

Você identifica a variante correta a partir do comportamento observado, sem testar as três no chute.

Evite

Testar smuggling fora de laboratório. Esta classe afeta outros usuários do alvo — fora de escopo autorizado, você não está pesquisando, está atacando terceiros.

S30 Web Cache PoisoningTransformar uma resposta cacheada em vetor de ataque contra todo mundo que pedir aquela página depois. BSCP
Resultado esperado

Você identifica entradas não incluídas na chave do cache e demonstra envenenamento e deception em laboratório.

Conteúdo que precisa dominar

  • Cache keys: o que entra na chave e o que fica de fora
  • Unkeyed input — o coração da falha: o que influencia a resposta mas não a chave
  • Cache poisoning: você planta, a vítima recebe
  • Cache deception: você faz o cache guardar dado privado de outra pessoa
  • Header confusion e headers de suporte do framework
  • Comportamento de CDN e camadas múltiplas de cache

Laboratórios da semana

  • Todos os labs de web cache poisoning
  • Todos os labs de web cache deception
  • Para cada lab, escrever qual entrada não estava na chave
  • Um lab mystery misturado com S29 para não decorar por tópico

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Como dev, você já configurou CDN ou cache de resposta. Volte no seu próprio projeto e responda por escrito: o que está na chave do cache? Que header influencia a resposta e não está na chave? Essa é a pergunta inteira da semana.

Entrega de portfólio

Documento explicando a diferença entre poisoning e deception com um exemplo de cada, e por que o impacto de ambos é sobre terceiros, não sobre você.

Critério para avançar

Você localiza a entrada não incluída na chave antes de tentar qualquer payload.

Evite

Testar em alvo real. Cache poisoning atinge todos os usuários da página — é a classe mais fácil de causar dano acidental. Só laboratório, ou escopo explicitamente autorizado.

S31 Prototype PollutionPoluir a cadeia de protótipos do JavaScript e caçar os gadgets que transformam isso em execução. BSCP
Resultado esperado

Você explora prototype pollution client-side e server-side e encontra um gadget lendo código-fonte, não lista de payload.

Conteúdo que precisa dominar

  • A cadeia de protótipos do JavaScript: por que ela existe
  • __proto__ e constructor.prototype como vetores
  • Pollution client-side: da URL até o sink no navegador
  • Pollution server-side: Node, merge recursivo e configuração
  • Gadget hunting: achar a propriedade que, poluída, vira execução
  • Por que o seu spread, merge e Object.assign são a origem disso

Laboratórios da semana

  • Todos os labs de prototype pollution, client e server-side
  • Encontrar um gadget lendo o código de uma biblioteca real
  • Escrever um merge vulnerável e depois corrigi-lo
  • Testar se a correção segura __proto__ e constructor.prototype

Leitura e prática essenciais

Aprofundamento opcional

Prática manual

Gadget hunting é leitura de código-fonte — e é aqui que ser dev vale mais que qualquer certificação. Pegue uma biblioteca Node que você usa de verdade. Sem rodar: procure onde ela lê uma propriedade de configuração sem verificar se é própria do objeto. Rastreie até um sink. Quase nenhum pentester faz isso; você já lê código há dois anos.

Entrega de portfólio

O gadget anotado: o caminho da propriedade poluída até o sink, com o trecho de código real que confia no protótipo. Este artefato é o que o OSWE cobra e é a peça mais forte do seu portfólio.

Critério para avançar

Você encontra um gadget num código que nunca viu, lendo, e explica por que ele existe — em vez de copiar um payload conhecido.

Evite

Parar nos labs. O lab te dá o gadget pronto; o valor da semana está em achar um sozinho num código real.

Objetivo final: duas trilhas, dois destinos

As 24 semanas base já te colocam no mercado. As 7 semanas avançadas mudam a faixa em que você entra. Fazer só a base é uma decisão legítima — fazer a avançada antes da base não é.

Trilha base · S01–S24 · 240hConseguir a primeira vaga. Fazer bug bounty. Executar pentests simples de web e API, com relatório profissional e escopo respeitado.
Trilha avançada · S25–S31 · 70hPreparação para o BSCP. Vulnerabilidades modernas que scanner não acha. Segurança de IA. Consultoria ofensiva.

Marco após a S31: agende o BSCP quando resolver mystery labs sem consulta — normalmente 2 a 4 meses depois. O OSCP não entra nesta rota: é focado em infraestrutura. O OSWE entra, mas por volta do ano 2 ou 3 — e a S31 é a semente dele.

Cobertura e referências

O OWASP Top 10 ajuda a organizar riscos, mas a metodologia principal é o WSTG; para APIs, a referência é o OWASP API Security Top 10:2023.

OWASP Top 10:2025 — Broken Access ControlS07, S08, S18, S19
Security Misconfiguration e exposiçãoS02, S13, S14, S17
Software Supply ChainVisão geral apenas; não é foco operacional desta trilha
Cryptographic FailuresS02, S06 e testes de transporte/sessão
InjectionS09, S10, S12, S13
Insecure Design e lógicaS08, S15
Authentication FailuresS05, S06, S08, S18
Integrity, logging e exceptional conditionsCobertura de teste em S14, S16, S20 e S21
OWASP API Top 10:2023S17–S20
OWASP Top 10 para LLM 2025M7 · S25–S28 (trilha avançada)
Classes modernas (smuggling, cache, prototype)M8 · S29–S31 (trilha avançada)
Metodologia WSTGS04, aplicada em toda a trilha e consolidada em S21–S24

Fontes permanentes

Guarde estas páginas. Elas serão consultadas durante toda a carreira.

PortSwigger Academy

Teoria atualizada, learning paths e laboratórios web gratuitos.

abrir fonte

OWASP WSTG

Metodologia e catálogo de casos de teste para aplicações web.

abrir fonte

OWASP API Security

Riscos e cenários específicos de APIs.

abrir fonte

TryHackMe Web App Pentesting

Reforço guiado e laboratórios integrados.

abrir fonte

Hacker101

Treinamento e CTF gratuito voltados a web security.

abrir fonte

FIRST CVSS v4.0

Padrão atual para descrição técnica de severidade.

abrir fonte