CVE-2026-98505
En el kernel de Linux se ha resuelto la siguiente vulnerabilidad:
mm/damon/vaddr: evitar actualizaciones de la PTE provocadas por el hardware durante damon_hugetlb_mkold()
damon_hugetlb_mkold() lee la entrada de la tabla de páginas en una variable local, desactiva el bit de accedido en esa variable y actualiza la entrada de la tabla de páginas con el valor modificado. Si el hardware actualiza la misma entrada de la tabla de páginas en paralelo, las actualizaciones del hardware podrían perderse. Por ejemplo, los bits de sucio actualizados por el hardware podrían perderse.
Para evitar las actualizaciones en paralelo, se borra la entrada de la tabla de páginas al leerla, usando huge_ptep_get_and_clear().
Leer descripción completaMostrar menos
Si se escribe en la memoria en paralelo después del borrado, el hardware verá que la entrada de la tabla de páginas está borrada, provocará un fallo de página y esperará a que se gestione. La gestión del fallo de página esperará a damon_hugetlb_mkold() debido al bloqueo de la tabla de páginas.
Dado que hugetlbfs es un sistema de archivos en memoria y las páginas hugetlb no pueden recuperarse, a mi leal saber no se espera ningún problema crítico. Sin embargo, se trata sin duda de un fallo desagradable que conviene corregir cuanto antes.
El problema fue descubierto [1] por Sashiko.
Traducción automática del texto original de NVD (en inglés).
CVSS
NVD no ha asignado puntuación CVSS a esta CVE (habitual desde el cambio de política de abril de 2026).
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
- 20/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 (1)
⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.
Referencias
Mostrar las 4 referencias
JSON original (NVD)
Mostrar
{
"id": "CVE-2026-98505",
"cveTags": [],
"metrics": {},
"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": "49f4203aae06ba9d67b500c90339b262b0a52637",
"lessThan": "00457981327c80bcc56e07d4714fe189337a19fa",
"versionType": "git"
},
{
"status": "affected",
"version": "49f4203aae06ba9d67b500c90339b262b0a52637",
"lessThan": "e59cb7eda7c06334a0faf5aa44adb6acf2a1287a",
"versionType": "git"
},
{
"status": "affected",
"version": "49f4203aae06ba9d67b500c90339b262b0a52637",
"lessThan": "6e74ffc9ecf6ec24eee117150da78a1102be74c5",
"versionType": "git"
},
{
"status": "affected",
"version": "49f4203aae06ba9d67b500c90339b262b0a52637",
"lessThan": "39c0ceedd54557bdc1542de08d22b2ed33e534e4",
"versionType": "git"
}
],
"programFiles": [
"mm/damon/vaddr.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "5.17"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "5.17",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "6.12.112",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
},
{
"status": "unaffected",
"version": "6.18.55",
"versionType": "semver",
"lessThanOrEqual": "6.18.*"
},
{
"status": "unaffected",
"version": "7.2.9",
"versionType": "semver",
"lessThanOrEqual": "7.2.*"
},
{
"status": "unaffected",
"version": "7.3",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"mm/damon/vaddr.c"
],
"defaultStatus": "affected"
}
]
}
],
"published": "2026-10-18T16:17:01.610",
"references": [
{
"url": "https://git.kernel.org/stable/c/00457981327c80bcc56e07d4714fe189337a19fa",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/39c0ceedd54557bdc1542de08d22b2ed33e534e4",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/6e74ffc9ecf6ec24eee117150da78a1102be74c5",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/e59cb7eda7c06334a0faf5aa44adb6acf2a1287a",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
],
"vulnStatus": "Received",
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmm/damon/vaddr: avoid hw-driven pte updates during damon_hugetlb_mkold()\n\ndamon_hugetlb_mkold() reads the page table entry into a local variable,\nunsets the accessed bit in the variable, and updates the page table entry\nwith the updated variable value. If hardware updates the same page table\nentry in parallel, the hw updates could be lost. For example,\nhardware-updated dirty bits might be lost.\n\nAvoid the parallel updates by clearing the page table entry when reading\nit together, using huge_ptep_get_and_clear(). If a parallel write to the\nmemory is made after the clearing, the hw will see the page table entry is\ncleared, trigger page fault and wait until it is handled. The page fault\nhandling will wait for damon_hugetlb_mkold() due to the page table lock.\n\nBecause hugetlbfs is an in-memory file system and hugetlb pages cannot be\nreclaimed, no critical issue is expected to my best knowledge. But\ndefinitely this is a nasty bug that should be fixed sooner rather than\nlater.\n\nThe issue was discovered [1] by Sashiko."
}
],
"lastModified": "2026-10-19T10:19:03.767",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}