Fallos del tipo CWE-333

1 resultado

Tratamento inadequado de entropia insuficiente em gerador de números aleatórios

A aplicação usa um gerador de números aleatórios (TRNG — True Random Number Generator) sem verificar se há entropia suficiente disponível no sistema. Quando a entropia está baixa, os números 'aleatórios' gerados tornam-se previsíveis ou repetitivos, comprometendo a segurança de operações que dependem de aleatoriedade real, como geração de chaves criptográficas ou tokens de sessão.

Ejemplo

Um sistema embarcado tenta gerar uma chave de criptografia lendo /dev/urandom logo após o boot, quando o pool de entropia ainda não foi suficientemente alimentado por eventos do hardware. Resultado: chaves fracas são produzidas, permitindo que um atacante as adivinhe com esforço computacional viável.

Cómo mitigar

Sempre verificar a entropia disponível antes de gerar números sensíveis — use gerf_entropy() ou equivalente. Como fallback, implemente um mecanismo de bloqueio que aguarde entropia suficiente, ou integre fontes externas de entropia (HSM, serviço de geração remota). Para desenvolvimento, teste o gerador com ferramentas de análise de aleatoriedade (ent, diehard).