{"id":"CVE-2025-40923","details":"Plack-Middleware-Session before version 0.35 for Perl generates session ids insecurely.\n\nThe 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.\n\nPredicable session ids could allow an attacker to gain access to systems.","modified":"2026-04-02T12:48:30.415923Z","published":"2025-07-16T13:15:23.997Z","references":[{"type":"WEB","url":"http://www.openwall.com/lists/oss-security/2025/07/16/4"},{"type":"WEB","url":"https://metacpan.org/release/MIYAGAWA/Plack-Middleware-Session-0.34/source/lib/Plack/Session/State.pm#L22"},{"type":"WEB","url":"https://security.metacpan.org/docs/guides/random-data-for-security.html"},{"type":"FIX","url":"https://github.com/plack/Plack-Middleware-Session/commit/1fbfbb355e34e7f4b3906f66cf958cedadd2b9be.patch"},{"type":"FIX","url":"https://github.com/plack/Plack-Middleware-Session/pull/52"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/plack/Plack-Middleware-Session","events":[{"introduced":"0"},{"fixed":"17a30c10a8af0f1f65ab19860f413716fb6cde76"}],"database_specific":{"versions":[{"introduced":"0"},{"fixed":"0.35"}]}},{"type":"GIT","repo":"https://github.com/plack/plack-middleware-session","events":[{"introduced":"0"},{"fixed":"1fbfbb355e34e7f4b3906f66cf958cedadd2b9be"}]}],"versions":["0.09_01","0.09_02","0.09_03","0.10","0.11","0.12","0.13","0.14","0.15","0.16","0.17","0.18","0.19","0.20","0.21","0.22","0.23","0.24","0.25","0.26","0.27","0.28","0.29","0.30","0.31","0.32","0.33","0.34"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-40923.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L"}]}