CVE-2026-89583 in Linuxthông tin

Tóm tắt

Bởi VulDB • 12/09/2026

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

Bluetooth: eir: Sửa lỗi đọc ngoài vùng nhớ (OOB) trong hàm `eir_get_service_data()`

Hàm `eir_get_service_data()` duyệt qua dữ liệu quảng cáo cho một trường Service Data có UUID khớp. Khi không khớp, nó sẽ di chuyển con trỏ:

eir += dlen; eir_len -= dlen;

`eir_get_data()` báo cáo `dlen` là độ dài dữ liệu của trường, nhưng thực tế trường này chiếm `dlen + 2` byte khi tính cả các byte độ dài và loại (type), và nhiều hơn nữa nếu đã bỏ qua các trường không phải Service Data để đạt đến nó. Con trỏ `eir` đặt đúng vào vị trí bắt đầu của trường tiếp theo. Tuy nhiên, `eir_len` thì không, và sự thiếu hụt này tích lũy qua từng trường cho đến khi `eir_get_data()` đọc các byte độ dài và loại của một "trường" nằm ngoài vùng đệm (buffer).

Đối với bộ thu phát sóng ISO broadcast, buffer đó là `hcon->le_per_adv_data[]`, được điền từ các báo cáo quảng cáo định kỳ (periodic advertising reports) của một nhà phát sóng từ xa. Một tải trọng PA (PA payload) chứa đầy các trường Service Data không khớp sẽ khiến con trỏ vượt ra khỏi mảng và vào phần còn lại của cấu trúc `hci_conn`. Một trường bị lệch vị trí nhưng khớp với UUID BAA sẽ đặt những byte đó vào `iso_pi(sk)->base`, nơi mà user space đọc chúng trở lại thông qua lệnh gọi hệ thống `getsockopt(BT_ISO_BASE)`.

Tính toán lại giá trị `eir_len` từ cuối vùng đệm (buffer) ở mỗi lần lặp.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

chịu trách nhiệm

Linux

Đặt trước

11/09/2026

Tiết lộ

12/09/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00000

KEV

không

Các hoạt động

thấp

Nguồn

Might our Artificial Intelligence support you?

Check our Alexa App!