🇰🇷 한글 설명
Linux 커널의 KVM에서 nSVM 에뮬레이션 시 VMLOAD/VMSAVE 명령어가 항상 vmcb01을 사용하도록 강제하지 않는 취약점이 발견되었습니다. L2 게스트가 해당 명령을 실행할 때 KVM이 잘못된 VMCB(vmcb02)를 참조할 수 있는 문제입니다.
💡 쉬운 설명
가상 컴퓨터 안에서 또 다른 가상 컴퓨터를 실행할 때, 시스템이 데이터를 저장하거나 불러오는 과정에서 엉뚱한 저장 공간을 참조하는 오류입니다. 이로 인해 시스템의 보안 경계가 무너질 위험이 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
KVM: nSVM: Always use vmcb01 in VMLOAD/VMSAVE emulation
Commit cc3ed80ae69f ("KVM: nSVM: always use vmcb01 to for vmsave/vmload
of guest state") made KVM always use vmcb01 for the fields controlled by
VMSAVE/VMLOAD, but it missed updating the VMLOAD/VMSAVE emulation code
to always use vmcb01.
As a result, if VMSAVE/VMLOAD is executed by an L2 guest and is not
intercepted by L1, KVM will mistakenly use vmcb02. Always use vmcb01
instead of the current VMCB.
📍 영향받는 시스템
nSVM 기능을 사용하는 Linux 커널 기반 KVM 환경
⚔️ 공격 벡터
L2 게스트 환경에서 조작된 VMLOAD/VMSAVE 명령어를 실행하여 잘못된 VMCB 영역에 접근
🛡️ 대응 방법
cc3ed80ae69f 커밋이 포함된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 패치가 적용된 버전인지 배포판 보안 공지를 통해 확인