Fallos del tipo CWE-157

2 resultados

Falha ao sanitizar delimitadores emparelhados

Ocorre quando o código não remove ou valida corretamente delimitadores emparelhados (como aspas, parênteses, chaves) em entrada do usuário antes de usá-la em contextos sensíveis. Um atacante pode injetar delimitadores não sanitizados para quebrar a sintaxe esperada e alterar o comportamento da aplicação, especialmente em SQL, comandos do SO ou expressões regulares.

Ejemplo

Uma aplicação busca usuários por nome aceitando entrada como 'João'; se o código monta uma query SQL concatenando direto sem sanitizar, um atacante envia 'João' AND 1=1 -- ou semelhante com aspas mal emparelhadas, quebrando a sintaxe da query e executando lógica não autorizada.

Cómo mitigar

Use prepared statements (queries parametrizadas) para SQL; valide e escape delimitadores segundo o contexto (HTML, URL, regex, shell); aplique validação de whitelist de caracteres esperados quando possível. Nunca confie em sanitização manual — use bibliotecas consolidadas da linguagem.