CVE-2020-36791
In the Linux kernel, the following vulnerability has been resolved:
net_sched: keep alloc_hash updated after hash allocation
In commit 599be01ee567 ("net_sched: fix an OOB access in cls_tcindex") I moved cp->hash calculation before the first tcindex_alloc_perfect_hash(), but cp->alloc_hash is left untouched. This difference could lead to another out of bound access.
cp->alloc_hash should always be the size allocated, we should update it after this tcindex_alloc_perfect_hash().
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
- Puntuación base: 7.1
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.20%
- Percentil entre todas las CVEs puntuadas: 9
- 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 %
Vector AV:L/PR:L indica acceso local con privilegios; CWE-125 (out-of-bounds read) puede escalar en el kernel para ejecutar código. Pista valida T1068.
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-125
Referencias
- https://blog.cdthoughts.ch/2021/03/16/syzbot-bug.html
- https://git.kernel.org/stable/c/0d1c3530e1bd38382edef72591b78e877e0edcd3
- https://git.kernel.org/stable/c/557d015ffb27b672e24e6ad141fd887783871dc2
- https://git.kernel.org/stable/c/9f8b6c44be178c2498a00b270872a6e30e7c8266
- https://git.kernel.org/stable/c/bd3ee8fb6371b45c71c9345cc359b94da2ddefa9
- https://git.kernel.org/stable/c/c4453d2833671e3a9f6bd52f0f581056c3736386
- https://git.kernel.org/stable/c/d23faf32e577922b6da20bf3740625c1105381bf
- https://git.kernel.org/stable/c/d6cdc5bb19b595486fb2e6661e5138d73a57f454
- https://syzkaller.appspot.com/bug?id=ea260693da894e7b078d18fca2c9c0a19b457534
JSON original (NVD)
Mostrar
{
"id": "CVE-2020-36791",
"cveTags": [],
"metrics": {
"cvssMetricV31": [
{
"type": "Secondary",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 7.8,
"attackVector": "LOCAL",
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"integrityImpact": "HIGH",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "HIGH",
"privilegesRequired": "LOW",
"confidentialityImpact": "HIGH"
},
"impactScore": 5.9,
"exploitabilityScore": 1.8
},
{
"type": "Primary",
"source": "nvd@nist.gov",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 7.1,
"attackVector": "LOCAL",
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H",
"integrityImpact": "NONE",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "HIGH",
"privilegesRequired": "LOW",
"confidentialityImpact": "HIGH"
},
"impactScore": 5.2,
"exploitabilityScore": 1.8
}
]
},
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "73c29d2f6f8ae731b1e09051b69ed3ba2319482b",
"lessThan": "d6cdc5bb19b595486fb2e6661e5138d73a57f454",
"versionType": "git"
},
{
"status": "affected",
"version": "b974ac51f5834a729de252fc5c1c9de9efd79b45",
"lessThan": "c4453d2833671e3a9f6bd52f0f581056c3736386",
"versionType": "git"
},
{
"status": "affected",
"version": "6cb448ee493c8a514c9afa0c346f3f5b3227de85",
"lessThan": "9f8b6c44be178c2498a00b270872a6e30e7c8266",
"versionType": "git"
},
{
"status": "affected",
"version": "478c4b2ffd44e5186c7e22ae7c38a86a5b9cfde5",
"lessThan": "557d015ffb27b672e24e6ad141fd887783871dc2",
"versionType": "git"
},
{
"status": "affected",
"version": "dd8142a6fa5270783d415292ec8169f4ea2a5468",
"lessThan": "d23faf32e577922b6da20bf3740625c1105381bf",
"versionType": "git"
},
{
"status": "affected",
"version": "2c66ff8d08f81bcf8e8cb22e31e39c051b15336a",
"lessThan": "bd3ee8fb6371b45c71c9345cc359b94da2ddefa9",
"versionType": "git"
},
{
"status": "affected",
"version": "599be01ee567b61f4471ee8078870847d0a11e8e",
"lessThan": "0d1c3530e1bd38382edef72591b78e877e0edcd3",
"versionType": "git"
}
],
"programFiles": [
"net/sched/cls_tcindex.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "4.4.214",
"lessThan": "4.4.218",
"versionType": "semver"
},
{
"status": "affected",
"version": "4.9.214",
"lessThan": "4.9.218",
"versionType": "semver"
},
{
"status": "affected",
"version": "4.14.171",
"lessThan": "4.14.175",
"versionType": "semver"
},
{
"status": "affected",
"version": "4.19.103",
"lessThan": "4.19.114",
"versionType": "semver"
},
{
"status": "affected",
"version": "5.4.19",
"lessThan": "5.4.29",
"versionType": "semver"
},
{
"status": "affected",
"version": "5.5.3",
"lessThan": "5.5.14",
"versionType": "semver"
}
],
"programFiles": [
"net/sched/cls_tcindex.c"
],
"defaultStatus": "unaffected"
}
]
}
],
"published": "2025-05-07T14:15:28.513",
"references": [
{
"url": "https://blog.cdthoughts.ch/2021/03/16/syzbot-bug.html",
"tags": [
"Third Party Advisory"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/0d1c3530e1bd38382edef72591b78e877e0edcd3",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/557d015ffb27b672e24e6ad141fd887783871dc2",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/9f8b6c44be178c2498a00b270872a6e30e7c8266",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/bd3ee8fb6371b45c71c9345cc359b94da2ddefa9",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/c4453d2833671e3a9f6bd52f0f581056c3736386",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/d23faf32e577922b6da20bf3740625c1105381bf",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/d6cdc5bb19b595486fb2e6661e5138d73a57f454",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://syzkaller.appspot.com/bug?id=ea260693da894e7b078d18fca2c9c0a19b457534",
"tags": [
"Issue Tracking"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
],
"vulnStatus": "Modified",
"weaknesses": [
{
"type": "Primary",
"source": "nvd@nist.gov",
"description": [
{
"lang": "en",
"value": "CWE-125"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet_sched: keep alloc_hash updated after hash allocation\n\nIn commit 599be01ee567 (\"net_sched: fix an OOB access in cls_tcindex\")\nI moved cp->hash calculation before the first\ntcindex_alloc_perfect_hash(), but cp->alloc_hash is left untouched.\nThis difference could lead to another out of bound access.\n\ncp->alloc_hash should always be the size allocated, we should\nupdate it after this tcindex_alloc_perfect_hash()."
},
{
"lang": "es",
"value": "En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: net_sched: mantener alloc_hash actualizado tras la asignación de hash. En el commit 599be01ee567 (\"net_sched: corregir un acceso OOB en cls_tcindex\"), se movió el cálculo de cp->hash antes del primer tcindex_alloc_perfect_hash(), pero se mantuvo intacto. Esta diferencia podría provocar otro acceso fuera de los límites. cp->alloc_hash siempre debe tener el tamaño asignado; debemos actualizarlo después de este tcindex_alloc_perfect_hash()."
}
],
"lastModified": "2026-08-04T10:16:35.580",
"configurations": [
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "EA46E804-CC77-4E3E-8EFE-1E0D208F2891",
"versionEndExcluding": "4.4.218",
"versionStartIncluding": "4.4.214"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "532BFC53-5843-4E9A-9AB3-3898853DD42C",
"versionEndExcluding": "4.9.218",
"versionStartIncluding": "4.9.214"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "26CFC34C-0C30-400B-A805-EBB9AD56155E",
"versionEndExcluding": "4.14.175",
"versionStartIncluding": "4.14.171"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "05AC3490-6BEC-4FB4-9577-02840D73CE90",
"versionEndExcluding": "4.19.114",
"versionStartIncluding": "4.19.103"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "9253035D-B349-4044-B4B2-0052B6F8AF01",
"versionEndExcluding": "5.4.29",
"versionStartIncluding": "5.4.19"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "AF089097-DB58-4F52-AC68-3418ADEE10A2",
"versionEndExcluding": "5.5.14",
"versionStartIncluding": "5.5.3"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:5.6:rc1:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "F5DAF39E-0835-49B4-8221-7FCE81692A4B"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:5.6:rc2:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "73DFCE15-1BB8-4740-B9CD-57F2DF3EA15D"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:5.6:rc3:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "7D3107F6-EB44-4C65-AA1B-1E96923F6409"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:5.6:rc4:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "DC0C894E-6323-44E5-89DD-8FB6A5C41CAF"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:5.6:rc5:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "4C76EAC9-C2E6-4B6F-B002-ADBE74DDD794"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:5.6:rc6:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "F13B8FBF-E007-4F60-A290-2833B45F8520"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:5.6:rc7:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "CD0276C4-2C60-4C52-AC89-F96DF991B858"
}
],
"operator": "OR"
}
]
}
],
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}