Weaknesses of type CWE-683

5 results

Chamada de função com ordem incorreta de argumentos

Ocorre quando o desenvolvedor chama uma função passando os argumentos em uma ordem diferente da esperada pela assinatura da função. Isso pode causar comportamento inesperado, corrupção de dados ou brechas de segurança, especialmente quando os argumentos têm tipos compatíveis (ambos inteiros, strings, etc.) e o compilador não detecta o erro.

Example

Uma função de validação de permissão definida como `verificar_acesso(usuario_id, permissao_requerida)` é chamada como `verificar_acesso(permissao_requerida, usuario_id)`. O código executa, mas valida a permissão errada para o usuário errado, abrindo acesso indevido.

How to mitigate

Use argumentos nomeados (keyword arguments) sempre que possível, implemente testes unitários que validem chamadas de função, configure linters e ferramentas de análise estática para detectar assinaturas inconsistentes, e considere usar tipos fortemente tipados (TypeScript, Go) ou type hints (Python) para aumentar a detecção em tempo de compilação.