Falhas do tipo CWE-676

10 resultados

Uso de funções potencialmente perigosas

Fraqueza genérica que identifica o emprego de funções de biblioteca conhecidas por facilitar exploração, como strcpy(), sprintf() sem limite de tamanho, ou gets(). Essas funções não fazem validação de entrada e permitem que um atacante sobrescreva memória adjacente, causando corrupção de dados ou execução de código arbitrário.

Exemplo

Um programa C lê um nome do usuário com gets() e armazena em um buffer de 32 bytes. Um atacante envia uma string de 200 caracteres, sobrescrevendo o endereço de retorno da função e redirecionando a execução para código malicioso.

Como mitigar

Substituir funções inseguras por alternativas com limite de tamanho (strcpy → strncpy, gets → fgets, sprintf → snprintf) ou usar linguagens com gerenciamento automático de memória. Implementar verificação de limites e usar ferramentas como AddressSanitizer durante desenvolvimento para detectar acessos indevidos.