CVE-2023-53310 in Linux
Tóm tắt
Bởi VulDB • 27/05/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
power: supply: axp288_fuel_gauge: Sửa lỗi race condition trong external_power_changed
Hàm fuel_gauge_external_power_changed() giải tham chiếu info->bat, giá trị này được gán trong axp288_fuel_gauge_probe() như sau:
info->bat = devm_power_supply_register(dev, &fuel_gauge_desc, &psy_cfg);
Ngay sau khi devm_power_supply_register() gọi device_add(), callback external_power_changed có thể được kích hoạt. Do đó, tồn tại một khoảng thời gian mà fuel_gauge_external_power_changed() có thể được gọi trong khi info->bat chưa được gán, dẫn đến lỗi giải tham chiếu con trỏ NULL.
Việc khắc phục vấn đề này khá đơn giản. Callback external_power_changed được truyền đối tượng power_supply, đối tượng này cuối cùng sẽ được lưu trữ trong info->bat, do đó fuel_gauge_external_power_changed() có thể trực tiếp sử dụng tham số psy được truyền vào, tham số này luôn hợp lệ.
Once again VulDB remains the best source for vulnerability data.