CVE-2026-98564

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:

net: dsa: mt7530: dejar las asignaciones de IRQ de MDIO en manos de regmap-irq

mt7530_remove_common() libera las asignaciones de interrupciones de cada PHY desde .remove, pero el chip regmap-irq que es propietario del dominio se registra con devm, por lo que su interrupción padre solo se libera una vez que .remove ha retornado. El hilo regmap-irq propio del conmutador puede, por tanto, seguir despachando sobre una asignación que ya no existe: irq_find_mapping() devuelve 0, irq_to_desc() devuelve NULL y handle_nested_irq() bloquea desc->lock sin comprobarlo. Además, los PHY conectados aún no han devuelto esas interrupciones, lo que el kernel advierte justo antes del fallo.

Leer descripción completaMostrar menos

regmap_del_irq_chip() libera él mismo esas mismas asignaciones, después de liberar la interrupción padre y antes de eliminar el dominio, por lo que no queda nada que el driver deba hacer aquí. Hasta que se ejecute, los descriptores siguen activos, y un despacho tardío sobre ellos es inofensivo: para entonces dsa_unregister_switch() ya ha liberado los manejadores de los PHY, de modo que handle_nested_irq() no encuentra ninguna acción y retorna.

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 3 referencias

JSON original (NVD)

Mostrar
{
  "id": "CVE-2026-98564",
  "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": "254f6b272e3b67bf31c42ee9da62a449d74d1478",
              "lessThan": "2357c682f6eaf639dec88c68b3c0c93a3b802635",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "254f6b272e3b67bf31c42ee9da62a449d74d1478",
              "lessThan": "f306e465b5a2091cd3fe3dd0feb10cfc94cfb2f8",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "254f6b272e3b67bf31c42ee9da62a449d74d1478",
              "lessThan": "0d80ba0a204c6a16bd7778b50de578dff107c0fe",
              "versionType": "git"
            }
          ],
          "programFiles": [
            "drivers/net/dsa/mt7530.c"
          ],
          "defaultStatus": "unaffected"
        },
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.15"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "6.15",
              "versionType": "semver"
            },
            {
              "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/net/dsa/mt7530.c"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2026-10-18T16:17:08.553",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/0d80ba0a204c6a16bd7778b50de578dff107c0fe",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/2357c682f6eaf639dec88c68b3c0c93a3b802635",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/f306e465b5a2091cd3fe3dd0feb10cfc94cfb2f8",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Received",
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet: dsa: mt7530: leave the MDIO IRQ mappings to regmap-irq\n\nmt7530_remove_common() disposes the per-PHY interrupt mappings from\n.remove, but the regmap-irq chip that owns the domain is devm-registered,\nso its parent interrupt is only freed once .remove has returned. The\nswitch's own regmap-irq thread can therefore still dispatch on a mapping\nthat is already gone: irq_find_mapping() returns 0, irq_to_desc() returns\nNULL and handle_nested_irq() locks desc->lock without checking it. The\nattached PHYs have not given those interrupts back yet either, which the\nkernel warns about a moment before the fault.\n\nregmap_del_irq_chip() disposes the same mappings itself, after freeing the\nparent interrupt and before removing the domain, so there is nothing left\nfor the driver to do here. Until it runs the descriptors stay alive, and a\nlate dispatch on one of them is harmless: dsa_unregister_switch() has freed\nthe PHY handlers by then, so handle_nested_irq() finds no action and\nreturns."
    }
  ],
  "lastModified": "2026-10-19T10:19:13.047",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}