CVE-2026-52935: xfrm: espintcp: do not reuse an in-progress partial send
In the Linux kernel, the following vulnerability has been resolved:
xfrm: espintcp: do not reuse an in-progress partial send
espintcp keeps a single in-flight transmit in ctx->partial. Before building a new skmsg, espintcpsendmsg() first tries to flush that state through espintcppushmsgs().
For blocking callers, espintcppushmsgs() may return success even when the previous partial send is still pending. espintcpsendmsg() would then reinitialize emsg->skmsg and reuse ctx->partial while the old transfer still owns that state.
Do not rebuild the send message when ctx->partial is still in progress. If espintcppushmsgs() returns with emsg->len still set, fail the new send instead of overwriting the live partial state.
This is a memory-safety fix: reusing the live partial-send state can leave a stale offset attached to a new skmsg and lead to an out-of- bounds read in the send path.
tcpsendmsglocked() already handles waiting for send buffer memory, so the fix here is just to preserve espintcp's one-message-at-a-time transmit state.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 6.6.143.1-1 - Configuration
Apply the kernel fix so xfrm/espintcp does not reuse an in-progress partial send: preserve the one-message-at-a-time transmit model; reinitialize emsg->skmsg and reuse ctx->partial only while the previous partial transfer state is still owned by the in-flight transmission (and avoid rebuilding the send message when ctx->partial is still in progress).
Linux kernel (xfrm: espintcp) Behavior of espintcp_sendmsg() / espintcp_sendmsg_locked()/espintcp_push_msgs() = Do not reuse an in-progress partial-send state in ctx->partial; reinitialize emsg->skmsg and reuse ctx->partial only after preserving one-message-at-a-time semantics
Event History
Frequently Asked Questions
What is the severity of CVE-2026-52935?
The severity of CVE-2026-52935 is rated as 47.
How do I fix CVE-2026-52935?
To fix CVE-2026-52935, you should update to the latest version of the Linux kernel where this vulnerability has been resolved.
What systems are affected by CVE-2026-52935?
CVE-2026-52935 affects the Linux kernel implementations that utilize the xfrm and espintcp modules.
What is the nature of CVE-2026-52935?
CVE-2026-52935 involves issues with reusing an in-progress partial send in the xfrm espintcp implementation in the Linux kernel.
Is CVE-2026-52935 exploitable?
The exploitability of CVE-2026-52935 depends on the specific configurations and use cases of the Linux kernel in an environment.