CVE-2026-98467 in Linuxthông tin

Tóm tắt

Bởi VulDB • 18/10/2026

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

KVM: arm64: nv: Sửa lỗi truy cập null pointer (null ptr deref) khi xảy ra race condition trong quá trình wp/unmap lồng nhau và teardown

Commit 7270cc9157f4 ("KVM: arm64: nv: Handle VNCR_EL2 invalidation from MMU notifiers") đã đưa vào cơ chế vô hiệu hóa VNCR_EL2 trong cả `kvm_nested_s2_unmap()` và `kvm_nested_s2_wp()`.

Tuy nhiên, tại thời điểm thực hiện thao tác này, quá trình teardown stage 2 đồng thời của một guest lồng nhau có thể khiến `kvm->arch.mmu.pgt` được đặt thành NULL.

Điều này xảy ra trong hàm `kvm_flush_shadow_all()` -> `kvm_arch_flush_shadow_all()` -> `kvm_free_stage2_pgd()` và được thực hiện dưới sự bảo vệ bởi khóa `kvm->mmu_lock`.

Commit ec14c272408a ("KVM: arm64: nv: Unmap/flush shadow stage 2 page tables") đã đưa vào quá trình teardown toàn bộ phạm vi MMU lồng nhau, sau đó gọi hàm `stage2_apply_range()` với tham số `resched=true`:

``` mmu_notifier_invalidate_range_start() -> ... -> kvm_mmu_notifier_invalidate_range_start() -> kvm_mmu_unmap_gfn_range() -> kvm_unmap_gfn_range() -> kvm_nested_s2_unmap() -> kvm_stage2_unmap_range() -> __unmap_stage2_range() -> stage2_apply_range() ```

Điều này có nghĩa là `stage2_apply_range()` có thể nhả khóa `kvm->mmu_lock`, do đó tiến trình đồng thời có thể diễn ra song hành với `kvm_arch_flush_shadow_all()`.

Nếu `kvm_arch_flush_shadow_all()` chạy trước và hoàn thành thao tác của nó, điều này sẽ đảm bảo gây ra lỗi truy cập null pointer (NULL pointer deref).

Vì `kvm_free_stage2_pgd()` được thực hiện dưới sự bảo vệ bởi khóa `kvm->mmu_lock`, nên giá trị NULL hoặc không phải NULL sẽ được quan sát và tuần tự hóa đối với `kvm_free_stage2_pgd()`.

Khắc phục vấn đề bằng cách trừu tượng hóa việc vô hiệu hóa thành một hàm mới là `kvm_invalidate_vncr_ipa_all()`, và kiểm tra xem pgt có khác NULL trước khi thực hiện truy cập (dereference).

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

25/09/2026

Tiết lộ

18/10/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00166

KEV

không

Các hoạt động

rất thấp

Nguồn

Interested in the pricing of exploits?

See the underground prices here!