Description
In the Linux kernel, the following vulnerability has been resolved: batman-adv: v: prevent OGM aggregation on disabled hardif When an interface gets disabled, the worker is correctly disabled by batadv_hardif_disable_interface() -> ... -> batadv_v_ogm_iface_disable(). In this process, the skb aggr_list is also freed. But batadv_v_ogm_send_meshif() can still queue new skbs (via batadv_v_ogm_queue_on_if()) to the aggr_list. This will only stop after all cores can no longer find the RCU protected list of hard interfaces. These queued skbs will never be freed or consumed by batadv_v_ogm_aggr_work. The batadv_v_ogm_iface_disable() function must block batadv_v_ogm_queue_on_if() to avoid leak of skbs.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
f89255a02f1d75d8e1b9d1c31435fcb64840cb2a to < d462ced79dd430200cf888984e8005da77fc810baffectedf89255a02f1d75d8e1b9d1c31435fcb64840cb2a to < f79deaaf822ab0ee2424cf28781f9ab91576bea3affectedf89255a02f1d75d8e1b9d1c31435fcb64840cb2a to < d3569327fc7395b2b0461a0a0cb77a0bb74786c0affectedf89255a02f1d75d8e1b9d1c31435fcb64840cb2a to < 97644fdaaf6446ffbe182c5eb804fceb5b1a51b7affectedf89255a02f1d75d8e1b9d1c31435fcb64840cb2a to < f04dde74399431fb07abbdd9cd5d0ed624771d04affectedf89255a02f1d75d8e1b9d1c31435fcb64840cb2a to < 3d4548c96d6f21ac1a9b06c5f82f3ef439c87023affectedf89255a02f1d75d8e1b9d1c31435fcb64840cb2a to < 86ab6b6fb5b82163bf6c45780bb72150021d7349affectedf89255a02f1d75d8e1b9d1c31435fcb64840cb2a to < d11c00b95b2a3b3934007fc003dccc6fdcc061adaffected
Linux Linux
Default version status: affected
5.4affected0 to < 5.4unaffected5.10.260 to ≤ 5.10.*unaffected5.15.211 to ≤ 5.15.*unaffected6.1.177 to ≤ 6.1.*unaffected6.6.144 to ≤ 6.6.*unaffected6.12.95 to ≤ 6.12.*unaffected6.18.38 to ≤ 6.18.*unaffected7.1.3 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/d462ced79dd430200cf888984e8005da77fc810b ↗
- https://git.kernel.org/stable/c/f79deaaf822ab0ee2424cf28781f9ab91576bea3 ↗
- https://git.kernel.org/stable/c/d3569327fc7395b2b0461a0a0cb77a0bb74786c0 ↗
- https://git.kernel.org/stable/c/97644fdaaf6446ffbe182c5eb804fceb5b1a51b7 ↗
- https://git.kernel.org/stable/c/f04dde74399431fb07abbdd9cd5d0ed624771d04 ↗
- https://git.kernel.org/stable/c/3d4548c96d6f21ac1a9b06c5f82f3ef439c87023 ↗
- https://git.kernel.org/stable/c/86ab6b6fb5b82163bf6c45780bb72150021d7349 ↗
- https://git.kernel.org/stable/c/d11c00b95b2a3b3934007fc003dccc6fdcc061ad ↗