HTTP::Session2 versions before 1.12 for Perl may generate weak session ids using the rand() function
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- Low · None · Low
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CISA ADP. Fix status from CNA.
Summary
HTTP::Session2 versions before 1.12 for Perl for Perl may generate weak session ids using the rand() function. The HTTP::Session2 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. HTTP::Session2 after version 1.02 will attempt to use the /dev/urandom device to generate a session id, but if the device is unavailable (for example, under Windows), then it will revert to the insecure method described above.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
- Fix · CNA HTTP::Session2 (TOKUHIROM) Fixed in 1.12
Timeline
- 2026-10-02 Threatist record created from CVE-2026-3255
- 2026-10-03 Alias added: GHSA-2p7f-7xjf-8q9q
References
Patch 1
More TOKUHIROM Http vulnerabilities
- TI-2018-15385 Improper input validation in TOKUHIROM HTTP::Session2 CVSS 3.1MEDIUM 6.5
Sources
- CVE-2026-3255 · CVE Program
- CVE-2026-3255 · NVD
- FIRST EPSS
- GHSA-2p7f-7xjf-8q9q · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences