In the Linux kernel, the following vulnerability has been resolved: drop_monitor: fix size...
🔗 CVE IDs covered (1)
📋 Description
In the Linux kernel, the following vulnerability has been resolved:
drop_monitor: fix size calculations for 64-bit attributes
net_dm_packet_report_fill() and net_dm_hw_packet_report_fill() use nla_put_u64_64bit() to append 64-bit attributes (NET_DM_ATTR_PC and NET_DM_ATTR_TIMESTAMP).
On 32-bit architectures without CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS, nla_put_u64_64bit() may append a 4-byte NET_DM_ATTR_PAD attribute for 64-bit alignment.
However, net_dm_packet_report_size() and net_dm_hw_packet_report_size() used nla_total_size(sizeof(u64)) instead of nla_total_size_64bit(sizeof(u64)), budgeting 12 bytes instead of up to 16 bytes.
This under-estimation of SKB size can lead to an skb_over_panic() when __nla_reserve() or skb_put() is subsequently called.
Fix this by using nla_total_size_64bit(sizeof(u64)) in both size calculations.
🔗 References (8)
- https://nvd.nist.gov/vuln/detail/CVE-2026-68287
- https://git.kernel.org/stable/c/4a9e30764e80693bcf875c776170edce20f94fe0
- https://git.kernel.org/stable/c/7089f7ab99c89f443c92d8fcc585e63f2727f0b3
- https://git.kernel.org/stable/c/6048ed2dfb33426c8aef32f8d225ea91c66813db
- https://git.kernel.org/stable/c/925669d4cfd47a9019ab29b40676215bab5dae35
- https://git.kernel.org/stable/c/0da8f531336b28a59b23e5a67d40eaed15906201
- https://git.kernel.org/stable/c/1275a4769c126405c6c63b6372daff120ac679a6
- https://github.com/advisories/GHSA-mc29-r954-2m26