Weaknesses of type CWE-185
27 resultsExpressão regular incorreta
Ocorre quando uma regex é mal escrita e valida dados de forma imprecisa, deixando passar entradas malformadas ou rejeitando dados legítimos. Um padrão fraco permite contorno de validações ou cause negação de serviço, pois regexes complexas podem consumir recursos excessivos (ReDoS).
Um formulário usa regex para validar email como `/^[a-zA-Z0-9@.]*$/` — tão genérica que aceita 'aaa@bbb.' (inválido) e permite injeção. Ou uma regex com backtracking excessivo como `(a+)+b` trava quando enfrenta 'aaaaaaaaaaaaaaaaaac', causando negação de serviço.
Use bibliotecas de validação prontas (como frameworks web nativos) em vez de regex manual. Se precisar regex, prefira padrões simples e âncoras (`^...$`), teste com casos extremos, e valide tamanho da entrada antes para prevenir ReDoS. Ferramentas como regex101.com ajudam a identificar problemas.