CVE-2026-98512

Estado: RecibidaSin puntuar—
Gravedad—Sin puntuar
Probabilidad de explotación0.20 %mayor que el 9 % de las CVE
Explotación activaNono figura en el catálogo de CISA
Exploit públicoNo conocidosin código público localizado

En el kernel de Linux se ha resuelto la siguiente vulnerabilidad:

drm/nouveau: liberar con RCU la estructura nouveau_sched que contiene el planificador

struct nouveau_sched incluye un struct drm_gpu_scheduler (base). nouveau_sched_destroy() llama a nouveau_sched_fini() (que ejecuta drm_sched_fini(&sched->base)) y después libera el objeto con un kfree(sched) normal.

drm_sched_fence_get_timeline_name() devuelve fence->sched->name, y el fence del planificador conserva un callback .release, por lo que no se desvincula de sus operaciones al ser señalizado.

Leer descripción completaMostrar menos

Un fence finalizado que se exporta al espacio de usuario mediante drm_syncobj / sync_file, por tanto, sigue apuntando a &sched->base después de nouveau_sched_destroy(), y una llamada posterior a get_timeline_name() -accesible sin privilegios a través de SYNC_IOC_FILE_INFO- desreferencia memoria liberada (lectura use-after-free en slab detectada por KASAN).

Según el contrato de tiempo de vida de dma-fence, el exportador debe mantener vivos los datos que respaldan un fence señalizado durante un periodo de gracia de RCU. Hay que liberar el objeto que contiene el planificador con kfree_rcu() en lugar de kfree().

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-98512",
  "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": "5f03a507b29e44a848f315c7240c19894dd8be4f",
              "lessThan": "40edf5eefc3fd94592a91d6eb074d4fc6f606c75",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "5f03a507b29e44a848f315c7240c19894dd8be4f",
              "lessThan": "35151e9a8274174ccbb92e3b3ba7dc7a008dcada",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "5f03a507b29e44a848f315c7240c19894dd8be4f",
              "lessThan": "cd6e11b6ebe04a0a1f1435df561acada9eadc563",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "5f03a507b29e44a848f315c7240c19894dd8be4f",
              "lessThan": "f7eae6d8d768fabd6b59779ca7da79e02c74e113",
              "versionType": "git"
            }
          ],
          "programFiles": [
            "drivers/gpu/drm/nouveau/nouveau_sched.c",
            "drivers/gpu/drm/nouveau/nouveau_sched.h"
          ],
          "defaultStatus": "unaffected"
        },
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.8"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "6.8",
              "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": [
            "drivers/gpu/drm/nouveau/nouveau_sched.c",
            "drivers/gpu/drm/nouveau/nouveau_sched.h"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2026-10-18T16:17:02.457",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/35151e9a8274174ccbb92e3b3ba7dc7a008dcada",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/40edf5eefc3fd94592a91d6eb074d4fc6f606c75",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/cd6e11b6ebe04a0a1f1435df561acada9eadc563",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/f7eae6d8d768fabd6b59779ca7da79e02c74e113",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Received",
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/nouveau: RCU-free the scheduler-containing nouveau_sched\n\nstruct nouveau_sched embeds a struct drm_gpu_scheduler (base).\nnouveau_sched_destroy() calls nouveau_sched_fini() (which does\ndrm_sched_fini(&sched->base)) and then frees the object with plain\nkfree(sched).\n\ndrm_sched_fence_get_timeline_name() returns fence->sched->name, and the\nscheduler fence keeps a .release callback so it is not ops-detached on\nsignalling.  A finished fence exported to userspace via drm_syncobj /\nsync_file therefore keeps pointing at &sched->base after nouveau_sched_destroy(),\nand a later get_timeline_name() -- reachable unprivileged through\nSYNC_IOC_FILE_INFO -- dereferences freed memory (KASAN slab-use-after-free\nread).\n\nPer the dma-fence lifetime contract the exporter must keep the data backing a\nsignalled fence alive for an RCU grace period.  Free the scheduler-containing\nobject with kfree_rcu() instead of kfree()."
    }
  ],
  "lastModified": "2026-10-19T10:19:04.787",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}