Falhas do tipo CWE-393

10 resultados

Retorno de código de status incorreto

A aplicação retorna um código HTTP ou de status que não reflete corretamente o resultado da operação realizada. Por exemplo, retornar 200 OK quando uma autenticação falhou, ou 500 quando o recurso simplesmente não existe. Isso confunde clientes legítimos, facilita ataques (enumeração de usuários, contorno de validações) e dificulta debug e monitoramento.

Exemplo

Uma API retorna 200 quando uma tentativa de login falha, em vez de 401 Unauthorized. Um atacante consegue descobrir usuários válidos observando diferenças no tempo de resposta, enquanto logs de erro não conseguem identificar falhas de autenticação corretamente.

Como mitigar

Defina e use o código de status HTTP apropriado para cada cenário: 401 para autenticação falha, 403 para acesso negado, 404 para recurso inexistente, 400 para requisição inválida. Documente a semântica esperada e revise retornos em testes de segurança, especialmente em fluxos de erro e exceção.