« Volver al listado

CVE-2026-98026

Estado: RecibidaSin puntuar—

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

net: bridge: mcast: properly convert mglist to rcu

Sashiko reported a bug [1] that br_multicast_del_port_group unlists the port group not using proper rcu helper that preserves the next pointer and after that immediately frees the port group without waiting for rcu grace period. The only rcu walker of mglist is br_multicast_list_adjacent() and it turns out that function has always been buggy because mglist was never properly converted to RCU. Fix it by converting it to rcu and moving its initialization after eth_addr's. Initializing p->next can use RCU_INIT_POINTER because we have a barrier from the hlist_add_head_rcu call later, besides we're initializing an unpublished structure anyway.

Leer descripción completaMostrar menos

[1] https://netdev-ai.bots.linux.dev/sashiko/#/patchset/20260826014200.362304-1-littleddfu%40gmail.com

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-98026",
  "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": "07f8ac4a1e26e8283542cdaf658a6e2a12fd6980",
              "lessThan": "37cb9a81600da8250f24e25edc07253b62353cbe",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "07f8ac4a1e26e8283542cdaf658a6e2a12fd6980",
              "lessThan": "98247c8264d2076f81fa114bdfa2c2271953ac7c",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "07f8ac4a1e26e8283542cdaf658a6e2a12fd6980",
              "lessThan": "38ab2a435001a3c4dbeb70a52f5921e1ccd66f55",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "07f8ac4a1e26e8283542cdaf658a6e2a12fd6980",
              "lessThan": "f7bf57e94a5d6214b87be08486cb33836fbfa573",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "07f8ac4a1e26e8283542cdaf658a6e2a12fd6980",
              "lessThan": "4b772869a1e5f9da5cef5b9c722ec0aa424ee0a0",
              "versionType": "git"
            }
          ],
          "programFiles": [
            "net/bridge/br_multicast.c"
          ],
          "defaultStatus": "unaffected"
        },
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "3.16"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "3.16",
              "versionType": "semver"
            },
            {
              "status": "unaffected",
              "version": "6.6.158",
              "versionType": "semver",
              "lessThanOrEqual": "6.6.*"
            },
            {
              "status": "unaffected",
              "version": "6.12.111",
              "versionType": "semver",
              "lessThanOrEqual": "6.12.*"
            },
            {
              "status": "unaffected",
              "version": "6.18.53",
              "versionType": "semver",
              "lessThanOrEqual": "6.18.*"
            },
            {
              "status": "unaffected",
              "version": "7.2.7",
              "versionType": "semver",
              "lessThanOrEqual": "7.2.*"
            },
            {
              "status": "unaffected",
              "version": "7.3-rc3",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ],
          "programFiles": [
            "net/bridge/br_multicast.c"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2026-09-25T11:17:31.230",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/37cb9a81600da8250f24e25edc07253b62353cbe",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/38ab2a435001a3c4dbeb70a52f5921e1ccd66f55",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/4b772869a1e5f9da5cef5b9c722ec0aa424ee0a0",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/98247c8264d2076f81fa114bdfa2c2271953ac7c",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/f7bf57e94a5d6214b87be08486cb33836fbfa573",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Received",
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet: bridge: mcast: properly convert mglist to rcu\n\nSashiko reported a bug [1] that br_multicast_del_port_group unlists the\nport group not using proper rcu helper that preserves the next pointer and\nafter that immediately frees the port group without waiting for rcu grace\nperiod. The only rcu walker of mglist is br_multicast_list_adjacent() and\nit turns out that function has always been buggy because mglist was never\nproperly converted to RCU. Fix it by converting it to rcu and moving its\ninitialization after eth_addr's. Initializing p->next can use\nRCU_INIT_POINTER because we have a barrier from the hlist_add_head_rcu call\nlater, besides we're initializing an unpublished structure anyway.\n\n[1] https://netdev-ai.bots.linux.dev/sashiko/#/patchset/20260826014200.362304-1-littleddfu%40gmail.com"
    }
  ],
  "lastModified": "2026-10-03T11:18:25.677",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}