Description
PAGI::Middleware::Session::Store::Cookie versions through 0.001003 for Perl generates random bytes insecurely.

PAGI::Middleware::Session::Store::Cookie attempts to read bytes from the /dev/urandom device directly. If that fails (for example, on systems without the device, such as Windows), then it will emit a warning that recommends the user install Crypt::URandom, and then return a string of random bytes generated by the built-in rand function, which is unsuitable for cryptographic applications.

This modules does not use the Crypt::URandom module, and installing it will not fix the problem.

The random bytes are used for generating an initialisation vector (IV) to encrypt the cookie.

A predictable IV may make it easier for malicious users to decrypt and tamper with the session data that is stored in the cookie.
Published: 2026-03-31
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: Session data compromise due to predictable IV
Action: Immediate Patch
AI Analysis

Impact

PAGI::Middleware::Session::Store::Cookie versions up to 0.001003 generate random bytes for the encryption IV in an insecure manner by using a fallback built‑in random function when reading from /dev/urandom fails. This unreliable source produces a predictable initialization vector, which undermines the confidentiality of the encrypted session cookie. As a result, an attacker who can observe or influence the cookie may be able to decrypt and tamper with session data stored in the cookie, potentially leading to unauthorized access or elevation of privileges within the web application.

Affected Systems

The vulnerability affects the Perl module pagI::Middleware::Session::Store::Cookie distributed by the vendor JJNAPIORK. Versions through 0.001003 are impacted, while the updated release 0.001004 and later contain the fix.

Risk and Exploitability

The CVSS score of 7.5 indicates a high severity, yet the EPSS score of less than 1% suggests that exploitation is unlikely at present. The vulnerability is not listed in CISA’s KEV catalog, which further reduces the observed threat level. The attack scenario inferred from the description requires an attacker to obtain or influence the encrypted cookie; with a predictable IV, decryption becomes feasible, enabling tampering. While the primary vector is local or remote via web application traffic that transmits the cookie, the defined weakness hinges on the randomness flaw rather than an immediate network exploit. Therefore, the risk is significant enough to warrant prompt action but the probability of rapid exploitation remains low.

Generated by OpenCVE AI on April 3, 2026 at 22:37 UTC.

Remediation

Vendor Solution

Upgrade to version 0.001004 or newer.


OpenCVE Recommended Actions

  • Upgrade to version 0.001004 or newer

Generated by OpenCVE AI on April 3, 2026 at 22:37 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 03 Apr 2026 20:15:00 +0000

Type Values Removed Values Added
First Time appeared Jjnapiork pagi\
CPEs cpe:2.3:a:jjnapiork:pagi\:\:middleware\:\:session\:\:store\:\:cookie:*:*:*:*:*:perl:*:*
Vendors & Products Jjnapiork pagi\

Wed, 01 Apr 2026 23:45:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N'}

ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Wed, 01 Apr 2026 02:15:00 +0000

Type Values Removed Values Added
First Time appeared Jjnapiork
Jjnapiork pagi::middleware::session::store::cookie
Vendors & Products Jjnapiork
Jjnapiork pagi::middleware::session::store::cookie
References

Tue, 31 Mar 2026 16:15:00 +0000

Type Values Removed Values Added
Description PAGI::Middleware::Session::Store::Cookie versions through 0.001003 for Perl generates random bytes insecurely. PAGI::Middleware::Session::Store::Cookie attempts to read bytes from the /dev/urandom device directly. If that fails (for example, on systems without the device, such as Windows), then it will emit a warning that recommends the user install Crypt::URandom, and then return a string of random bytes generated by the built-in rand function, which is unsuitable for cryptographic applications. This modules does not use the Crypt::URandom module, and installing it will not fix the problem. The random bytes are used for generating an initialisation vector (IV) to encrypt the cookie. A predictable IV may make it easier for malicious users to decrypt and tamper with the session data that is stored in the cookie.
Title PAGI::Middleware::Session::Store::Cookie versions through 0.001003 for Perl generates random bytes insecurely
Weaknesses CWE-1204
CWE-338
References

Subscriptions

Jjnapiork Pagi::middleware::session::store::cookie Pagi\
cve-icon MITRE

Status: PUBLISHED

Assigner: CPANSec

Published:

Updated: 2026-04-01T14:43:35.295Z

Reserved: 2026-03-28T19:29:58.433Z

Link: CVE-2026-5087

cve-icon Vulnrichment

Updated: 2026-03-31T18:18:48.427Z

cve-icon NVD

Status : Analyzed

Published: 2026-03-31T16:16:35.080

Modified: 2026-04-03T19:18:19.870

Link: CVE-2026-5087

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-04-07T08:07:58Z

Weaknesses