Amon2::Plugin::Web::CSRFDefender w wersjach od 7.00 do 7.03 dla Perla generuje niezabezpieczony identyfikator sesji. Funkcja generate_session_id próbuje czytać bajty z urządzenia /dev/urandom, ale jeśli jest niedostępne, generuje bajty przy użyciu hash SHA-1 z seed'em opartym na wbudowanej funkcji rand(), PID'zie i wysokorozdzielczym czasem epoki. PID pochodzi z małego zestawu numerów, a czas epoki może być odgadnięty, jeśli nie zostanie ujawniony w nagłówku HTTP Date. Wbudowana funkcja rand nie jest odpowiednia do użytku kryptograficznego. Wersje Amon2::Plugin::Web::CSRFDefender sprzed 7.00 były częścią Amon2, która była podatna na niezabezpieczone identyfikatory sesji ze względu na CVE-2025-15604. Autorowi zdeprecjonował ten moduł.
▸ Pokaż oryginał (EN)
Amon2::Plugin::Web::CSRFDefender versions from 7.00 through 7.03 for Perl generate an insecure session id. The generate_session_id function will attempt to read bytes from the /dev/urandom device, but if that is unavailable then it generates bytes using 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. Amon2::Plugin::Web::CSRFDefender versions before 7.00 were part of Amon2, which was vulnerable to insecure session ids due to CVE-2025-15604. Note that the author has deprecated this module.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LTokuhirom Amon2\
APPTokuhirom\
Powiązane podatności
Amon2 dla Perl — słabe generowanie losowości w funkcjach bezpieczeństwa
UnQLite dla Perl — osadzona nieaktualna biblioteka z potencjalnym heap overflow
HTTP::Session2 w wersji 1.09 i wcześniejszych dla Perla nie waliduje formatu identyfikatorów sesji dostarczony...
Wersje HTTP::Session2 poniżej 1.12 dla Perl mogą generować słabe identyfikatory sesji przy użyciu funkcji rand...