Catalyst::Plugin::Session before version 0.44 for Perl generates session ids insecurely.
The session id is generated from a (usually SHA-1) hash of a simple counter, the epoch time, the built-in rand function, the PID and the current Catalyst context. This information is of low entropy. 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.
{
"cna_assigner": "CPANSec",
"cwe_ids": [
"CWE-338",
"CWE-340"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/40xxx/CVE-2025-40924.json"
}{
"extracted_events": [
{
"range": [
{
"introduced": "0.01"
},
{
"fixed": "0.44"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"fixed": "c0e2b4ab1e42ebce1008286db8c571b6ee98c22c"
}
],
"source": "REFERENCES_COMMIT"
}
]
}