SSRF (Server-Side Request Forgery)

Cria dado de teste (use o prefixo pentest_). Limpe depois. Só em alvo seu ou autorizado por escrito.

O vetor

Vetor: um endpoint que busca uma URL fornecida pelo usuário pode ser levado a acessar recursos internos (metadata da nuvem, serviços locais). O que testamos: se algum parâmetro aceita URL e o servidor a busca sem validar.

Os passos

Passo 1 (🟡) — apontar para o metadata endpoint:

curl -s "$BASE/api/fetch?url=http://169.254.169.254/latest/meta-data/" -w "\n%{http_code}\n"
curl -s "$BASE/api/fetch?url=http://127.0.0.1:6379/" -w "\n%{http_code}\n"

O que esperar

  • VULNERÁVEL: retorna conteúdo interno (metadata/credenciais) ou responde diferente para alvos internos.
  • SEGURO: rejeita IPs internos/file:/localhost; só permite allowlist de domínios.

Como corrigir

Correção (P0 se houver fetch de URL): allowlist de destinos; bloquear ranges privados/link-local (169.254.0.0/16, 127.0.0.0/8, 10/8, 192.168/16) e esquemas file:/gopher:; timeout curto. (CATALOGO §3.6.) Limpeza: nenhuma.

PurpleLab // plataforma de treino ofensivo + defensivo // Fase 1 — portal dinamico