Версии Amon2 до 6.17 для Perl используют небезопасную реализацию random_string для функций безопасности. В версиях с 6.06 по 6.16 функция random_string попытается прочитать байты с устройства /dev/urandom, но если это недоступно, она генерирует байты путем объединения хэша SHA-1, засеянного встроенной функцией rand(), PID и времени эпохи с высоким разрешением. PID будет получен из небольшого набора чисел, и время эпохи можно будет угадать, если оно не утекло из заголовка HTTP Date.
Встроенная функция rand непригодна для криптографического использования. До версии 6.06 не было резервного варианта, когда /dev/urandom был недоступен. До версии 6.04 функция random_string использовала встроенную функцию rand() для генерации буквенно-цифровой строки в смешанном регистре.
Эту функцию можно использовать для генерации идентификаторов сеансов, генерации секретов для подписи или шифрования данных сеанса cookie и генерации токенов, используемых для защиты от подделки межсайтовых запросов (CSRF).
Показать оригинальное описание (EN)
Amon2 versions before 6.17 for Perl use an insecure random_string implementation for security functions. In versions 6.06 through 6.16, the random_string function will attempt to read bytes from the /dev/urandom device, but if that is unavailable then it generates bytes by concatenating a SHA-1 hash seeded with the built-in rand() function, the PID, and the high resolution epoch time. The PID will come from a small set of numbers, and the epoch time may be guessed, if it is not leaked from the HTTP Date header. The built-in rand function is unsuitable for cryptographic usage. Before version 6.06, there was no fallback when /dev/urandom was not available. Before version 6.04, the random_string function used the built-in rand() function to generate a mixed-case alphanumeric string. This function may be used for generating session ids, generating secrets for signing or encrypting cookie session data and generating tokens used for Cross Site Request Forgery (CSRF) protection.
Характеристики атаки
Последствия
Строка CVSS v3.1
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Tokuhirom Amon2
cpe:2.3:a:tokuhirom:amon2:*:*:*:*:*:perl:*:*
|
— |
6.17
|