ipv4: Fix fib_nlmsg_size() for RTA_VIA nexthops
3Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackepss 0.2%
exploitation probability
0.2%top 89% of all CVEs
observed exploitation
nono source reports it
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.
Affected products
Linux · LinuxReferences
https://git.kernel.org/stable/c/0f0ca602941d0a81ae9514943ca06c55159c6385https://git.kernel.org/stable/c/4a5dfbae5179f6574695012a980476254df2d295https://git.kernel.org/stable/c/4ff9548d84945d2cbf9e4c207288063a200ea397https://git.kernel.org/stable/c/5307a53599fa762c06e475ee4a375252074fd324https://git.kernel.org/stable/c/57195f0ab5cfbb5ee0864e5aff15ceb48f5a5e28https://git.kernel.org/stable/c/7f80ad373ce4a7af5367ff273cea0f16e91387f3https://git.kernel.org/stable/c/9b22f13524fa0de0d963bbd3002df6c28bae3395https://git.kernel.org/stable/c/a59edda6eda1252340354322d8ab318b2e9052fb