Lucene search

K
vulnrichmentLinuxVULNRICHMENT:CVE-2022-48819
HistoryJul 16, 2024 - 11:44 a.m.

CVE-2022-48819 tcp: take care of mixed splice()/sendmsg(MSG_ZEROCOPY) case

2024-07-1611:44:06
Linux
github.com
linux kernel
mixed splice
sendmsg
msg_zerocopy
syzbot
inet_sock_destruct
talal
skb
sendpage
charging
pipe
tcp_downgrade_zcopy_pure

AI Score

6.8

Confidence

Low

SSVC

Exploitation

none

Automatable

no

Technical Impact

partial

In the Linux kernel, the following vulnerability has been resolved:

tcp: take care of mixed splice()/sendmsg(MSG_ZEROCOPY) case

syzbot found that mixing sendpage() and sendmsg(MSG_ZEROCOPY)
calls over the same TCP socket would again trigger the
infamous warning in inet_sock_destruct()

WARN_ON(sk_forward_alloc_get(sk));

While Talal took into account a mix of regular copied data
and MSG_ZEROCOPY one in the same skb, the sendpage() path
has been forgotten.

We want the charging to happen for sendpage(), because
pages could be coming from a pipe. What is missing is the
downgrading of pure zerocopy status to make sure
sk_forward_alloc will stay synced.

Add tcp_downgrade_zcopy_pure() helper so that we can
use it from the two callers.

AI Score

6.8

Confidence

Low

SSVC

Exploitation

none

Automatable

no

Technical Impact

partial

Related for VULNRICHMENT:CVE-2022-48819