Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2022-49998— rxrpc: Fix locking in rxrpc's sendmsg

Quick assessment

Affected
Linux Linux
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于rxrpc的sendmsg实现中存在锁定问题,可能导致竞争条件。

CVSS 7.8 · High EPSS 0.20% · P9

Possible ATT&CK Techniques 1 AI

T1053 · Scheduled Task/Job

Affected Version Matrix 10

VendorProduct Version RangeStatus
Linux Linux bc5e3a546d553e5223851fc199e69040eb70f68b< 79e2ca7aa96e80961828ab6312264633b66183cc affected
bc5e3a546d553e5223851fc199e69040eb70f68b< 2bc769b8edb158be7379d15f36e23d66cf850053 affected
bc5e3a546d553e5223851fc199e69040eb70f68b< 091dc91e119fdd61432347231724f4e861c6b465 affected
bc5e3a546d553e5223851fc199e69040eb70f68b< b0f571ecd7943423c25947439045f0d352ca3dbf affected
4.15 affected
< 4.15 unaffected
5.10.140≤ 5.10.* unaffected
5.15.64≤ 5.15.* unaffected
… +2 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2022-49998

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
rxrpc: Fix locking in rxrpc's sendmsg
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: rxrpc: Fix locking in rxrpc's sendmsg Fix three bugs in the rxrpc's sendmsg implementation: (1) rxrpc_new_client_call() should release the socket lock when returning an error from rxrpc_get_call_slot(). (2) rxrpc_wait_for_tx_window_intr() will return without the call mutex held in the event that we're interrupted by a signal whilst waiting for tx space on the socket or relocking the call mutex afterwards. Fix this by: (a) moving the unlock/lock of the call mutex up to rxrpc_send_data() such that the lock is not held around all of rxrpc_wait_for_tx_window*() and (b) indicating to higher callers whether we're return with the lock dropped. Note that this means recvmsg() will not block on this call whilst we're waiting. (3) After dropping and regaining the call mutex, rxrpc_send_data() needs to go and recheck the state of the tx_pending buffer and the tx_total_len check in case we raced with another sendmsg() on the same call. Thinking on this some more, it might make sense to have different locks for sendmsg() and recvmsg(). There's probably no need to make recvmsg() wait for sendmsg(). It does mean that recvmsg() can return MSG_EOR indicating that a call is dead before a sendmsg() to that call returns - but that can currently happen anyway. Without fix (2), something like the following can be induced: WARNING: bad unlock balance detected! 5.16.0-rc6-syzkaller #0 Not tainted ------------------------------------- syz-executor011/3597 is trying to release lock (&call->user_mutex) at: [<ffffffff885163a3>] rxrpc_do_sendmsg+0xc13/0x1350 net/rxrpc/sendmsg.c:748 but there are no more locks to release! other info that might help us debug this: no locks held by syz-executor011/3597. ... Call Trace: <TASK> __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106 print_unlock_imbalance_bug include/trace/events/lock.h:58 [inline] __lock_release kernel/locking/lockdep.c:5306 [inline] lock_release.cold+0x49/0x4e kernel/locking/lockdep.c:5657 __mutex_unlock_slowpath+0x99/0x5e0 kernel/locking/mutex.c:900 rxrpc_do_sendmsg+0xc13/0x1350 net/rxrpc/sendmsg.c:748 rxrpc_sendmsg+0x420/0x630 net/rxrpc/af_rxrpc.c:561 sock_sendmsg_nosec net/socket.c:704 [inline] sock_sendmsg+0xcf/0x120 net/socket.c:724 ____sys_sendmsg+0x6e8/0x810 net/socket.c:2409 ___sys_sendmsg+0xf3/0x170 net/socket.c:2463 __sys_sendmsg+0xe5/0x1b0 net/socket.c:2492 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae [Thanks to Hawkins Jiawei and Khalid Masum for their attempts to fix this]
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于rxrpc的sendmsg实现中存在锁定问题,可能导致竞争条件。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
Linux Linux bc5e3a546d553e5223851fc199e69040eb70f68b ~ 79e2ca7aa96e80961828ab6312264633b66183cc -
Linux Linux 4.15 -

II. Public POCs for CVE-2022-49998

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2022-49998

请登录查看更多情报信息。

Same Patch Batch · Linux · 2025-06-18 · 362 CVEs total

CVE-2025-38075 9.8 CRITICAL scsi: target: iscsi: Fix timeout on deleted connection
CVE-2022-50098 8.8 HIGH scsi: qla2xxx: Fix crash due to stale SRB access around I/O timeouts
CVE-2022-49934 8.8 HIGH wifi: mac80211: Fix UAF in ieee80211_scan_rx()
CVE-2025-38052 8.8 HIGH net/tipc: fix slab-use-after-free Read in tipc_aead_encrypt_done
CVE-2022-50164 8.8 HIGH wifi: iwlwifi: mvm: fix double list_add at iwl_mvm_mac_wake_tx_queue
CVE-2025-38016 8.8 HIGH HID: bpf: abort dispatch if device destroyed
CVE-2022-49974 8.8 HIGH HID: nintendo: fix rumble worker null pointer deref
CVE-2025-38074 8.8 HIGH vhost-scsi: protect vq->log_used with vq->mutex
CVE-2022-49968 8.0 HIGH ieee802154/adf7242: defer destroy_workqueue call
CVE-2022-49939 7.8 HIGH binder: fix UAF of ref->proc caused by race condition
CVE-2022-49948 7.8 HIGH vt: Clear selection before changing the font
CVE-2022-49935 7.8 HIGH dma-buf/dma-resv: check if the new fence is really later
CVE-2025-38082 7.8 HIGH gpio: virtuser: fix potential out-of-bound write
CVE-2022-50182 7.8 HIGH media: imx-jpeg: Align upwards buffer size
CVE-2025-38080 7.8 HIGH drm/amd/display: Increase block_sequence array size
CVE-2025-38079 7.8 HIGH crypto: algif_hash - fix double free in hash_accept
CVE-2025-38078 7.8 HIGH ALSA: pcm: Fix race of buffer access at PCM OSS layer
CVE-2022-50099 7.8 HIGH video: fbdev: arkfb: Check the size of screen before memset_io()
CVE-2025-38062 7.8 HIGH genirq/msi: Store the IOMMU IOVA directly in msi_desc instead of iommu_cookie
CVE-2025-38060 7.8 HIGH bpf: copy_verifier_state() should copy 'loop_entry' field

Showing top 20 of 362 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2022-49998

No comments yet


Leave a comment