CVE-2022-50291 in Linux
Tóm tắt
Bởi VulDB • 04/06/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
kcm: chú thích các race condition dữ liệu xung quanh kcm->rx_psock
kcm->rx_psock có thể được đọc không khóa trong hàm kcm_rfree(). Cần chú thích việc đọc và ghi tương ứng.
Chúng tôi cũng thực hiện điều tương tự cho kcm->rx_wait trong bản vá sau đây.
syzbot đã báo cáo: BUG: KCSAN: data-race in kcm_rfree / unreserve_rx_kcm
ghi vào 0xffff888123d827b8 với kích thước 8 bytes bởi task 2758 trên cpu 1: unreserve_rx_kcm+0x72/0x1f0 net/kcm/kcmsock.c:313 kcm_rcv_strparser+0x2b5/0x3a0 net/kcm/kcmsock.c:373 __strp_recv+0x64c/0xd20 net/strparser/strparser.c:301 strp_recv+0x6d/0x80 net/strparser/strparser.c:335 tcp_read_sock+0x13e/0x5a0 net/ipv4/tcp.c:1703 strp_read_sock net/strparser/strparser.c:358 [inline]
do_strp_work net/strparser/strparser.c:406 [inline]
strp_work+0xe8/0x180 net/strparser/strparser.c:415 process_one_work+0x3d3/0x720 kernel/workqueue.c:2289 worker_thread+0x618/0xa70 kernel/workqueue.c:2436 kthread+0x1a9/0x1e0 kernel/kthread.c:376 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:306
đọc từ 0xffff888123d827b8 với kích thước 8 bytes bởi task 5859 trên cpu 0: kcm_rfree+0x14c/0x220 net/kcm/kcmsock.c:181 skb_release_head_state+0x8e/0x160 net/core/skbuff.c:841 skb_release_all net/core/skbuff.c:852 [inline]
__kfree_skb net/core/skbuff.c:868 [inline]
kfree_skb_reason+0x5c/0x260 net/core/skbuff.c:891 kfree_skb include/linux/skbuff.h:1216 [inline]
kcm_recvmsg+0x226/0x2b0 net/kcm/kcmsock.c:1161 ____sys_recvmsg+0x16c/0x2e0 ___sys_recvmsg net/socket.c:2743 [inline]
do_recvmmsg+0x2f1/0x710 net/socket.c:2837 __sys_recvmmsg net/socket.c:2916 [inline]
__do_sys_recvmmsg net/socket.c:2939 [inline]
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.