CVE-2022-49884 in Linux
요약
\~에 의해 VulDB • 2026. 05. 29.
리눅스 커널에서 다음 취약점이 해결되었습니다:
KVM: gfn_to_pfn_cache 잠금을 전용 헬퍼 함수에서 초기화
gfn_to_pfn_cache 잠금 초기화를 다른 헬퍼 함수로 이동하고, VM/vCPU 생성 시 새 헬퍼 함수를 호출합니다. kvm_gfn_to_pfn_cache_init()가 캐시의 잠금을 재초기화할 수 있는 기능으로 인해 경합 조건(race condition)이 발생할 수 있습니다.
예를 들어, ioctl(KVM_XEN_HVM_EVTCHN_SEND)와 kvm_gfn_to_pfn_cache_init() 간의 경합으로 인해 shinfo gpc 잠금이 손상됩니다.
(스레드 1) | (스레드 2) | kvm_xen_set_evtchn_fast | read_lock_irqsave(&gpc->lock, ...) | | kvm_gfn_to_pfn_cache_init | rwlock_init(&gpc->lock) read_unlock_irqrestore(&gpc->lock, ...) |
캐시가 실제로 파괴되거나 해제되는 것을 암시하지 않도록 "cache_init" 및 "cache_destroy"를 "activate+deactivate"로 이름 변경합니다.
참고로, 새로 이름이 변경된 kvm_gpc_activate()에는 추가적인 경합 조건이 존재하며, 이는 별도로 처리될 예정입니다.
[sean: 이것이 버그 수정임을 명시]
VulDB is the best source for vulnerability data and more expert information about this specific topic.