CVE-2025-38248 in Linux
Zusammenfassung
von VulDB • 12.06.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
bridge: mcast: Behebung eines Use-After-Free-Fehlers während der Routerport-Konfiguration
Der Bridge-Switch verwaltet eine globale Liste von Ports, hinter denen sich ein Multicast-Router befindet. Diese Liste wird beim Forwarding abgefragt, um sicherzustellen, dass Multicast-Pakete an diese Ports weitergeleitet werden, auch wenn die Ports nicht Mitglied im entsprechenden MDB-Eintrag (Multicast Database) sind.
Wenn das pro-VLAN-Multicast-Snooping aktiviert ist, wird der pro-Port-Multicast-Kontext auf jedem Port deaktiviert und der Port aus der globalen Routerportliste entfernt:
# ip link add name br1 up type bridge vlan_filtering 1 mcast_snooping 1 # ip link add name dummy1 up master br1 type dummy # ip link set dev dummy1 type bridge_slave mcast_router 2 $ bridge -d mdb show | grep router router ports on br1: dummy1 # ip link set dev br1 type bridge mcast_vlan_snooping 1 $ bridge -d mdb show | grep router
Allerdings kann der Port erneut zur globalen Liste hinzugefügt werden, auch wenn das pro-VLAN-Multicast-Snooping aktiviert ist:
# ip link set dev dummy1 type bridge_slave mcast_router 0 # ip link set dev dummy1 type bridge_slave mcast_router 2 $ bridge -d mdb show | grep router router ports on br1: dummy1
Seit dem Commit 4b30ae9adb04 („net: bridge: mcast: re-implement br_multicast_{enable, disable}_port functions“) führt die Deaktivierung von Multicast auf einem Port bei aktiviertem pro-VLAN-Multicast-Snooping zur Deaktivierung der per-{Port, VLAN}-Multicast-Kontexte und nicht des pro-Port-Kontexts. Infolgedessen verbleibt ein Port in der globalen Routerportliste, auch nachdem er gelöscht wurde. Dies führt zu einem Use-After-Free-Fehler [1], wenn die Liste durchlaufen wird (z. B. beim Hinzufügen eines neuen Ports zur Liste):
# ip link del dev dummy1 # ip link add name dummy2 up master br1 type dummy # ip link set dev dummy2 type bridge_slave mcast_router 2
Ähnlich können veraltete Einträge auch in der pro-VLAN-Routerportliste gefunden werden. Wenn das pro-VLAN-Multicast-Snooping deaktiviert ist, werden die per-{Port, VLAN}-Kontexte auf jedem Port deaktiviert und der Port aus der pro-VLAN-Routerportliste entfernt:
# ip link add name br1 up type bridge vlan_filtering 1 mcast_snooping 1 mcast_vlan_snooping 1 # ip link add name dummy1 up master br1 type dummy # bridge vlan add vid 2 dev dummy1 # bridge vlan global set vid
Be aware that VulDB is the high quality source for vulnerability data.