CVE-2026-5080
Full vulnerability record from the local CVENow database.
Description
Dancer::Session::Abstract versions through 1.3522 for Perl generates session ids insecurely. The 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. The path name might be known or guessed by an attacker, especially for applications known to be written using Dancer with standard installation locations. The epoch time can be guessed by an attacker, and may be leaked in the HTTP header. The process id comes from a small set of numbers, and workers may have sequential process ids. The built-in rand() function is seeded with 32-bits and is considered unsuitable for security applications. Predictable session ids could allow an attacker to gain access to systems.
View original CVE JSON
{
"id": "CVE-2026-5080",
"sourceIdentifier": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
"published": "2026-04-30T12:16:24.333",
"lastModified": "2026-10-26T21:10:00.170",
"vulnStatus": "Analyzed",
"cveTags": [],
"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."
},
{
"lang": "es",
"value": "Las versiones de Dancer::Session::Abstract hasta la 1.3522 para Perl generan identificadores de sesión de forma insegura.\n\nEl identificador de sesión se genera a partir de la suma de los puntos de código de los caracteres de la ruta absoluta con el identificador de proceso, el tiempo epoch y las llamadas a la función rand() incorporada para devolver un número entre 0 y 999 mil millones, y concatenando ese resultado tres veces.\n\nEl nombre de la ruta podría ser conocido o adivinado por un atacante, especialmente para aplicaciones que se sabe que están escritas usando Dancer con ubicaciones de instalación estándar.\n\nEl tiempo epoch puede ser adivinado por un atacante, y puede filtrarse en el encabezado HTTP.\n\nEl identificador de proceso proviene de un pequeño conjunto de números, y los workers pueden tener identificadores de proceso secuenciales.\n\nLa función rand() incorporada se inicializa con 32 bits y se considera inadecuada para aplicaciones de seguridad.\n\nLos identificadores de sesión predecibles podrían permitir a un atacante obtener acceso a los sistemas."
}
],
"affected": [
{
"source": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
"affectedData": [
{
"vendor": "BIGPRESH",
"product": "Dancer::Session::Abstract",
"defaultStatus": "unaffected",
"collectionURL": "https://cpan.org/modules",
"packageName": "Dancer",
"programFiles": [
"lib/Dancer/Session/Abstract.pm"
],
"programRoutines": [
{
"name": "Dancer::Session::Abstract::build_id"
}
],
"repo": "https://github.com/PerlDancer/Dancer",
"versions": [
{
"version": "0",
"lessThanOrEqual": "1.3522",
"versionType": "custom",
"status": "affected"
}
]
}
]
}
],
"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
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-04-30T13:24:08.225699Z",
"id": "CVE-2026-5080",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-338"
},
{
"lang": "en",
"value": "CWE-340"
}
]
}
],
"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"
}
]
}
]
}
],
"references": [
{
"url": "https://metacpan.org/release/BIGPRESH/Dancer-1.3522/source/lib/Dancer/Session/Abstract.pm#L85-102",
"source": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
"tags": [
"Product"
]
},
{
"url": "https://security.metacpan.org/patches/D/Dancer/1.3522/CVE-2026-5080-r1.patch",
"source": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
"tags": [
"Patch"
]
},
{
"url": "http://www.openwall.com/lists/oss-security/2026/04/30/19",
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Mailing List",
"Third Party Advisory"
]
}
]
}