---
id: CVE-2026-3256
title: >-
  HTTP::Session versions before 0.54 for Perl defaults to using insecurely
  generated session ids.


  HTTP::Session defaults to using HTTP::Session::ID::SHA1 to generate session
  ids using a SHA-1 hash seeded with the built-in rand function, t…
summary: >-
  HTTP::Session versions before 0.54 for Perl defaults to using insecurely
  generated session ids.


  HTTP::Session defaults to using HTTP::Session::ID::SHA1 to generate session
  ids using a SHA-1 hash seeded with the built-in rand function, t…
severity: critical
cvss: 9.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cwe:
  - CWE-338
  - CWE-340
published: '2026-03-28'
updated: '2026-06-29'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-3256'
references:
  - url: >-
      https://metacpan.org/release/KTAT/http-session-0.53/source/lib/HTTP/Session/ID/MD5.pm
    label: 9b29abf9-4ab0-4765-b253-1875cd9b441e
  - url: >-
      https://metacpan.org/release/KTAT/http-session-0.53/source/lib/HTTP/Session/ID/SHA1.pm
    label: 9b29abf9-4ab0-4765-b253-1875cd9b441e
  - url: 'https://metacpan.org/release/TOKUHIROM/http-session-0.54/changes'
    label: 9b29abf9-4ab0-4765-b253-1875cd9b441e
  - url: 'https://security.metacpan.org/docs/guides/random-data-for-security.html'
    label: 9b29abf9-4ab0-4765-b253-1875cd9b441e
  - url: 'http://www.openwall.com/lists/oss-security/2026/03/28/5'
    label: af854a3a-2127-422b-91ae-364da2661108
tags:
  - nvd
epss: 0.0053
epssPercentile: 0.43812
ingestedAt: '2026-06-29T13:24:34.817Z'
---

## Overview

HTTP::Session versions before 0.54 for Perl defaults to using insecurely generated session ids.

HTTP::Session defaults to using HTTP::Session::ID::SHA1 to generate session ids using a SHA-1 hash seeded with the built-in rand function, the high resolution 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.

The distribution includes HTTP::session::ID::MD5 which contains a similar flaw, but uses the MD5 hash instead.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
