{"api_version":"1","generated_at":"2026-05-05T12:38:51+00:00","cve":"CVE-2026-5080","urls":{"html":"https://cve.report/CVE-2026-5080","api":"https://cve.report/api/cve/CVE-2026-5080.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-5080","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-5080"},"summary":{"title":"Dancer::Session::Abstract versions through 1.3522 for Perl generates session ids insecurely","description":"Dancer::Session::Abstract versions through 1.3522 for Perl generates session ids insecurely.\n\nThe session id is generated from summing the character codepoints of the absolute pathname with the process id, the epoch time and calls to the built-in rand() function to return a number between 0 and 999-billion, and concatenating that result three times.\n\nThe path name might be known or guessed by an attacker, especially for applications known to be written using Dancer with standard installation locations.\n\nThe epoch time can be guessed by an attacker, and may be leaked in the HTTP header.\n\nThe process id comes from a small set of numbers, and workers may have sequential process ids.\n\nThe built-in rand() function is seeded with 32-bits and is considered unsuitable for security applications.\n\nPredictable session ids could allow an attacker to gain access to systems.","state":"PUBLISHED","assigner":"CPANSec","published_at":"2026-04-30 12:16:24","updated_at":"2026-05-05 02:54:42"},"problem_types":["CWE-338","CWE-340","CWE-340 CWE-340 Generation of Predictable Numbers or Identifiers","CWE-338 CWE-338 Use of Cryptographically Weak Pseudo-Random Number Generator"],"metrics":[{"version":"3.1","source":"ADP","type":"DECLARED","score":"5.9","severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","data":{"attackComplexity":"HIGH","attackVector":"NETWORK","availabilityImpact":"HIGH","baseScore":5.9,"baseSeverity":"MEDIUM","confidentialityImpact":"NONE","integrityImpact":"NONE","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","version":"3.1"}},{"version":"3.1","source":"134c704f-9b21-4f2e-91b3-4a467353bcc0","type":"Secondary","score":"5.9","severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","baseScore":5.9,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"HIGH","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"NONE","integrityImpact":"NONE","availabilityImpact":"HIGH"}}],"references":[{"url":"https://metacpan.org/release/BIGPRESH/Dancer-1.3522/source/lib/Dancer/Session/Abstract.pm#L85-102","name":"https://metacpan.org/release/BIGPRESH/Dancer-1.3522/source/lib/Dancer/Session/Abstract.pm#L85-102","refsource":"9b29abf9-4ab0-4765-b253-1875cd9b441e","tags":["Product"],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://security.metacpan.org/patches/D/Dancer/1.3522/CVE-2026-5080-r1.patch","name":"https://security.metacpan.org/patches/D/Dancer/1.3522/CVE-2026-5080-r1.patch","refsource":"9b29abf9-4ab0-4765-b253-1875cd9b441e","tags":["Patch"],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"http://www.openwall.com/lists/oss-security/2026/04/30/19","name":"http://www.openwall.com/lists/oss-security/2026/04/30/19","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":["Mailing List","Third Party Advisory"],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-5080","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-5080","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"BIGPRESH","product":"Dancer::Session::Abstract","version":"affected 1.3522 custom","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[{"source":"CNA","title":"","value":"Apply the linked patch.","time":"","lang":"en"}],"exploits":[],"credits":[],"nvd_cpes":[{"cve_year":"2026","cve_id":"5080","vulnerable":"1","versionEndIncluding":"1.3522","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"perldancer","cpe5":"dancer\\","cpe6":"\\","cpe7":"session\\","cpe8":"\\","cpe9":"abstract","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"}],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"5080","cve":"CVE-2026-5080","epss":"0.000380000","percentile":"0.110920000","score_date":"2026-05-04","updated_at":"2026-05-05 00:07:31"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"adp":[{"metrics":[{"cvssV3_1":{"attackComplexity":"HIGH","attackVector":"NETWORK","availabilityImpact":"HIGH","baseScore":5.9,"baseSeverity":"MEDIUM","confidentialityImpact":"NONE","integrityImpact":"NONE","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","version":"3.1"}},{"other":{"content":{"id":"CVE-2026-5080","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","timestamp":"2026-04-30T13:24:08.225699Z","version":"2.0.3"},"type":"ssvc"}}],"providerMetadata":{"dateUpdated":"2026-04-30T13:34:16.359Z","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP"},"title":"CISA ADP Vulnrichment"},{"providerMetadata":{"dateUpdated":"2026-04-30T18:29:20.778Z","orgId":"af854a3a-2127-422b-91ae-364da2661108","shortName":"CVE"},"references":[{"url":"http://www.openwall.com/lists/oss-security/2026/04/30/19"}],"title":"CVE Program Container"}],"cna":{"affected":[{"collectionURL":"https://cpan.org/modules","defaultStatus":"unaffected","packageName":"Dancer","product":"Dancer::Session::Abstract","programFiles":["lib/Dancer/Session/Abstract.pm"],"programRoutines":[{"name":"Dancer::Session::Abstract::build_id"}],"repo":"https://github.com/PerlDancer/Dancer","vendor":"BIGPRESH","versions":[{"lessThanOrEqual":"1.3522","status":"affected","version":"0","versionType":"custom"}]}],"descriptions":[{"lang":"en","value":"Dancer::Session::Abstract versions through 1.3522 for Perl generates session ids insecurely.\n\nThe session id is generated from summing the character codepoints of the absolute pathname with the process id, the epoch time and calls to the built-in rand() function to return a number between 0 and 999-billion, and concatenating that result three times.\n\nThe path name might be known or guessed by an attacker, especially for applications known to be written using Dancer with standard installation locations.\n\nThe epoch time can be guessed by an attacker, and may be leaked in the HTTP header.\n\nThe process id comes from a small set of numbers, and workers may have sequential process ids.\n\nThe built-in rand() function is seeded with 32-bits and is considered unsuitable for security applications.\n\nPredictable session ids could allow an attacker to gain access to systems."}],"impacts":[{"capecId":"CAPEC-115","descriptions":[{"lang":"en","value":"CAPEC-115 Authentication Bypass"}]}],"problemTypes":[{"descriptions":[{"cweId":"CWE-340","description":"CWE-340 Generation of Predictable Numbers or Identifiers","lang":"en","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-338","description":"CWE-338 Use of Cryptographically Weak Pseudo-Random Number Generator","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2026-04-30T11:49:29.736Z","orgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","shortName":"CPANSec"},"references":[{"tags":["patch"],"url":"https://security.metacpan.org/patches/D/Dancer/1.3522/CVE-2026-5080-r1.patch"},{"url":"https://metacpan.org/release/BIGPRESH/Dancer-1.3522/source/lib/Dancer/Session/Abstract.pm#L85-102"}],"source":{"discovery":"UNKNOWN"},"title":"Dancer::Session::Abstract versions through 1.3522 for Perl generates session ids insecurely","workarounds":[{"lang":"en","value":"Apply the linked patch."}],"x_generator":{"engine":"cpansec-cna-tool 0.1"}}},"cveMetadata":{"assignerOrgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","assignerShortName":"CPANSec","cveId":"CVE-2026-5080","datePublished":"2026-04-30T11:49:29.736Z","dateReserved":"2026-03-28T19:06:14.484Z","dateUpdated":"2026-04-30T18:29:20.778Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-04-30 12:16:24","lastModifiedDate":"2026-05-05 02:54:42","problem_types":["CWE-338","CWE-340","CWE-340 CWE-340 Generation of Predictable Numbers or Identifiers","CWE-338 CWE-338 Use of Cryptographically Weak Pseudo-Random Number Generator"],"metrics":{"cvssMetricV31":[{"source":"134c704f-9b21-4f2e-91b3-4a467353bcc0","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","baseScore":5.9,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"HIGH","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"NONE","integrityImpact":"NONE","availabilityImpact":"HIGH"},"exploitabilityScore":2.2,"impactScore":3.6}]},"configurations":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:a:perldancer:dancer\\:\\:session\\:\\:abstract:*:*:*:*:*:perl:*:*","versionEndIncluding":"1.3522","matchCriteriaId":"D47CD43F-7C33-4D6F-BEFB-C820BB2D6777"}]}]}]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"5080","Ordinal":"1","Title":"Dancer::Session::Abstract versions through 1.3522 for Perl gener","CVE":"CVE-2026-5080","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"5080","Ordinal":"1","NoteData":"Dancer::Session::Abstract versions through 1.3522 for Perl generates session ids insecurely.\n\nThe session id is generated from summing the character codepoints of the absolute pathname with the process id, the epoch time and calls to the built-in rand() function to return a number between 0 and 999-billion, and concatenating that result three times.\n\nThe path name might be known or guessed by an attacker, especially for applications known to be written using Dancer with standard installation locations.\n\nThe epoch time can be guessed by an attacker, and may be leaked in the HTTP header.\n\nThe process id comes from a small set of numbers, and workers may have sequential process ids.\n\nThe built-in rand() function is seeded with 32-bits and is considered unsuitable for security applications.\n\nPredictable session ids could allow an attacker to gain access to systems.","Type":"Description","Title":"Dancer::Session::Abstract versions through 1.3522 for Perl gener"}]}}}