What’s Vulnerable › Vulnerabilities
CVE-2025-40923: Plack-Middleware-Session before version 0.35 for Perl generates session ids insecurely
- Severity: high (CVSS 7.3 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.4% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2025-07-16 · updated 2026-06-17
- Weakness: CWE-338
Description
Plack-Middleware-Session before version 0.35 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.
Affected products
- MIYAGAWA Plack::Middleware::Session: from 0.01 before 0.35 — fixed in 0.35
How to fix
Upgrade to a fixed version: MIYAGAWA Plack::Middleware::Session 0.35. Check the vendor advisory for mitigations.
References
- https://github.com/plack/Plack-Middleware-Session/commit/1fbfbb355e34e7f4b3906f66cf958cedadd2b9be.patch
- https://github.com/plack/Plack-Middleware-Session/pull/52
- https://metacpan.org/release/MIYAGAWA/Plack-Middleware-Session-0.34/source/lib/Plack/Session/State.pm#L22
- https://security.metacpan.org/docs/guides/random-data-for-security.html
- http://www.openwall.com/lists/oss-security/2025/07/16/4
Get alerted when CVE-2025-40923 or the next vulnerability affects your stack