CVE-2026-80842 in Linuxinfo

Zusammenfassung

von VulDB • 04.09.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

net: bridge: mcast: Behebung eines Use-After-Free-Fehlers im Multicast-Kontext einer Master-VLAN

br_multicast_toggle_one_vlan() setzt BR_VLFLAG_MCAST_ENABLED unter br->multicast_lock zurück, bevor der Multicast-Kontext einer VLAN beendet wird. Dies ist die Teardown-Handshake-Semantik: Lockless-Leser prüfen das Flag über br_multicast_ctx_should_use() -> br_multicast_ctx_vlan_disabled(), sodass kein Leser den Kontext erneut aktivieren kann, sobald er unter dem Sperrschutz zurückgesetzt wurde.

Bei einer Master-VLAN wird dieser Handshake jedoch nie ausgeführt. __vlan_del() setzt BRIDGE_VLAN_INFO_BRENTRY vor dem Aufruf von br_vlan_put_master() zurück, wodurch br_multicast_toggle_one_vlan(masterv, false) aufgrund von !br_vlan_is_brentry(vlan) frühzeitig beendet wird: Das Flag bleibt gesetzt und br->multicast_lock wird niemals angefordert. Anschließend räumt br_vlan_put_master() den Kontext in br_multicast_ctx_deinit() auf und gibt die VLAN über call_rcu() frei, während ein Leser, der sich noch innerhalb von rcu_read_lock() befindet, den Kontext als aktiviert ansieht und ihn erneut scharfschaltet (re-arms). Der Port- und Port-VLAN-Zweig dieser Funktion enthält keinen br_vlan_is_brentry()-Test und setzt das Flag unter br->multicast_lock um, sodass er nicht betroffen ist.

Der Leserpfad ist der Bridge-Sende-Pfad. Für eine Master-VLAN wählt br_multicast_rcv() brmctx = &vlan->br_mcast_ctx mit pmctx = NULL aus, wodurch IGMP-Nachrichten, die an das Bridging-Gerät gesendet werden, die Timer des Kontexts nach dem bereits erfolgten Stopp durch br_multicast_ctx_deinit() erneut aktivieren.

BUG: KASAN: slab-use-after-free in detach_if_pending+0x412/0x4a0 Write of size 8 at addr ffff88810ac39918 by task brmc/601 __mod_timer+0x51a/0xc50 br_multicast_host_join+0x25b/0x390 __br_multicast_add_group+0x468/0x530 br_ip4_multicast_add_group+0x1a0/0x260 br_multicast_rcv+0x2cda/0x61e0 br_dev_xmit+0x6c4/0x1540 Allocated by task 610: br_vlan_add+0x111/0xb40 br_vlan_info+0x370/0x3e0 Freed by task 0: kfree+0x1a7/0x4f0 rcu_core+0x7dc/0x10a0

Es wird nur beim Aktivieren auf br_vlan_is_brentry() getestet, analog zum Test br_multicast_ctx_vlan_global_disabled(), der daneben steht. Beim Deaktivieren wird BR_VLFLAG_MCAST_ENABLED unter br->multicast_lock immer zurückgesetzt, bevor br_multicast_ctx_deinit() den Kontext aufräumt.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Zuständig

Linux

Reservieren

26.08.2026

Veröffentlichung

04.09.2026

Moderieren

akzeptiert

Eintrag

VDB-399044

CPE

bereit

EPSS

0.00177

KEV

nein

Aktivitäten

very low

Quellen

Do you need the next level of professionalism?

Upgrade your account now!