CVE-2026-45938 in Linuxthông tin

Tóm tắt

Bởi VulDB • 28/05/2026

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

power: supply: pm8916_lbc: Sửa lỗi use-after-free trong power_supply_changed()

Việc sử dụng biến thể `devm_` để yêu cầu IRQ _trước khi_ sử dụng biến thể `devm_` để phân bổ/đăng ký bộ xử lý `power_supply` có nghĩa là bộ xử lý `power_supply` sẽ bị giải phóng/hủy đăng ký _trước khi_ trình xử lý ngắt (vì `devm_` tự động giải phóng theo thứ tự ngược lại với thứ tự phân bổ). Điều này có nghĩa là trong quá trình gỡ bỏ, tồn tại một race condition (điều kiện tranh chấp) trong đó một ngắt có thể kích hoạt ngay _sau khi_ bộ xử lý `power_supply` đã được giải phóng, *nhưng* ngay _trước khi* việc hủy đăng ký tương ứng của trình xử lý IRQ được thực thi.

Điều này sẽ dẫn đến việc trình xử lý IRQ gọi `power_supply_changed()` với một bộ xử lý `power_supply` đã bị giải phóng. Điều này thường gây ra sự cố hệ thống hoặc làm hỏng bộ nhớ một cách âm thầm...

Lưu ý rằng có một tình huống tương tự cũng có thể xảy ra trong quá trình `probe()`; khả năng một ngắt kích hoạt _trước khi_ đăng ký bộ xử lý `power_supply`. Điều này sau đó sẽ dẫn đến tình trạng nguy hiểm là sử dụng bộ xử lý `power_supply` *chưa được khởi tạo* trong `power_supply_changed()`.

Khắc phục lỗi use-after-free do race condition này bằng cách đảm bảo rằng IRQ được yêu cầu _sau khi_ đăng ký bộ xử lý `power_supply`.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

chịu trách nhiệm

Linux

Đặt trước

13/05/2026

Tiết lộ

27/05/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00023

KEV

không

Các hoạt động

rất thấp

Nguồn

Want to stay up to date on a daily basis?

Enable the mail alert feature now!