CVE-2026-89744 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:

Thuộc tính thiết bị (device property): sửa lỗi vòng lặp vô hạn trong hàm `fwnode_for_each_child_node()`

Khi duyệt qua các phần tử con của một fwnode có chứa secondary fwnode, hàm `fwnode_get_next_child_node()` có thể rơi vào trạng thái vòng lặp vô hạn nếu secondary fwnode đó có nhiều hơn một phần tử con.

Parent Child (Primary fwnode) FWa: {FWa1, FWa2, FWa3}
(Secondary fwnode) FWb: {FWb1, FWb2}

Trong trường hợp này:

┌─> fwnode_get_next_child_node(FWa, FWa1) │ - fwnode_call_ptr_op(FWa, get_next_child_node, FWa1) trả về FWa2 │ │ ... │ │ fwnode_get_next_child_node(FWa, FWa3) │ - fwnode_call_ptr_op(FWa, get_next_child_node, FWa3) trả về NULL │ - fwnode_call_ptr_op(FWb, get_next_child_node, FWa3) trả về FWb1 │ │ fwnode_get_next_child_node(FWa, FWb1) │ - fwnode_call_ptr_op(FWa, get_next_child_node, FWb1) trả về FWa1 └────┘

Điều này khiến hàm `fwnode_for_each_child_node()` lặp vô hạn, liên tục xuất ra {FWa1, FWa2, FWa3, FWb1, FWa1, ...}.

Nguyên nhân gốc rễ là khi phần tử con hiện tại (FWb1) thuộc về secondary fwnode, việc gọi `get_next_child_node()` trên primary fwnode sẽ trả lời sai bằng cách trả lại phần tử đầu tiên (FWa1) thay vì NULL.

Khắc phục vấn đề này bằng cách kiểm tra động parent fwnode của phần tử con hiện tại trước khi gọi `get_next_child_node()`. Cách tiếp cận này tuân theo mẫu đã được thiết lập trong commit b5b41ab6b0c1 ("device property: Check fwnode->secondary in fwnode_graph_get_next_endpoint()").

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ộ

11/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

Do you need the next level of professionalism?

Upgrade your account now!