CVE Catalog

CVE-2026-89950

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel batman-adv module, batadv_mcast_forw_packet() and batadv_mcast_forw_scrape() can be called indirectly via batadv_mcast_forw_mcsend() without linearizing the skb, triggering SKB_LINEAR_ASSERT() and a fatal BUG(). Linearization should occur during head expansion. The fix ensures proper buffer linearization.

Risk Assessment

The vulnerability can cause a fatal kernel BUG and system panic, resulting in denial of service. It affects systems using multicast in batman-adv.

Recommendation

Update the Linux kernel to a version containing the fix that linearizes skbuff during multicast packet generation. Monitor mesh systems for unexpected reboots.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: batman-adv: mcast: linearize skbuff for packet generation batadv_mcast_forw_packet() and batadv_mcast_forw_scrape() is not only called (indirectly) by the unsharing+linearizing batadv_recv_mcast_packet() handler. When it is called (indirectly) by batadv_mcast_forw_mcsend() then it will be unshared but not linearized. The SKB_LINEAR_ASSERT() can therefore cause a fatal BUG(). The linearization should happen during the expansion of the head because the scrape function can be hit already during the initial batadv_mcast_forw_mode() selection code: * batadv_interface_tx * batadv_mcast_forw_mode * batadv_mcast_forw_mode_by_count() * batadv_mcast_forw_push() -> calls batadv_mcast_forw_expand_head() before everything else * batadv_mcast_forw_push_tvlvs() * batadv_mcast_forw_push_dests() * batadv_mcast_forw_push_adjust_padding() * batadv_mcast_forw_scrape()

Vulnerability data from NVD (NIST) · CISA KEV · EPSS