Falhas do tipo CWE-154

1 resultado

Neutralização inadequada de delimitadores de nomes de variáveis

A aplicação falha em sanitizar ou validar delimitadores (como $, {, }, %) usados em nomes de variáveis antes de processá-los, permitindo que um atacante injete código ou acesse variáveis não intencipais. Isso ocorre tipicamente em linguagens com interpolação dinâmica de strings ou em sistemas de template.

Exemplo

Um script PHP processa entrada do usuário em um template e não escapa o delimitador $: se o usuário injeta "$_SERVER['DOCUMENT_ROOT']", o template interpola a variável do servidor em vez de tratar como string literal, expondo informações sensíveis ou permitindo execução arbitrária.

Como mitigar

Sempre escape ou valide rigorosamente delimitadores especiais de variáveis antes de usá-los em contextos de interpolação dinâmica. Use funções de escape específicas da linguagem (ex: em PHP, validar com allowlist ou usar templating engines que desabilitam interpolação automática em entrada de usuário) e evite executar código gerado a partir de entrada externa sem controle.