---
id: CVE-2026-98487
title: 'net: bridge: mdb: restart port group walk after deletion'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  net: bridge: mdb: restart port group walk after deletion

  br_mdb_flush_pgs() keeps a pointer-to-pointer cursor while walking
  mp->ports. br_multicast_del_pg() can re-ent…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= a6acb535afb2a3b688a7858f05b61f0433e480d5 <
    46ec55855c972504258c371677ac039ba20e5d12
  - >-
    Linux >= a6acb535afb2a3b688a7858f05b61f0433e480d5 <
    ab3c4a4c85f2e1e8d04b5c1770dea8412d21c7fe
  - >-
    Linux >= a6acb535afb2a3b688a7858f05b61f0433e480d5 <
    fe2a42789c12eb7c5d3a42191e2cc735a6c35ead
  - >-
    Linux >= a6acb535afb2a3b688a7858f05b61f0433e480d5 <
    ab1404ac81154a89fb61ac50ae9a04cd8d4834dc
  - Linux 6.8
published: '2026-10-18'
updated: '2026-10-18'
sourceUpdated: '2026-10-18T15:16:04.746Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-98487'
references:
  - url: 'https://git.kernel.org/stable/c/46ec55855c972504258c371677ac039ba20e5d12'
  - url: 'https://git.kernel.org/stable/c/ab3c4a4c85f2e1e8d04b5c1770dea8412d21c7fe'
  - url: 'https://git.kernel.org/stable/c/fe2a42789c12eb7c5d3a42191e2cc735a6c35ead'
  - url: 'https://git.kernel.org/stable/c/ab1404ac81154a89fb61ac50ae9a04cd8d4834dc'
tags:
  - cve.org
ingestedAt: '2026-10-18T15:45:12.292Z'
---

## Overview

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

net: bridge: mdb: restart port group walk after deletion

br_mdb_flush_pgs() keeps a pointer-to-pointer cursor while walking
mp->ports. br_multicast_del_pg() can re-enter the same MDB entry through
br_multicast_sg_del_exclude_ports() and unlink other port groups. If the
cursor points into one of those groups, the next iteration dereferences a
stale cursor and can leave mp->ports pointing at freed memory.

A following RTM_GETMDB exposes the dangling pointer:

  BUG: KASAN: slab-use-after-free in br_mdb_dump
  Read of size 8
    br_mdb_dump
    rtnl_mdb_dump
    rtnl_dumpit
    netlink_dump

Reset the cursor to mp->ports after every deletion. The deletion removes at
least the selected group, so the restarted walk always makes progress.

## Affected

- `Linux >= a6acb535afb2a3b688a7858f05b61f0433e480d5 < 46ec55855c972504258c371677ac039ba20e5d12`
- `Linux >= a6acb535afb2a3b688a7858f05b61f0433e480d5 < ab3c4a4c85f2e1e8d04b5c1770dea8412d21c7fe`
- `Linux >= a6acb535afb2a3b688a7858f05b61f0433e480d5 < fe2a42789c12eb7c5d3a42191e2cc735a6c35ead`
- `Linux >= a6acb535afb2a3b688a7858f05b61f0433e480d5 < ab1404ac81154a89fb61ac50ae9a04cd8d4834dc`
- `Linux 6.8`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
