Использование криптографически слабого генератора псевдослучайных чисел
Этот дефект возникает при использовании криптографически слабых подпрограмм генератора псевдослучайных чисел (PRNG).
Список криптографически слабых подпрограмм, отмеченных этим средством проверки, включает:
rand, random
drand48, lrand48, mrand48, erand48, nrand48, jrand48, и их _r эквиваленты, такие как drand48_r
RAND_pseudo_bytes
Эти криптографически слабые процедуры предсказуемы и не должны использоваться в целях безопасности. Когда предсказуемое случайное значение управляет потоком выполнения, ваша программа уязвима для вредоносных атак.
Используйте более криптографически звуковые генераторы случайных чисел, такие как CryptGenRandom (Windows), OpenSSL/RAND_bytes(Linux/UNIX).
| Группа: Безопасность |
| Язык: C | C++ |
| По умолчанию: Откл. |
Синтаксис командной строки: VULNERABLE_PRNG |
| Воздействие: среднее |
| CWE ID: 330, 338 |
Deterministic random output from constant seed | Find defects (-checkers) | Predictable random output from predictable seed | Unsafe standard encryption function