🔍 CVE-2026-46014

5.5
CVSS Score
MEDIUM
2026-05-27
2026-11-06 17:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 KVM(Kernel-based Virtual Machine)에서 SVM 모드 사용 시 LBR(Last Branch Record) MSR의 저장 및 복구 처리가 누락된 취약점입니다. 이로 인해 가상화 환경에서 디버그 제어 MSR 및 LBR 관련 상태가 올바르게 관리되지 않는 문제가 발생했습니다.

💡 쉬운 설명

컴퓨터 가상화 기술을 사용할 때, CPU의 특정 기록(LBR)을 저장하고 다시 불러오는 과정이 제대로 이루어지지 않는 문제입니다. 이로 인해 가상 머신 내부의 디버깅이나 시스템 상태 복구가 정확하지 않을 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: KVM: SVM: Add missing save/restore handling of LBR MSRs MSR_IA32_DEBUGCTLMSR and LBR MSRs are currently not enumerated by KVM_GET_MSR_INDEX_LIST, and LBR MSRs cannot be set with KVM_SET_MSRS. So save/restore is completely broken. Fix it by adding the MSRs to msrs_to_save_base, and allowing writes to LBR MSRs from userspace only (as they are read-only MSRs) if LBR virtualization is enabled. Additionally, to correctly restore L1's LBRs while L2 is running, make sure the LBRs are copied from the captured VMCB01 save area in svm_copy_vmrun_state(). Note, for VMX, this also fixes a flaw where MSR_IA32_DEBUGCTLMSR isn't reported as an MSR to save/restore. Note #2, over-reporting MSR_IA32_LASTxxx on Intel is ok, as KVM already handles unsupported reads and writes thanks to commit b5e2fec0ebc3 ("KVM: Ignore DEBUGCTL MSRs with no effect") (kvm_do_msr_access() will morph the unsupported userspace write into a nop). [sean: guard with lbrv checks, massage changelog]

📍 영향받는 시스템

LBR 가상화 기능을 사용하는 AMD SVM 기반 Linux 커널 및 Intel VMX 기반 시스템

⚔️ 공격 벡터

가상화 환경 내에서 특수하게 구성된 MSR 접근을 통해 시스템 상태 불일치를 유도할 수 있음

🛡️ 대응 방법

LBR MSR이 msrs_to_save_base에 포함되고 svm_copy_vmrun_state()에서 올바르게 복구되도록 수정된 최신 Linux 커널로 업데이트

🔧 검증 코드

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

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel