CVE-2024-56406
A heap buffer overflow vulnerability was discovered in Perl.
Release branches 5.34, 5.36, 5.38 and 5.40 are affected, including development versions from 5.33.1 through 5.41.10.
When there are non-ASCII bytes in the left-hand-side of the `tr` operator, `S_do_trans_invmap` can overflow the destination pointer `d`.
$ perl -e '$_ = "\x{FF}" x 1000000; tr/\xFF/\x{100}/;' Segmentation fault (core dumped)
It is believed that this vulnerability can enable Denial of Service and possibly Code Execution attacks on platforms that lack sufficient defenses.
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- Puntuación base: 8.4
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.54%
- Percentil entre todas las CVEs puntuadas: 43
- Fecha de la puntuación: 6/10/2026
EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).
🎯 Técnicas ATT&CK
Cómo se explota esta vulnerabilidad y qué consigue el atacante, en el lenguaje de MITRE ATT&CK.
- Explotación
T1068Exploitation for Privilege Escalationprivilege escalation85 % - Impacto principal
T1059Command and Scripting Interpreterexecution75 % - Impacto secundario
T1499.004Application or System Exploitationimpact80 %
Acceso local (AV:L) sin interacción usuario. Desbordamiento de búfer en el intérprete Perl que permite ejecución de código o DoS. El vector CVSS de AV:L/PR:N/UI:N indica escalada local de privilegios (T1068). Los impactos son ejecución arbitraria (T1059) y potencial negación de servicio (T1499.004).
Inferido por nuestro agente de análisis a partir de la descripción oficial, el vector CVSS y la CWE, y comprobado por un supervisor. Puede contener errores.
🛡️ Mitigaciones ATT&CK que cubren estas técnicas
Tecnologías afectadas (1)
CWE
- CWE-122, CWE-787
- CWE-787
Referencias
- https://github.com/Perl/perl5/commit/87f42aa0e0096e9a346c9672aa3a0bd3bef8c1dd.patch
- https://metacpan.org/release/SHAY/perl-5.38.4/changes
- https://metacpan.org/release/SHAY/perl-5.40.2/changes
- http://www.openwall.com/lists/oss-security/2025/04/13/3
- http://www.openwall.com/lists/oss-security/2025/04/13/4
- http://www.openwall.com/lists/oss-security/2025/04/13/5
JSON original (NVD)
Mostrar
{
"id": "CVE-2024-56406",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2024-56406",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "total"
}
],
"version": "2.0.3",
"timestamp": "2025-10-16T14:04:16.993103Z"
}
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 8.4,
"attackVector": "LOCAL",
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"integrityImpact": "HIGH",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "HIGH",
"privilegesRequired": "NONE",
"confidentialityImpact": "HIGH"
},
"impactScore": 5.9,
"exploitabilityScore": 2.5
}
]
},
"affected": [
{
"source": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
"affectedData": [
{
"repo": "https://github.com/Perl/perl5/",
"vendor": "perl",
"product": "perl",
"versions": [
{
"status": "affected",
"version": "5.41.0",
"versionType": "custom",
"lessThanOrEqual": "5.41.10"
},
{
"status": "affected",
"version": "5.39.0",
"lessThan": "5.40.2-RC1",
"versionType": "custom"
},
{
"status": "affected",
"version": "5.33.1",
"lessThan": "5.38.4-RC1",
"versionType": "custom"
}
],
"packageName": "perl",
"programFiles": [
"op.c"
],
"collectionURL": "https://cpan.org/modules",
"defaultStatus": "unaffected",
"programRoutines": [
{
"name": "S_pmtrans"
},
{
"name": "tr"
}
]
}
]
}
],
"published": "2025-04-13T14:15:14.527",
"references": [
{
"url": "https://github.com/Perl/perl5/commit/87f42aa0e0096e9a346c9672aa3a0bd3bef8c1dd.patch",
"tags": [
"Patch"
],
"source": "9b29abf9-4ab0-4765-b253-1875cd9b441e"
},
{
"url": "https://metacpan.org/release/SHAY/perl-5.38.4/changes",
"tags": [
"Release Notes"
],
"source": "9b29abf9-4ab0-4765-b253-1875cd9b441e"
},
{
"url": "https://metacpan.org/release/SHAY/perl-5.40.2/changes",
"tags": [
"Release Notes"
],
"source": "9b29abf9-4ab0-4765-b253-1875cd9b441e"
},
{
"url": "http://www.openwall.com/lists/oss-security/2025/04/13/3",
"tags": [
"Mailing List"
],
"source": "af854a3a-2127-422b-91ae-364da2661108"
},
{
"url": "http://www.openwall.com/lists/oss-security/2025/04/13/4",
"tags": [
"Mailing List"
],
"source": "af854a3a-2127-422b-91ae-364da2661108"
},
{
"url": "http://www.openwall.com/lists/oss-security/2025/04/13/5",
"tags": [
"Mailing List"
],
"source": "af854a3a-2127-422b-91ae-364da2661108"
}
],
"vulnStatus": "Modified",
"weaknesses": [
{
"type": "Secondary",
"source": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
"description": [
{
"lang": "en",
"value": "CWE-122"
},
{
"lang": "en",
"value": "CWE-787"
}
]
},
{
"type": "Primary",
"source": "nvd@nist.gov",
"description": [
{
"lang": "en",
"value": "CWE-787"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "A heap buffer overflow vulnerability was discovered in Perl. \n\nRelease branches 5.34, 5.36, 5.38 and 5.40 are affected, including development versions from 5.33.1 through 5.41.10.\n\nWhen there are non-ASCII bytes in the left-hand-side of the `tr` operator, `S_do_trans_invmap` can overflow the destination pointer `d`.\n\n $ perl -e '$_ = \"\\x{FF}\" x 1000000; tr/\\xFF/\\x{100}/;' \n Segmentation fault (core dumped)\n\nIt is believed that this vulnerability can enable Denial of Service and possibly Code Execution attacks on platforms that lack sufficient defenses."
},
{
"lang": "es",
"value": "Se descubrió una vulnerabilidad de desbordamiento del búfer de montón en Perl. Las versiones 5.34, 5.36, 5.38 y 5.40 se ven afectadas, incluyendo las versiones de desarrollo de la 5.33.1 a la 5.41.10. Cuando hay bytes no ASCII en el lado izquierdo del operador `tr`, `S_do_trans_invmap` puede desbordar el puntero de destino `d`. $ perl -e '$_ = \"\\x{FF}\" x 1000000; tr/\\xFF/\\x{100}/;' Fallo de segmentación (volcado de núcleo). Se cree que esta vulnerabilidad puede permitir ataques de denegación de servicio y, posiblemente, de ejecución de código en plataformas que carecen de defensas suficientes."
}
],
"lastModified": "2026-06-17T08:12:08.977",
"configurations": [
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:a:perl:perl:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "F34096A4-1439-4582-8133-8134388418D1",
"versionEndExcluding": "5.38.4",
"versionStartIncluding": "5.33.1"
},
{
"criteria": "cpe:2.3:a:perl:perl:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "91EF91EF-222F-42C0-A506-0A57B98F1DA5",
"versionEndExcluding": "5.40.2",
"versionStartIncluding": "5.39.0"
},
{
"criteria": "cpe:2.3:a:perl:perl:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "87807B8D-271E-4B95-ADBC-2383FBD07335",
"versionEndIncluding": "5.41.10",
"versionStartIncluding": "5.41.0"
}
],
"operator": "OR"
}
]
}
],
"sourceIdentifier": "9b29abf9-4ab0-4765-b253-1875cd9b441e"
}