igbvf: Fix leak in TX DMA error cleanup
- 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 5.10.265, 5.15.216, 6.1.183, 6.6.151, 6.12.103, and 2 more
- 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: total
Summary
In the Linux kernel, the following vulnerability has been resolved: igbvf: Fix leak in TX DMA error cleanup If an error is encountered while mapping TX buffers, the driver should unmap any buffers already mapped for that skb. Because count is incremented before each frag mapping, it will always match the correct number of unmappings needed when dma_error is reached. Decrementing count before the while loop in dma_error causes an off-by-one error. If any mapping was successful before an unsuccessful mapping, exactly one DMA mapping (the head) would leak. This bug was introduced by a 2010 fix for an endless loop in dma_error. All other affected drivers have already been fixed.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: yes · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From c1fa347f20f17f14a4a1575727fa24340e8a9117 · fixed in e42b7225c45f57b42306b80cdd3bda202bae7293; From c1fa347f20f17f14a4a1575727fa24340e8a9117 · fixed in e3ed89c257f6361f13df23023cd10ace830330ad; From c1fa347f20f17f14a4a1575727fa24340e8a9117 · fixed in 56726ff12cb6759ab90d6f5332c2377aeca7d249; From c1fa347f20f17f14a4a1575727fa24340e8a9117 · fixed in 31089f4eab42e0fc248ec80c26f9b0bad59ba4cc; From c1fa347f20f17f14a4a1575727fa24340e8a9117 · fixed in bc25d56c03e41c10bc4b40e99ca5d7b941675c04; From c1fa347f20f17f14a4a1575727fa24340e8a9117 · fixed in 845a9cdd9b03b7b6fa8de3ee80579780350a7f65; From c1fa347f20f17f14a4a1575727fa24340e8a9117 · fixed in df07003b5a6c6c9fce60d765d6a3da815a74c41c; From c1fa347f20f17f14a4a1575727fa24340e8a9117 · fixed in 0565052b7e2f436b7f1541f4849da96dc0aa7a0e
- Linux Linux
2.6.33
- KernelLinux
From 2.6.33 · fixed in 5.10.265; From 5.11.0 · fixed in 5.15.216; From 5.16.0 · fixed in 6.1.183; From 6.2.0 · fixed in 6.6.151; From 6.7.0 · fixed in 6.12.103; From 6.13.0 · fixed in 6.18.44; From 6.19.0 · fixed in 7.1.8
References 8
git.kernel.org
- stable/c/e42b7225c45f57b42306b80cdd3bda202bae7293
- stable/c/e3ed89c257f6361f13df23023cd10ace830330ad
- stable/c/56726ff12cb6759ab90d6f5332c2377aeca7d249
- stable/c/31089f4eab42e0fc248ec80c26f9b0bad59ba4cc
- stable/c/bc25d56c03e41c10bc4b40e99ca5d7b941675c04
- stable/c/845a9cdd9b03b7b6fa8de3ee80579780350a7f65
- stable/c/df07003b5a6c6c9fce60d765d6a3da815a74c41c
- stable/c/0565052b7e2f436b7f1541f4849da96dc0aa7a0e