Fallos del tipo CWE-177

12 resultados

Tratamento inadequado de codificação URL (codificação hexadecimal)

Ocorre quando a aplicação não valida ou interpreta corretamente caracteres codificados em hexadecimal dentro de URLs (como %2F para barra ou %00 para nulo). Um atacante pode contornar filtros de segurança ou injetar caracteres perigosos disfarçados em codificação hex, levando a bypass de validações, directory traversal ou injeção de comandos.

Ejemplo

Um WAF filtra requisições com '../' para bloquear directory traversal, mas não decodifica URLs antes de validar. Um atacante envia GET /files/%2e%2e%2fadmin (onde %2e = ponto e %2f = barra) e consegue acessar diretórios restritos porque a validação vê apenas %2e%2e%2f, passando despercebido.

Cómo mitigar

Normalize e decodifique completamente a URL antes de qualquer validação ou processamento de segurança. Implemente listas de bloqueio/permissão de caracteres após decodificação, não antes. Teste seus filtros contra múltiplas camadas de encoding (dupla codificação, variações de caso em hex).