🔍 CVE-2022-49562

7.8
CVSS Score
HIGH
2025-02-26
2026-08-04 10:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 KVM x86 구현에서 게스트 PTE의 A/D 비트를 업데이트할 때 발생하는 취약점입니다. 기존 방식은 VM_PFNMAP 경로에서 잘못된 PFN(Page Frame Number)을 참조하여 임의의 메모리 영역에 접근할 수 있는 문제를 가지고 있었습니다.

💡 쉬운 설명

가상 머신이 사용하는 메모리 관리 방식에 오류가 있어, 시스템의 엉뚱한 메모리 영역을 건드릴 수 있는 보안 결함입니다. 이로 인해 시스템이 불안정해지거나 보안이 뚫릴 위험이 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: KVM: x86: Use __try_cmpxchg_user() to update guest PTE A/D bits Use the recently introduced __try_cmpxchg_user() to update guest PTE A/D bits instead of mapping the PTE into kernel address space. The VM_PFNMAP path is broken as it assumes that vm_pgoff is the base pfn of the mapped VMA range, which is conceptually wrong as vm_pgoff is the offset relative to the file and has nothing to do with the pfn. The horrific hack worked for the original use case (backing guest memory with /dev/mem), but leads to accessing "random" pfns for pretty much any other VM_PFNMAP case.

📍 영향받는 시스템

Linux Kernel (KVM x86 모듈을 사용하는 시스템)

⚔️ 공격 벡터

가상 머신(Guest VM) 내에서 특수하게 조작된 메모리 접근을 통해 호스트 커널의 잘못된 메모리 주소에 접근

🛡️ 대응 방법

KVM의 PTE 업데이트 방식을 __try_cmpxchg_user()를 사용하도록 수정한 최신 Linux 커널로 업데이트

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 패치된 최신 버전인지 확인

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Linux Kernel