{
  "cveId": "CVE-2026-99117",
  "url": "https://patchblox.com/security/cve/CVE-2026-99117",
  "summary": "CVE-2026-99117 is fixed in linux on 1 platform, first by DEBIAN-CVE-2026-99117, released November 3, 2026. It is not reported as exploited. Patch Radar priority: High.",
  "title": "net: bridge: mcast: don\u0027t truncate the port group walk on teardown",
  "description": "In the Linux kernel, the following vulnerability has been resolved:  net: bridge: mcast: don\u0027t truncate the port group walk on teardown  __br_multicast_disable_port_ctx() and br_multicast_del_port() walk port-\u003Emglist with hlist_for_each_entry_safe(). However, br_multicast_find_del_pg() can also delete other entries from the same list through br_multicast_fwd_src_remove() or __fwd_del_star_excl().  If such an entry is the iterator\u0027s saved next node, hlist_del_init() clears its -\u003Enext and terminates the walk early. The reproducer triggers this in both teardown walks, leaving port groups in the bridge mdb with a dangling -\u003Ekey.port after del_nbp() frees the port:    BUG: KASAN: slab-use-after-free in __mdb_fill_info\u002B0x1191/0x1320    __mdb_fill_info\u002B0x1191/0x1320    br_mdb_dump\u002B0x594/0xe40    rtnl_mdb_dump\u002B0x1cf/0x5d0  Use hlist_del_init_rcu() to unlink the group while preserving -\u003Enext. br_multicast_del_pg() and the teardown walks run under br-\u003Emulticast_lock. The GC worker must acquire the same lock before detaching the group for destruction, so the node remains alive while the walk uses the preserved pointer.  Preserving -\u003Enext means a walk can now reach a group that an earlier iteration already deleted as a side effect. That group is off mp-\u003Eports, so br_multicast_find_del_pg() would fall through its port scan and hit the trailing WARN_ON(1). Skip such groups at the top of that helper: a port group is put on port-\u003Emglist when it is created and only unlinked when it is deleted, so hlist_unhashed() identifies exactly this case.",
  "published": "2026-10-28T11:17:31Z",
  "severity": "Moderate",
  "cvss": 7.8,
  "cvssVector": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
  "epss": 0.00126,
  "epssPercentile": 0.0231,
  "priority": "High",
  "priorityTier": 3,
  "exploited": false,
  "vendorExploited": false,
  "disclosed": false,
  "vendorAdvisory": "https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-99117",
  "fixes": [
    {
      "platform": "linux",
      "product": "linux",
      "release": "Debian 13.5 (trixie)",
      "fixedVersion": "6.12.115-2",
      "fix": "DEBIAN-CVE-2026-99117",
      "url": "https://patchblox.com/security/fix/linux/debian-cve-2026-99117",
      "released": "2026-11-03T18:58:21Z"
    },
    {
      "platform": "linux",
      "product": "linux",
      "release": "Debian 14",
      "fixedVersion": "7.2.13-1",
      "fix": "DEBIAN-CVE-2026-99117",
      "url": "https://patchblox.com/security/fix/linux/debian-cve-2026-99117",
      "released": "2026-11-03T18:58:21Z"
    }
  ],
  "noFixYet": [],
  "dataAsOf": "2026-11-08T13:06:02Z",
  "attribution": {
    "text": "Data: Patchblox Patch Radar",
    "url": "https://patchblox.com/security/patch-radar",
    "terms": "https://patchblox.com/security/patch-radar/use-the-data"
  }
}