xfrm: esp: restore combined single-frag length gate
- 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.259, 5.15.210, 4.15, 4.20, 5.5, and 6 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: xfrm: esp: restore combined single-frag length gate The ESP out-of-place fast path appends the trailer in esp_output_head() before esp_output_tail() allocates the destination page frag. The head-side gate currently checks skb->data_len and tailen separately, but the tail code allocates a single destination frag from the combined post-trailer skb->data_len. Reject the page-frag fast path when the combined aligned length exceeds a page. Otherwise skb_page_frag_refill() may fall back to a single page while the destination sg still spans the combined skb->data_len. Restore this combined-length page gate for both IPv4 and IPv6.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: yes · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From c075c3ea031757f8ea2d34567565b61a868c08d5 · fixed in 566295735530ee513326049b0540f32ec050bf2e; From a583f2f3c8788bffd7fd7baeb76bd6d80543d7ea · fixed in 5d7ab86e2b6bc23054616bf6ac562013bf60af8c; From 5bd8baab087dff657e05387aee802e70304cc813 · fixed in 36519e3d941fc99d3b52c134dbaf311f987a4708; From 5bd8baab087dff657e05387aee802e70304cc813 · fixed in 322e48187e0245ab2fff6fec2220b0cae677dbec; From 5bd8baab087dff657e05387aee802e70304cc813 · fixed in b84091ceddc9f133229dceab3ccc930bf27f9cba; From 5bd8baab087dff657e05387aee802e70304cc813 · fixed in c093468aea8277f77272a4f199b2e15e19cabb59; From 5bd8baab087dff657e05387aee802e70304cc813 · fixed in 65f3b3fc2347b89fe21db1e92c7681368415f095; From 5bd8baab087dff657e05387aee802e70304cc813 · fixed in dfa0d7b0ff1eb6b2c416b8fdb9b4f2cefba57a40; From 5.10.113 · fixed in 5.10.259; From 5.15.36 · fixed in 5.15.210; From 4.14.288 · fixed in 4.15; From 4.19.252 · fixed in 4.20; From 5.4.205 · fixed in 5.5; From 5.17.5 · fixed in 5.18
- Linux Linux
5.18
- KernelLinux
fixed in 5.10.259; From 5.11.0 · fixed in 5.15.210; From 5.16.0 · fixed in 6.1.176; From 5.18.0 · fixed in 6.6.143; From 6.2.0 · fixed in 6.12.93; From 6.7.0 · fixed in 6.18.35; From 6.13.0 · fixed in 7.0.12
References 8
git.kernel.org
- stable/c/566295735530ee513326049b0540f32ec050bf2e
- stable/c/5d7ab86e2b6bc23054616bf6ac562013bf60af8c
- stable/c/36519e3d941fc99d3b52c134dbaf311f987a4708
- stable/c/322e48187e0245ab2fff6fec2220b0cae677dbec
- stable/c/b84091ceddc9f133229dceab3ccc930bf27f9cba
- stable/c/c093468aea8277f77272a4f199b2e15e19cabb59
- stable/c/65f3b3fc2347b89fe21db1e92c7681368415f095
- stable/c/dfa0d7b0ff1eb6b2c416b8fdb9b4f2cefba57a40