CVE-2026-64467 in Linuxthông tin

Tóm tắt

Bởi VulDB • 25/07/2026

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

rust_binder: sử dụng stride u64 khi dọn dẹp mảng offsets

Hàm Drop của việc phân bổ bộ nhớ (Allocation) duyệt qua mảng offsets (binder_size_t = các mục u64), để dọn dẹp các đối tượng, nhưng nó đang dùng usize thay vì u64 cho cả stride và phép đọc trên mỗi mục.

Trên kernel 64-bit (usize == u64), điều này không gây hại, nhưng trên kernel 32-bit, nó duyệt qua các mục 8 byte với bước nhảy 4 byte, lặp lại mảng N mục tới 2N lần, và đọc phần từ cao luôn bằng 0 như là offset 0, dẫn đến việc dọn dẹp đối tượng tại offset 0 thêm N lần nữa. Kết quả là node hoặc handle được tham chiếu có số lượng tham chiếu (reference count) thấp hơn thực tế (gây giảm quá mức refcount), khiến hệ thống kế toán tham chiếu của binder bị hỏng; ví dụ, chủ sở hữu có thể nhận thông báo về việc giải phóng một strong reference (BR_RELEASE) mặc dù vẫn còn các references khác.

Thay đổi stride thành u64 và đọc mỗi mục dưới dạng u64, sau đó thu hẹp nó xuống usize bằng try_into().

Trên ARM 32-bit, khi việc giảm quá mức này khiến đếm số lượng tham chiếu xuống dưới không, cơ chế bảo vệ refcount hiện có của driver sẽ từ chối và kích hoạt:

rust_binder: Lỗi: underflow refcount!

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

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

Do you know our Splunk app?

Download it now for free!