CVE-2026-98765

Estado: RecibidaSin puntuar—
Gravedad—Sin puntuar
Probabilidad de explotación0.17 %mayor que el 6 % 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:

USB: gadget: dummy-hcd: Fix wait for outstanding request completions

El controlador dummy-hcd emula synchronize_irq() esperando hasta que su contador privado callback_usage llegue a 0 (sin mantener el bloqueo privado). Este contador se incrementa cada vez que se produce una callback del controlador gadget (lo que requiere liberar el bloqueo privado), pero no cuando se llama a un manejador de finalización de solicitud.

Esto es un descuido. La finalización de solicitudes se activa mediante interrupciones de temporizador (que emulan las interrupciones de dispositivo en un UDC real), y se supone que los manejadores de interrupción han terminado cuando regresa la rutina de emulación de synchronize_irq(); no deberían estar a mitad de una callback de finalización. Si esto ocurre, puede provocar que la rutina de desvinculación del controlador gadget se ejecute antes de que hayan terminado todas las finalizaciones de solicitudes pendientes, incluso permitiendo que el módulo del controlador gadget se descargue mientras todavía se ejecuta un manejador de finalización.

Leer descripción completaMostrar menos

Se corrige el descuido incrementando el valor de callback_usage durante las callbacks de finalización de solicitudes.

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.17 %
Percentil entre todas las CVEs puntuadas
6
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-98765",
  "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": "7dbd8f4cabd96db5a50513de9d83a8105a5ffc81",
              "lessThan": "7ce4dca0d53b1c3cb2b7e7bb2e42bf5db860caf2",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "7dbd8f4cabd96db5a50513de9d83a8105a5ffc81",
              "lessThan": "5298c96bf0068f3160969f7ddad81976d01a9b66",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "7dbd8f4cabd96db5a50513de9d83a8105a5ffc81",
              "lessThan": "3070806a7bc7bb36ed04a21022c09dafcc5619f4",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "7dbd8f4cabd96db5a50513de9d83a8105a5ffc81",
              "lessThan": "b263ff9b0fc5c1f371d65c4eb196b31263d039ff",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "7b416b9dac6ede26d4ca0c1a88b448b543623ff3",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "8590bc1da625dd4a589eac0fc3aa3cf4f400424d",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "a867d5b932ac4911d3f8a1e63505061b0c81f889",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "e84b4a008365b7edbd842a063ae28d040a98db25",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "e39b17143a5b5aac81f066d455e5d3a9877eb3ae",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "4f8ae1fcb0dfbb72a7678f81bf01fb7fc85c6715",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "3.2.97",
              "lessThan": "3.3",
              "versionType": "semver"
            },
            {
              "status": "affected",
              "version": "3.16.52",
              "lessThan": "3.17",
              "versionType": "semver"
            },
            {
              "status": "affected",
              "version": "4.1.46",
              "lessThan": "4.2",
              "versionType": "semver"
            },
            {
              "status": "affected",
              "version": "4.4.92",
              "lessThan": "4.5",
              "versionType": "semver"
            },
            {
              "status": "affected",
              "version": "4.9.55",
              "lessThan": "4.10",
              "versionType": "semver"
            },
            {
              "status": "affected",
              "version": "4.13.6",
              "lessThan": "4.14",
              "versionType": "semver"
            }
          ],
          "programFiles": [
            "drivers/usb/gadget/udc/dummy_hcd.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.14"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "4.14",
              "versionType": "semver"
            },
            {
              "status": "unaffected",
              "version": "6.12.113",
              "versionType": "semver",
              "lessThanOrEqual": "6.12.*"
            },
            {
              "status": "unaffected",
              "version": "6.18.56",
              "versionType": "semver",
              "lessThanOrEqual": "6.18.*"
            },
            {
              "status": "unaffected",
              "version": "7.2.10",
              "versionType": "semver",
              "lessThanOrEqual": "7.2.*"
            },
            {
              "status": "unaffected",
              "version": "7.3",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ],
          "programFiles": [
            "drivers/usb/gadget/udc/dummy_hcd.c"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2026-10-18T16:17:30.323",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/3070806a7bc7bb36ed04a21022c09dafcc5619f4",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/5298c96bf0068f3160969f7ddad81976d01a9b66",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/7ce4dca0d53b1c3cb2b7e7bb2e42bf5db860caf2",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/b263ff9b0fc5c1f371d65c4eb196b31263d039ff",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Received",
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nUSB: gadget: dummy-hcd: Fix wait for outstanding request completions\n\nThe dummy-hcd driver emulates synchronize_irq() by waiting until its\nprivate callback_usage counter drops to 0 (with the private lock not\nheld).  This counter is incremented whenever a gadget driver callback\noccurs (which requires the private lock to be dropped), but not when a\nrequest completion handler is called.\n\nThis is an oversight.  Request completion is triggered by timer\ninterrupts (emulating device IRQs in a real UDC), and the interrupt\nhandlers are supposed to have completed when the synchronize_irq()\nemulation routine returns -- they aren't supposed to be in the middle\nof a completion callback.  If this happens it can lead to a gadget\ndriver's unbind routine running before all outstanding request\ncompletions have finished, maybe even allowing the gadget driver's\nmodule to be unloaded while a completion handler is still running.\n\nFix the oversight by incrementing the callback_usage value across\nrequest completion callbacks."
    }
  ],
  "lastModified": "2026-10-19T10:19:40.617",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}