drop_monitor: fix size calculations for 64-bit attributes
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.1.189, 6.6.158, 6.12.111, 6.18.53, 7.1.6
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: yes
- Technical impact: partial
Summary
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.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: yes · Technical impact: partial
- Record last updated
Affected versions
- Linux Linux
From ca30707dee2bc8bc81cfd8b4277fe90f7ca6df1f · fixed in 1275a4769c126405c6c63b6372daff120ac679a6; From ca30707dee2bc8bc81cfd8b4277fe90f7ca6df1f · fixed in 0da8f531336b28a59b23e5a67d40eaed15906201; From ca30707dee2bc8bc81cfd8b4277fe90f7ca6df1f · fixed in 6048ed2dfb33426c8aef32f8d225ea91c66813db; From ca30707dee2bc8bc81cfd8b4277fe90f7ca6df1f · fixed in 925669d4cfd47a9019ab29b40676215bab5dae35; From ca30707dee2bc8bc81cfd8b4277fe90f7ca6df1f · fixed in 4a9e30764e80693bcf875c776170edce20f94fe0; From ca30707dee2bc8bc81cfd8b4277fe90f7ca6df1f · fixed in 7089f7ab99c89f443c92d8fcc585e63f2727f0b3
- Linux Linux
5.4
- KernelLinux
From 5.4.0 · fixed in 6.1.189; From 6.2.0 · fixed in 6.6.158; From 6.7.0 · fixed in 6.12.111; From 6.13.0 · fixed in 6.18.53; From 6.19.0 · fixed in 7.1.6