Home

Description

Concierge::Sessions versions from 0.8.1 before 0.8.5 for Perl generate insecure session ids. The generate_session_id function in Concierge::Sessions::Base defaults to using the uuidgen command to generate a UUID, with a fallback to using Perl's built-in rand function. Neither of these methods are secure, and attackers are able to guess session_ids that can grant them access to systems. Specifically, * There is no warning when uuidgen fails. The software can be quietly using the fallback rand() function with no warnings if the command fails for any reason. * The uuidgen command will generate a time-based UUID if the system does not have a high-quality random number source, because the call does not explicitly specify the --random option. Note that the system time is shared in HTTP responses. * UUIDs are identifiers whose mere possession grants access, as per RFC 9562. * The output of the built-in rand() function is predictable and unsuitable for security applications.

PUBLISHED Reserved 2026-02-12 | Published 2026-02-16 | Updated 2026-02-17 | Assigner CPANSec

Problem types

CWE-340 Generation of Predictable Numbers or Identifiers

CWE-338 Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG)

Product status

Default status
unaffected

0.8.1 (custom) before 0.8.5
affected

Credits

Robert Rothenberg finder

References

metacpan.org/...ns-v0.8.4/diff/BVA/Concierge-Sessions-v0.8.5 related

security.metacpan.org/...uides/random-data-for-security.html related

www.rfc-editor.org/rfc/rfc9562.html related

perldoc.perl.org/5.42.0/functions/rand related

github.com/...ommit/20bb28e92e8fba307c4ff8264701c215be65e73b patch

cve.org (CVE-2026-2439)

nvd.nist.gov (CVE-2026-2439)

Download JSON