Weaknesses of type CWE-343
5 resultsGeração de valores previsíveis a partir de histórico
A aplicação gera valores que deveriam ser aleatórios ou imprevisíveis (tokens, IDs de sessão, nonces) usando um padrão derivado de valores anteriores. Um atacante que observa alguns valores consegue prever os próximos, comprometendo a segurança de autenticação, autorização ou criptografia.
Um sistema gera IDs de sessão incrementando um contador ou usando timestamp + número sequencial. Ao capturar dois tokens consecutivos, o atacante deduz a fórmula e forja um terceiro token válido, assumindo a identidade de outro usuário.
Use um gerador criptográfico de números aleatórios (CSPRNG) nativo da linguagem — `secrets` em Python, `SecureRandom` em Java, `crypto.getRandomValues()` em JavaScript. Nunca implemente seu próprio algoritmo de aleatoriedade; valide que nenhum padrão matemático relaciona valores consecutivos.