CVE-2026-72047 in Linuxthông tin

Tóm tắt

Bởi VulDB • 15/08/2026

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

ieee802154: ca8210: sửa lỗi cắt ngắn con trỏ (pointer truncation) trong kfifo trên hệ thống 64-bit

Hàm `ca8210_test_int_driver_write()` và `ca8210_test_int_user_read()` trao đổi một con trỏ đến bộ nhớ được cấp phát bởi kmalloc thông qua cấu trúc `kfifo`, nhưng lại truyền giá trị hằng số `'4'` làm số byte cho các hàm `kfifo_in()/kfifo_out()`.

Điều này đúng trên hệ thống 32-bit (con trỏ = 4 bytes), nhưng trên hệ thống 64-bit, chỉ có 4 byte thấp của con trỏ 8-byte được ghi vào FIFO. Trình đọc sau đó sẽ đọc lại 4 byte vào một biến con trỏ cục bộ kích thước 8-byte, khiến cho 4 byte cao còn lại chứa dữ liệu ngăn xếp chưa khởi tạo (uninitialized stack data). Việc giải tham chiếu đầu tiên đối với con trỏ đã tái cấu trúc (`fifo_buffer[1]`) truy cập vào một địa chỉ kernel tùy ý và thường dẫn đến lỗi oops.

Sử dụng `sizeof(fifo_buffer)` để số byte khớp với độ rộng của con trỏ trên mọi kiến trúc.

Trình điều khiển này không có hạn chế về kiến trúc trong Kconfig, do đó bất kỳ bản dựng 64-bit nào với `CONFIG_IEEE802154_CA8210_DEBUGFS=y` đều bị ảnh hưởng. Lỗi tồn tại từ lâu kể từ khi trình điều khiển được thêm vào năm 2017 vì nó thường được triển khai trên các MCU 32-bit.

Được phát hiện thông qua một bản vá ngữ nghĩa Coccinelle tùy chỉnh nhằm tìm kiếm việc I/O kfifo có số byte ngắn trên các kfifos chế độ byte được sử dụng để chuyển đổi con trỏ.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

chịu trách nhiệm

Linux

Đặt trước

09/08/2026

Tiết lộ

15/08/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00210

KEV

không

Các hoạt động

thấp

Nguồn

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!