Falhas do tipo CWE-698

22 resultados

Execução após redirecionamento

A aplicação redireciona o usuário para outra página (via header Location ou similar) mas continua executando código na página original após enviar o redirecionamento. O atacante pode explorar isso para executar lógica sensível que deveria ter parado, como processar transações, alterar dados ou contornar validações que viriam depois do redirect.

Exemplo

Um formulário de logout redireciona para a página inicial com header 'Location: /home', mas o código que segue ainda executa operações críticas: registra logs, atualiza banco de dados ou envia e-mails. Um atacante manipula a requisição para que essas operações ocorram com valores maliciosos antes do navegador seguir o redirect.

Como mitigar

Use 'return' ou 'exit' imediatamente após enviar o header de redirecionamento — garanta que nenhum código sensível execute após o redirect. Sempre trate o redirecionamento como um ponto de encerramento da lógica atual, estruturando o fluxo com if/else claro ou guardião de execução.