Solstice::Session версий до 1440 для Perl генерирует идентификаторы сеансов небезопасно. Метод _generateSessionID возвращает дайджест MD5, засеянный временем эпохи, случайную ссылку на хэш, вызов встроенной функции rand() и идентификатор процесса. Тот же метод используется в методе _generateID в Solstice::Subsession, который является частью того же дистрибутива.
Время эпохи можно угадать, если оно не указано в заголовке HTTP Date. Строковые хеш-ссылки будут содержать предсказуемый контент. Встроенная функция rand() заполняется 16 битами и не подходит для целей безопасности.
Идентификатор процесса состоит из небольшого набора чисел. Предсказуемые идентификаторы сеансов могут позволить злоумышленнику получить доступ к системам.
Показать оригинальное описание (EN)
Solstice::Session versions through 1440 for Perl generates session ids insecurely. The _generateSessionID method returns an MD5 digest seeded by the epoch time, a random hash reference, a call to the built-in rand() function and the process id. The same method is used in the _generateID method in Solstice::Subsession, which is part of the same distribution. The epoch time may be guessed, if it is not leaked in the HTTP Date header. Stringified hash refences will contain predictable content. The built-in rand() function is seeded by 16-bits and is unsuitable for security purposes. The process id comes from a small set of numbers. Predictable session ids could allow an attacker to gain access to systems.