CVE-2025-40923

Summary

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 Software

VendorProductVersion RangeStatus
MIYAGAWAPlack::Middleware::Session0.01 < 0.35affected

Weaknesses

  • CWE-340: CWE-340 Generation of Predictable Numbers or Identifiers
  • CWE-338: CWE-338 Use of Cryptographically Weak Pseudo-Random Number Generator

Workarounds

Users who are unable to upgrade are advised to change the sid_generator attribute of Plack::Session::State to a function that returns a securely generated session id based on a secure source of entropy from the system.

ADP Enrichment

CISA ADP Vulnrichment

  • SSVC:
  • Exploitation: none
    • Automatable: no
    • Technical Impact: partial

CVE Program Container

Additional References

References