Commit Graph
2 Commits
Author SHA1 Message Date
GustavoandClaude Sonnet 5 ba8ffaede7 fix: bloqueia open-redirect via next=/\evil.com no login
_proximo_seguro() (app/routers/auth.py) so recusava next que comecasse
com "//", mas navegadores modernos tratam "/\" como equivalente a
"//" (URL protocol-relative), entao next=/\evil.com ainda era um open
redirect explorável via link de login malicioso.

Bloqueia tambem o prefixo "/\".

Teste de regressao em tests/test_router_auth.py: POST /login com
next=/\evil.com precisa redirecionar para /clientes, nao para o host
externo.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-13 21:18:46 -03:00
GustavoandClaude Sonnet 5 c4079b3e47 feat: rotas de login/logoff (app/routers/auth.py)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-13 20:38:43 -03:00