Falhas do tipo CWE-705

8 resultados

Escopo de controle de fluxo incorreto

Ocorre quando o desenvolvedor não delimita corretamente o escopo de estruturas de controle (condicionais, loops, blocos try-catch) no código, causando que instruções sejam executadas em contextos ou condições não pretendidas. O resultado é lógica imprevista, bypass de validações ou tratamento de erros ineficaz.

Exemplo

Um bloco if sem chaves envolvendo múltiplas linhas, onde apenas a primeira instrução é condicional, enquanto a segunda executa sempre — ou um except que deveria capturar uma exceção específica mas acaba capturando mais do que deveria, silenciando erros críticos.

Como mitigar

Use sempre chaves/indentação explícita em estruturas de controle, mesmo em blocos de uma linha. Revise a precedência e o escopo de cada condicional ou loop durante code review, e aplique linting/análise estática configurada para detectar escopo ambíguo.