CVE-2025-15604

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.
Configurations

Configuration 1 (hide)

cpe:2.3:a:tokuhirom:amon2:*:*:*:*:*:perl:*:*

History

01 Apr 2026, 15:16

Type Values Removed Values Added
Summary
  • (es) Las versiones de Amon2 anteriores a la 6.17 para Perl utilizan una implementación insegura de random_string para funciones de seguridad. En las versiones 6.06 a la 6.16, la función random_string intentará leer bytes del dispositivo /dev/urandom, pero si este no está disponible, entonces genera bytes concatenando un hash SHA-1 inicializado con la función rand() incorporada, el PID y el tiempo de época de alta resolución. El PID provendrá de un pequeño conjunto de números, y el tiempo de época puede ser adivinado, si no se filtra del encabezado HTTP Date. La función rand incorporada no es adecuada para uso criptográfico. Antes de la versión 6.06, no había un mecanismo de respaldo cuando /dev/urandom no estaba disponible. Antes de la versión 6.04, la función random_string utilizaba la función rand() incorporada para generar una cadena alfanumérica de mayúsculas y minúsculas. Esta función puede ser utilizada para generar IDs de sesión, generar secretos para firmar o cifrar datos de sesión de cookie y generar tokens utilizados para la protección contra la falsificación de solicitudes entre sitios (CSRF).

31 Mar 2026, 20:33

Type Values Removed Values Added
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 9.8
References () https://github.com/tokuhirom/Amon/pull/135 - () https://github.com/tokuhirom/Amon/pull/135 - Issue Tracking, Patch
References () https://metacpan.org/release/TOKUHIROM/Amon2-6.17/changes - () https://metacpan.org/release/TOKUHIROM/Amon2-6.17/changes - Product
References () https://metacpan.org/release/TOKUHIROM/Amon2-6.17/diff/TOKUHIROM/Amon2-6.16#lib/Amon2/Util.pm - () https://metacpan.org/release/TOKUHIROM/Amon2-6.17/diff/TOKUHIROM/Amon2-6.16#lib/Amon2/Util.pm - Product
References () https://security.metacpan.org/docs/guides/random-data-for-security.html - () https://security.metacpan.org/docs/guides/random-data-for-security.html - Third Party Advisory
References () http://www.openwall.com/lists/oss-security/2026/03/28/4 - () http://www.openwall.com/lists/oss-security/2026/03/28/4 - Mailing List, Third Party Advisory
First Time Tokuhirom
Tokuhirom amon2
CPE cpe:2.3:a:tokuhirom:amon2:*:*:*:*:*:perl:*:*

28 Mar 2026, 21:17

Type Values Removed Values Added
References
  • () http://www.openwall.com/lists/oss-security/2026/03/28/4 -

28 Mar 2026, 19:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-03-28 19:16

Updated : 2026-04-01 15:16


NVD link : CVE-2025-15604

Mitre link : CVE-2025-15604

CVE.ORG link : CVE-2025-15604


JSON object : View

Products Affected

tokuhirom

  • amon2
CWE
CWE-338

Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG)

CWE-340

Generation of Predictable Numbers or Identifiers