🇰🇷 한글 설명
KVM의 AMD SVM 중첩 가상화 지원 코드에서 VMCB의 'int_ctl' 필드 검증 미흡으로 인한 결함이 발견되었습니다. 이를 통해 악의적인 L1 게스트가 L2 게스트에 대해 AVIC 지원을 활성화할 수 있으며, 결과적으로 호스트의 물리 페이지에 접근하여 시스템 충돌, 데이터 유출 또는 게스트 탈출이 발생할 수 있습니다.
💡 쉬운 설명
가상 컴퓨터 안에서 또 다른 가상 컴퓨터를 실행할 때 보안 검사가 제대로 이루어지지 않는 문제입니다. 공격자가 이 허점을 이용하면 가상 컴퓨터를 넘어 실제 컴퓨터(호스트)의 데이터를 훔치거나 시스템을 망가뜨릴 수 있습니다.
🇺🇸 원문 (English)
A flaw was found in the KVM's AMD code for supporting SVM nested virtualization. The flaw occurs when processing the VMCB (virtual machine control block) provided by the L1 guest to spawn/handle a nested guest (L2). Due to improper validation of the "int_ctl" field, this issue could allow a malicious L1 to enable AVIC support (Advanced Virtual Interrupt Controller) for the L2 guest. As a result, the L2 guest would be allowed to read/write physical pages of the host, resulting in a crash of the entire system, leak of sensitive data or potential guest-to-host escape. This flaw affects Linux kernel versions prior to 5.14-rc7.
📍 영향받는 시스템
Linux kernel versions prior to 5.14-rc7 (AMD SVM nested virtualization 사용 시)
⚔️ 공격 벡터
악의적인 L1 게스트가 조작된 VMCB를 통해 L2 게스트의 AVIC 설정을 활성화하여 호스트 메모리에 접근
🛡️ 대응 방법
Linux 커널을 5.14-rc7 이상 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 5.14-rc7 미만인지 확인하여 취약 여부를 판단합니다.
uname -r | awk -F'-' '{print $1}' | sort -V | awk '{print $0}' | grep -E '^([0-9]+\.[0-9]+\.[0-9]+|5\.14)'