CVE-2025-40219 in Linux
Tóm tắt
Bởi VulDB • 20/06/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
PCI/IOV: Thêm cơ chế khóa quét lại-xóa (rescan-remove) cho PCI khi bật/tắt SR-IOV
Trước khi tắt SR-IOV thông qua các truy cập vào không gian cấu hình của PF cha, hàm `sriov_disable()` trước tiên sẽ xóa các thiết bị PCI đại diện cho các VF.
Kể từ commit 9d16947b7583 ("PCI: Add global pci_lock_rescan_remove()"), các thao tác xóa này được tuần tự hóa đối với việc xóa và quét lại đồng thời bằng cách sử dụng `pci_rescan_remove_lock`. Tuy nhiên, không có cơ chế khóa nào như vậy từng được thêm vào trong `sriov_disable()`. Đặc biệt khi commit 18f9e9d150fc ("PCI/IOV: Factor out sriov_add_vfs()") tách phần xóa thiết bị PCI thành hàm `sriov_del_vfs()` thì vẫn chưa có cơ chế khóa bao quanh các lệnh gọi `pci_iov_remove_virtfn()`.
Trên kiến trúc s390, việc thiếu sự tuần tự hóa trong `sriov_disable()` có thể gây ra lỗi xóa kép và hỏng danh sách với vết theo dõi (trace) sau đây được quan sát thấy:
PSW: 0704c00180000000 0000000c914e4b38 (klist_put+56) GPRS: 000003800313fb48 0000000000000000 0000000100000001 0000000000000001 00000000f9b520a8 0000000000000000 0000000000002fbd 00000000f4cc9480 0000000000000001 0000000000000000 0000000000000000 0000000180692828 00000000818e8000 00000
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.