« Volver al listado

CVE-2026-98309

Estado: RecibidaSin puntuar—

In the Linux kernel, the following vulnerability has been resolved:

drm/vc4: Use managed KMS polling to fix UAF on unbind

vc4_kms_load() calls drm_kms_helper_poll_init() but the driver provides no matching drm_kms_helper_poll_fini(). The output poll work stays scheduled after unbind and runs on the freed drm_device:

Use drmm_kms_helper_poll_init() so polling is finalized with the device, as other drivers do.

Detalles técnicos trazas, registros y código del informe original
  # modprobe vc4; rmmod vc4; sleep 10
  BUG: KASAN: slab-use-after-free in delayed_work_timer_fn
  BUG: KASAN: slab-use-after-free in drm_client_dev_hotplug [drm]
  Workqueue: events output_poll_execute [drm_kms_helper]
  Allocated by task 171: __devm_drm_dev_alloc
  Freed by task 262 (rmmod): drm_dev_put / component_del

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)

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

JSON original (NVD)

Mostrar
{
  "id": "CVE-2026-98309",
  "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": "c8b75bca92cbf064b9fa125fc74a85994452e935",
              "lessThan": "b6beee927e7f4e3142032ff91b2d0417cdddc0f6",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "c8b75bca92cbf064b9fa125fc74a85994452e935",
              "lessThan": "cf0c4432bda37b02e7d430ff5017228ceb7caf0c",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "c8b75bca92cbf064b9fa125fc74a85994452e935",
              "lessThan": "ee507691c18f9fee5d4751e295ab9a7ff31d59ae",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "c8b75bca92cbf064b9fa125fc74a85994452e935",
              "lessThan": "7f9780df677370a19b4ec9764f13b1b82073e0d9",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "c8b75bca92cbf064b9fa125fc74a85994452e935",
              "lessThan": "073a30d75f309812ed61af134f24ffef4107b13a",
              "versionType": "git"
            }
          ],
          "programFiles": [
            "drivers/gpu/drm/vc4/vc4_kms.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"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "4.4",
              "versionType": "semver"
            },
            {
              "status": "unaffected",
              "version": "6.6.158",
              "versionType": "semver",
              "lessThanOrEqual": "6.6.*"
            },
            {
              "status": "unaffected",
              "version": "6.12.112",
              "versionType": "semver",
              "lessThanOrEqual": "6.12.*"
            },
            {
              "status": "unaffected",
              "version": "6.18.54",
              "versionType": "semver",
              "lessThanOrEqual": "6.18.*"
            },
            {
              "status": "unaffected",
              "version": "7.2.8",
              "versionType": "semver",
              "lessThanOrEqual": "7.2.*"
            },
            {
              "status": "unaffected",
              "version": "7.3-rc4",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ],
          "programFiles": [
            "drivers/gpu/drm/vc4/vc4_kms.c"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2026-10-06T09:18:22.300",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/073a30d75f309812ed61af134f24ffef4107b13a",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/7f9780df677370a19b4ec9764f13b1b82073e0d9",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/b6beee927e7f4e3142032ff91b2d0417cdddc0f6",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/cf0c4432bda37b02e7d430ff5017228ceb7caf0c",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/ee507691c18f9fee5d4751e295ab9a7ff31d59ae",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Received",
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/vc4: Use managed KMS polling to fix UAF on unbind\n\nvc4_kms_load() calls drm_kms_helper_poll_init() but the driver provides\nno matching drm_kms_helper_poll_fini(). The output poll work stays\nscheduled after unbind and runs on the freed drm_device:\n\n  # modprobe vc4; rmmod vc4; sleep 10\n  BUG: KASAN: slab-use-after-free in delayed_work_timer_fn\n  BUG: KASAN: slab-use-after-free in drm_client_dev_hotplug [drm]\n  Workqueue: events output_poll_execute [drm_kms_helper]\n  Allocated by task 171: __devm_drm_dev_alloc\n  Freed by task 262 (rmmod): drm_dev_put / component_del\n\nUse drmm_kms_helper_poll_init() so polling is finalized with the device,\nas other drivers do."
    }
  ],
  "lastModified": "2026-10-06T09:18:22.300",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}