Fallos del tipo CWE-676

10 resultados

Uso de funções potencialmente perigosas

Ocorre quando o código utiliza funções de biblioteca que são conhecidas por serem inseguras ou propensas a erros — tipicamente aquelas sem validação de limites (como strcpy, sprintf, gets) ou que lidam mal com casos extremos. Essas funções podem causar buffer overflows, injeção de código ou comportamentos indefinidos se o desenvolvedor não controlar rigorosamente os dados de entrada.

Ejemplo

Um programa C que copia dados do usuário direto com strcpy(buffer, input) sem verificar o tamanho de input pode sofrer estouro de buffer e permitir execução de código arbitrário. Ou uso de sprintf sem validar o formato da string, abrindo brecha para format string attacks.

Cómo mitigar

Substitua funções inseguras por alternativas seguras e limitadas: strcpy → strncpy/strlcpy, sprintf → snprintf, gets → fgets. Sempre valide e sanitize entrada do usuário, defina limites explícitos de tamanho e, quando possível, use linguagens ou frameworks modernos que impeçam essas classes de erro automaticamente.