Activity log
- Created & dismissed (max. allowed matches exceeded) suggestion
batman-adv: frag: disallow unicast fragment in fragment
In the Linux kernel, the following vulnerability has been resolved: batman-adv: frag: disallow unicast fragment in fragment batadv_frag_skb_buffer() is called by batadv_batman_skb_recv() when a BATADV_UNICAST_FRAG packet is received. Once all fragments are collected and the packet is reassembled, batadv_recv_frag_packet() calls batadv_batman_skb_recv() again to process the defragmented payload. A malicious sender can craft a BATADV_UNICAST_FRAG packet whose reassembled payload is itself a BATADV_UNICAST_FRAG packet (matryoshka-style nesting). Each nesting level recurses through batadv_batman_skb_recv() without bound, growing the kernel stack until it is exhausted. Since refragmentation or fragments in fragments are not actually allowed, discard all packets which are still BATADV_UNICAST_FRAG packets after the defragmentation process.
References
Affected products
- =<6.6.*
- =<5.15.*
- =<6.18.*
- <3.13
- =<6.12.*
- <bc62216dc8e221e3781afa14430f45208bfa9af9
- =<7.0.*
- <b54e459cf86943583c1aa2ee3081874e7ab1f5f3
- <bcda4814dc6524283c0b958882cb963d75fe411d
- <0c208fa3859e3a33a1c38bebc41d021166e94ac8
- ==3.13
- <7138c35c9ad39a2fca6264af6b87466471f04ffc
- <5895ad21c7059a652da83fb817510f7a1e962abf
- =<*
- =<5.10.*
- =<6.1.*
- <5418be6c2e117bf8a316582795a8e3ff90f45e5d
- <aea54d0bbe156d5ab7d00d68f66149ff41f4612a