Description
In the Linux kernel, the following vulnerability has been resolved: bonding: alb: fix uninitialized transport header access in alb_determine_nd() alb_determine_nd() uses icmp6_hdr(skb) to inspect ICMPv6 headers. However, in xmit paths (e.g. packets sent via AF_PACKET / raw sockets or forwarded packets), skb->transport_header is not guaranteed to be initialized. While pskb_network_may_pull() ensures the packet data is linear starting from the network header, it does not set or adjust the transport header offset. Dereferencing icmp6_hdr(skb) can therefore access out-of-bounds memory. Fetch the icmp6hdr directly after ipv6hdr following pskb_network_may_pull(), and reload ipv6hdr in case pskb_may_pull() reallocated skb->head. Also remove the unused bond argument from alb_determine_nd().
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
0da8aa00bfcfeb3f4e6537dd8e2001e0727ba549 to < 862c8eb6947689c44fe11353755576a3672563a5affected0da8aa00bfcfeb3f4e6537dd8e2001e0727ba549 to < 7adb1bf25b0c5cedfb49b6e82844394d4f3c0d99affected0da8aa00bfcfeb3f4e6537dd8e2001e0727ba549 to < e39cf90bd856443542b97933289749fca07476bfaffected0da8aa00bfcfeb3f4e6537dd8e2001e0727ba549 to < 27314f96d29b54e815e7a9b84c3273f1895e68e2affected0da8aa00bfcfeb3f4e6537dd8e2001e0727ba549 to < 3b178894931a268c09126a5b53630f343e10e296affected0da8aa00bfcfeb3f4e6537dd8e2001e0727ba549 to < 70f3995830d3f1e79faa14eb0605914f778feca9affected
Linux Linux
Default version status: affected
5.18affected0 to < 5.18unaffected6.1.189 to ≤ 6.1.*unaffected6.6.158 to ≤ 6.6.*unaffected6.12.111 to ≤ 6.12.*unaffected6.18.53 to ≤ 6.18.*unaffected7.2.7 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/862c8eb6947689c44fe11353755576a3672563a5 ↗
- https://git.kernel.org/stable/c/7adb1bf25b0c5cedfb49b6e82844394d4f3c0d99 ↗
- https://git.kernel.org/stable/c/e39cf90bd856443542b97933289749fca07476bf ↗
- https://git.kernel.org/stable/c/27314f96d29b54e815e7a9b84c3273f1895e68e2 ↗
- https://git.kernel.org/stable/c/3b178894931a268c09126a5b53630f343e10e296 ↗
- https://git.kernel.org/stable/c/70f3995830d3f1e79faa14eb0605914f778feca9 ↗