CPANSA-Plack-Middleware-Session-Simple-2025-40926: Plack-Middleware-Session-Simple vulnerability
| Publisher | giterlizzi | Document category | csaf_security_advisory |
|---|---|---|---|
| Initial release date | 2026-03-05T00:00:00 | Engine | CSAF Perl Toolkit 0.26 |
| Current release date | 2026-03-05T00:00:00 | Build Date | |
| Current version | 1 | Status | final |
| CVSS v3.1 Base Score | 9.8 | Severity | |
| Original language | Language | en | |
| Also referred to | |||
Vulnerability Description
Plack::Middleware::Session::Simple versions through 0.04 for Perl generates session ids insecurely. The default session id generator returns a SHA-1 hash seeded with the built-in rand function, the epoch time, and the PID. 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. Predicable session ids could allow an attacker to gain access to systems. Plack::Middleware::Session::Simple is intended to be compatible with Plack::Middleware::Session, which had a similar security issue CVE-2025-40923.
Vulnerabilities
CVE-2025-40926
Vulnerability DescriptionPlack::Middleware::Session::Simple versions before 0.05 for Perl generates session ids insecurely.
The default session id generator returns a SHA-1 hash seeded with the built-in rand function, the epoch time, and the PID. 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.
Predictable session ids could allow an attacker to gain access to systems.
Plack::Middleware::Session::Simple is intended to be compatible with Plack::Middleware::Session, which had a similar security issue CVE-2025-40923.
| Weakness | CWE-338 : Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG) |
|---|
Product status
Known affected
| Product | Score | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Plack-Middleware-Session-Simple less than 0.05 |
|
Fixed
- Plack-Middleware-Session-Simple greater than or equal 0.05
giterlizzi
Namespace: https://github.com/giterlizzi/
gdt@cpan.org
References
- CPANSA-Plack-Middleware-Session-Simple-2025-40926 JSON self
https://raw.githubusercontent.com/giterlizzi/perl-CPANSA-CSAF/develop/csaf/white/2026/cpansa-plack-middleware-session-simple-2025-40926.json - https://github.com/kazeburo/Plack-Middleware-Session-Simple/commit/760bb358b8f53e52cf415888a4ac858fd99bb24e.patch external
https://github.com/kazeburo/Plack-Middleware-Session-Simple/commit/760bb358b8f53e52cf415888a4ac858fd99bb24e.patch - https://github.com/kazeburo/Plack-Middleware-Session-Simple/pull/4 external
https://github.com/kazeburo/Plack-Middleware-Session-Simple/pull/4 - https://metacpan.org/release/KAZEBURO/Plack-Middleware-Session-Simple-0.04/source/lib/Plack/Middleware/Session/Simple.pm#L43 external
https://metacpan.org/release/KAZEBURO/Plack-Middleware-Session-Simple-0.04/source/lib/Plack/Middleware/Session/Simple.pm#L43 - https://security.metacpan.org/docs/guides/random-data-for-security.html external
https://security.metacpan.org/docs/guides/random-data-for-security.html - https://www.cve.org/CVERecord?id=CVE-2025-40923 external
https://www.cve.org/CVERecord?id=CVE-2025-40923 - CVE-2025-40926 (NVD) external
https://nvd.nist.gov/vuln/detail/CVE-2025-40926
Revision history
| Version | Date of the revision | Summary of the revision |
|---|---|---|
| 1 | Thu Mar 5 00:00:00 2026 | First release |
Sharing rules
TLP:WHITE
For the TLP version see: https://www.first.org/tlp/