Cache poisoning

Só leitura — não altera nada no alvo. Só em alvo seu ou autorizado por escrito.

O vetor

Vetor: envenenar o cache (CDN) para servir conteúdo malicioso a outros usuários via chaves de cache mal definidas (unkeyed headers). O que testamos: se headers não-chaveados influenciam a resposta cacheada.

Os passos

Passo 1 (🟢) — sondar reflexão de header em resposta cacheável:

curl -s -D - "$BASE/" -H "X-Forwarded-Host: pentest.example" -o /dev/null | grep -iE "cache|x-forwarded|age"

O que esperar

  • VULNERÁVEL: header não-chaveado (ex.: X-Forwarded-Host) reflete na resposta e é cacheado para todos.
  • SEGURO: cache key inclui o que importa; headers não confiáveis ignorados.

Como corrigir

Correção (P1): revisar cache keys; não refletir headers de entrada; Vary correto. Limpeza: nenhuma (mas se envenenou lab, purgar o cache).

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