CyberRota Analysis
AI-GeneratedThe vulnerability in the Linux kernel affects the handling of route notifications, specifically in the `fib_nlmsg_size()` function, which miscalculates the required space for nexthop attributes. This can lead to buffer overflows, resulting in kernel panics when the system encounters an oversized skb allocation, particularly if the `panic_on_warn` option is enabled. System administrators and developers managing Linux environments should prioritize this issue to prevent potential system crashes and ensure stability in routing functionalities.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: ipv4: Fix fib_nlmsg_size() for RTA_VIA nexthops fib_nlmsg_size() still estimates nexthop space as if every gateway is encoded as an IPv4 RTA_GATEWAY attribute. IPv4 routes can also carry an IPv6 gateway, which fib_nexthop_info() dumps as RTA_VIA. As a result, route notifications can allocate an skb that is too small. fib_dump_info() then fails with -EMSGSIZE and rtmsg_fib() hits the WARN_ON() that marks such failures as a fib_nlmsg_size() bug. With panic_on_warn set, this becomes a kernel panic. Mirror the actual nexthop dump layout in fib_nlmsg_size(): account for IPv6 nexthop gateways dumped as RTA_VIA, for the no-header rtnexthop layout used inside RTA_MULTIPATH, and for RTA_FLOW only when it is actually present.