Fallos del tipo CWE-625

12 resultados

Expressão regular excessivamente permissiva

Uma regex mal definida que aceita entradas muito mais amplas do que o esperado, validando dados que deveriam ser rejeitados. Isso acontece quando se usa padrões soltos demais (como `.*` sem âncoras), permitindo bypass de validações de segurança e aceitando dados malformados ou maliciosos.

Ejemplo

Um formulário que valida e-mail com a regex `.*@.*` aceita qualquer string com um `@` no meio, incluindo `admin@x` ou strings com caracteres especiais perigosos. O sistema então processa esses dados inválidos como válidos, causando injeção SQL ou XSS.

Cómo mitigar

Use regexes precisas com âncoras (`^` e `$`), classes de caracteres específicas e quantificadores definidos (ex: `[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$` para e-mail). Sempre teste a regex contra casos de borda e entradas malformadas; prefira validação em etapas (tipo, comprimento, formato) em vez de uma única regex complexa.