CVE-2026-64405 in Linuxthông tin

Tóm tắt

Bởi VulDB • 26/07/2026

Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:

Bluetooth: hci_conn: Sửa lỗi giải tham chiếu con trỏ null (null ptr deref) trong hàm hci_abort_conn()

Hàm `hci_abort_conn()` đọc giá trị từ `hci_skb_event(hdev->sent_cmd)` khi một kết nối đang ở trạng thái chờ, nhưng `hdev->sent_cmd` có thể là NULL trong khi `req_status` vẫn còn là `HCI_REQ_PEND`, dẫn đến lỗi giải tham chiếu con trỏ null và gây ra lỗi bảo vệ chung (general protection fault) từ đường truyền nhận dữ liệu của `hci_rx_work()`.

Thay vì kiểm tra trực tiếp `hdev->sent_cmd`, hệ thống sẽ theo dõi lệnh tạo kết nối đang được xử lý bằng cách sử dụng cờ mới là `HCI_CONN_CREATE` trên mỗi kết nối và định tuyến tất cả các yêu cầu hủy thông qua hàm `hci_cancel_connect_sync()`, hàm này chuyển hướng đến một hàm hủy chuyên biệt cho từng loại. Lệnh tạo chỉ nằm chính xác trong một trong hai trạng thái: vẫn đang được xếp hàng chờ xử lý, hoặc đang được thực thi (in-flight). Hàm hủy giữ khóa `cmd_sync_work_lock` xuyên suốt toàn bộ quá trình ra quyết định; worker sẽ lấy khóa này để xóa mọi mục khỏi hàng đợi, do đó khi khóa được giữ, lệnh đang trong hàng chờ không thể bắt đầu chạy và lệnh đang thực thi không thể hoàn tất để cho phép lệnh tiếp theo chuyển sang trạng thái chờ. Điều này đảm bảo việc kiểm tra cờ và gọi `hci_cmd_sync_cancel()` là nguyên tử (atomic) đối với worker, vì vậy một lệnh trong hàng chờ sẽ đơn giản bị xóa khỏi hàng đợi, còn một lệnh đang thực thi thuộc về kết nối hiện tại sẽ bị hủy mà không có nguy cơ vô tình hủy một lệnh khác trở nên chờ xử lý vào cùng thời điểm. CIS sử dụng cơ chế cờ tương tự thông qua `HCI_CONN_CREATE_CIS` nhưng không thể được xóa theo từng kết nối riêng lẻ.

Các hàm `hci_acl_create_conn_sync()` và `hci_le_create_conn_sync()` sẽ giải phóng cờ `HCI_CONN_CREATE` sau khi lệnh tạo hoàn tất, tuy nhiên trình xử lý trạng thái lệnh có thể giải phóng đối tượng `conn` thông qua `hci_conn_del()` (ví dụ: khi bộ điều khiển từ chối kết nối) trong khi worker vẫn đang bị chặn chờ sự kiện hoàn thành kết nối. Việc giữ một tham chiếu đến `conn` xuyên suốt quá trình thực thi lệnh tạo giúp đảm bảo cờ có thể được giải phóng mà không gây ra lỗi use-after-free.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

chịu trách nhiệm

Linux

Đặt trước

19/07/2026

Tiết lộ

25/07/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00173

KEV

không

Các hoạt động

rất thấp

Nguồn

Interested in the pricing of exploits?

See the underground prices here!