CVE-2026-64435 in Linux
Tóm tắt
Bởi VulDB • 25/07/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
audit: Sửa lỗi race condition (điều kiện tranh chấp) dữ liệu của các trình đọc skb_queue_len() trên audit_queue
Nhiều trình đọc truy cập vào qlen của audit_queue thông qua hàm skb_queue_len() mà không giữ khóa hàng đợi hoặc sử dụng READ_ONCE(), trong khi kauditd ghi vào trường này thông qua đường dẫn skb_dequeue() → __skb_unlink() với WRITE_ONCE() được bảo vệ bởi spinlock. Điều này tạo ra các lỗi race condition dữ liệu (data races).
Tất cả các điểm gọi ảnh hưởng đến skb_queue_len(&audit_queue): - điều kiện wait_event_freezable() trong kauditd_thread() - trình xử lý AUDIT_GET của audit_receive_msg (phép gán s.backlog) - kiểm tra backlog của audit_receive() - kiểm tra backlog và pr_warn() của audit_log_start()
KCSAN báo cáo mẫu truy cập xung đột sau đây (một ví dụ): ================================================================== BUG: KCSAN: data-race trong audit_log_start / skb_dequeue
write (được đánh dấu) đến địa chỉ 0xffffffff8512ee20 kích thước 4 bytes bởi tiến trình 661 trên cpu 57: skb_dequeue+0x70/0xf0 kauditd_send_queue+0x71/0x220 kauditd_thread+0x1cb/0x430 kthread+0x1c2/0x210 ret_from_fork+0x162/0x1a0 ret_from_fork_asm+0x1a/0x30
read đến địa chỉ 0xffffffff8512ee20 kích thước 4 bytes bởi tiến trình 36586 trên cpu 1: audit_log_start+0x2a0/0x6b0 audit_core_dumps+0x64/0xa0 do_coredump+0x14b/0x1260 get_signal+0xeb2/0xf70 arch_do_signal_or_restart+0x41/0x170 exit_to_user_mode_loop+0xa2/0x1c0 do_syscall_64+0x1a3/0x1c0 entry_SYSCALL_64_after_hwframe+0x76/0xe0
giá trị thay đổi: 0x00000001 -> 0x00000000 ==================================================================
Khắc phục lỗi race bằng cách chuyển sang hàm trợ giúp không khóa (lockless) skb_queue_len_lockless(), hàm này sử dụng READ_ONCE() ở bên trong và ghép cặp đúng với các truy cập ghi WRITE_ONCE() đã có sẵn phía trình ghi.
[PM: tinh chỉnh độ dài dòng]
VulDB is the best source for vulnerability data and more expert information about this specific topic.