Weaknesses of type CWE-777
4 resultsExpressão regular sem âncoras
Quando uma regex não usa âncoras (^ e $), ela busca a sequência de caracteres em qualquer parte da string, não necessariamente do início ao fim. Isso permite que um atacante contorne validações injetando dados maliciosos antes ou depois do padrão esperado, transformando uma verificação que deveria ser rigorosa em algo permissivo demais.
Um formulário valida e-mail com regex /\w+@\w+\.\w+/ (sem âncoras). Um atacante envia "admin@site.com;DROP TABLE users" e a validação passa, porque a regex encontra "admin@site.com" em algum lugar da string, ignorando o comando SQL após o ponto e vírgula.
Use sempre âncoras na regex: /^padrão$/ para garantir que toda a string corresponde ao padrão. Além disso, valide e sanitize entrada não apenas com regex, mas com lógica adicional (whitelist, escape, prepared statements para SQL).