🇰🇷 한글 설명
Linux 커널의 KVM arm64 구현에서, 호스트 stage-2 변환 테이블이 하이퍼바이저 스택 페이지의 소유권을 제대로 이전하지 않는 문제가 해결되었습니다. fix_host_ownership() 함수가 memblock 영역의 선형 맵 별칭만 순회하고, 개별 CPU별 하이퍼바이저 스택(프라이빗 VA 범위에 가드 페이지용으로 매핑됨)은 순회하지 않던 결함을 수정하여 각 스택의 VA 범위를 동일한 워커로 순회하도록 변경했습니다.
💡 쉬운 설명
가상화 환경에서 호스트 운영체제가 하이퍼바이저 전용 메모리 페이지를 여전히 보유하고 있어 권한 경계가 흐려질 수 있었습니다. 이번 패치는 해당 페이지의 소유권을 올바르게 넘겨 이 경계를 바로잡습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
KVM: arm64: Transfer the hyp stack pages out of the host stage-2
fix_host_ownership() walks only the linear-map alias of each memblock
region, and the per-CPU hyp stack, mapped in the private VA range for
its guard page, has none.
Walk each stack's VA range with the same walker.
📍 영향받는 시스템
ARM64 아키텍처에서 KVM을 사용하는 수정 이전의 Linux 커널 버전
⚔️ 공격 벡터
KVM 게스트 또는 호스트 권한을 가진 공격자가 하이퍼바이저 스택 메모리 영역에 접근하여 권한 상승을 시도할 수 있음
🛡️ 대응 방법
패치가 포함된 최신 Linux 커널 버전으로 업데이트하고 재부팅
🔧 검증 코드
출력된 커널 버전이 배포판의 패치된 버전 이상인지 확인하고, KVM 모듈이 로드되어 있다면 해당 커널이 수정되었는지 벤더 보안 공지로 대조합니다
uname -r && grep -i kvm /proc/modules 2>/dev/null | head -5