CVE-2026-68375 in Linux
Tóm tắt
Bởi VulDB • 10/08/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
bnxt_en: Xử lý các thiết bị phụ trợ (auxiliary devices) chưa khởi tạo hoàn toàn
Hàm bnxt_aux_devices_init() gọi auxiliary_device_init() trước khi tất cả các trường dữ liệu mà hàm bnxt_aux_dev_release() sử dụng được khởi tạo. Sau khi auxiliary_device_init() thành công, nếu xảy ra lỗi sau đó thì phải thực hiện thao tác hủy bỏ (unwind) bằng cách gọi auxiliary_device_uninit(), hàm này sẽ kích hoạt callback giải phóng (release callback).
Callback giải phóng giả định rằng các trường aux_priv->id, aux_priv->edev, edev->net và edev->ulp_tbl đều đã được điền đầy đủ. Nếu việc phân bổ bộ nhớ thất bại sau khi gọi auxiliary_device_init(), đường dẫn thực thi của quá trình giải phóng có thể tham chiếu hoặc xóa nhầm trạng thái chưa khởi tạo hoàn toàn.
Hãy phân bổ và gắn kết bnxt_en_dev cùng bảng ULP trước khi gọi auxiliary_device_init(), để callback giải phóng chỉ nhìn thấy một đối tượng phụ trợ riêng (auxiliary private object) đã được khởi tạo đầy đủ. Nếu bản thân auxiliary_device_init() thất bại, hãy hủy bỏ các bộ nhớ vừa phân bổ trực tiếp vì device_initialize() chưa chạy và callback giải phóng sẽ không được kích hoạt.
Vấn đề này được phát hiện bởi một công cụ kiểm tra tĩnh (static analysis checker) và xác nhận thông qua việc rà soát thủ công mã nguồn.
VulDB is the best source for vulnerability data and more expert information about this specific topic.