CVE-2016-2338
Estado: ModificadaCrítica (9.8)—
An exploitable heap overflow vulnerability exists in the Psych::Emitter start_document function of Ruby. In Psych::Emitter start_document function heap buffer "head" allocation is made based on tags array length. Specially constructed object passed as element of tags array can increase this array size after mentioned allocation and cause heap overflow.
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- Puntuación base: 9.8
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 4.68%
- Percentil entre todas las CVEs puntuadas: 92
- 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).
Tecnologías afectadas (2)
CWE
- CWE-787
Referencias
- http://www.talosintelligence.com/reports/TALOS-2016-0032/
- https://lists.debian.org/debian-lts-announce/2020/03/msg00032.html
- https://security.netapp.com/advisory/ntap-20221228-0005/
- http://www.talosintelligence.com/reports/TALOS-2016-0032/
- https://lists.debian.org/debian-lts-announce/2020/03/msg00032.html
- https://security.netapp.com/advisory/ntap-20221228-0005/
JSON original (NVD)
Mostrar
{
"id": "CVE-2016-2338",
"cveTags": [],
"metrics": {
"cvssMetricV31": [
{
"type": "Primary",
"source": "nvd@nist.gov",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 9.8,
"attackVector": "NETWORK",
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:N/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": 3.9
}
]
},
"affected": [
{
"source": "cret@cert.org",
"affectedData": [
{
"vendor": "n/a",
"product": "n/a",
"versions": [
{
"status": "affected",
"version": "n/a"
}
]
}
]
}
],
"published": "2022-09-29T03:15:11.470",
"references": [
{
"url": "http://www.talosintelligence.com/reports/TALOS-2016-0032/",
"tags": [
"Exploit",
"Third Party Advisory"
],
"source": "cret@cert.org"
},
{
"url": "https://lists.debian.org/debian-lts-announce/2020/03/msg00032.html",
"tags": [
"Mailing List",
"Third Party Advisory"
],
"source": "cret@cert.org"
},
{
"url": "https://security.netapp.com/advisory/ntap-20221228-0005/",
"tags": [
"Third Party Advisory"
],
"source": "cret@cert.org"
},
{
"url": "http://www.talosintelligence.com/reports/TALOS-2016-0032/",
"tags": [
"Exploit",
"Third Party Advisory"
],
"source": "af854a3a-2127-422b-91ae-364da2661108"
},
{
"url": "https://lists.debian.org/debian-lts-announce/2020/03/msg00032.html",
"tags": [
"Mailing List",
"Third Party Advisory"
],
"source": "af854a3a-2127-422b-91ae-364da2661108"
},
{
"url": "https://security.netapp.com/advisory/ntap-20221228-0005/",
"tags": [
"Third Party Advisory"
],
"source": "af854a3a-2127-422b-91ae-364da2661108"
}
],
"vulnStatus": "Modified",
"weaknesses": [
{
"type": "Primary",
"source": "nvd@nist.gov",
"description": [
{
"lang": "en",
"value": "CWE-787"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "An exploitable heap overflow vulnerability exists in the Psych::Emitter start_document function of Ruby. In Psych::Emitter start_document function heap buffer \"head\" allocation is made based on tags array length. Specially constructed object passed as element of tags array can increase this array size after mentioned allocation and cause heap overflow."
},
{
"lang": "es",
"value": "Se presenta una vulnerabilidad de desbordamiento de pila explotable en la función Psych::Emitter start_document de Ruby. En la función Psych::Emitter start_document la asignación de \"head\" del buffer de heap es realizada en base a la longitud del array de etiquetas. Un objeto especialmente construido que es pasado como elemento de la matriz de etiquetas puede aumentar el tamaño de esta matriz después de la asignación mencionada y causar un desbordamiento de la pila"
}
],
"lastModified": "2026-06-17T00:43:51.027",
"configurations": [
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:a:ruby-lang:ruby:2.2.2:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "5FCCD8F3-E667-42F2-9861-14EDFB16583A"
},
{
"criteria": "cpe:2.3:a:ruby-lang:ruby:2.3.0:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "822307DD-7F7D-44C2-9C4B-CB8704663410"
}
],
"operator": "OR"
}
]
},
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:o:debian:debian_linux:8.0:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "C11E6FB0-C8C0-4527-9AA0-CB9B316F8F43"
}
],
"operator": "OR"
}
]
}
],
"sourceIdentifier": "cret@cert.org"
}