🔍 CVE-2026-63939

9.3
CVSS Score
CRITICAL
2026-07-19
2026-10-19 21:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 KVM 내 SEV 구현에서 GHCB 스크래치 영역의 최대 길이를 잘못 계산하여 발생하는 취약점입니다. PSC 요청 처리 시 버퍼의 실제 크기를 정확히 확인하지 않아 버퍼 오버플로우가 발생할 수 있습니다.

💡 쉬운 설명

가상 컴퓨터가 실제 컴퓨터의 메모리 영역을 사용할 때, 데이터가 들어갈 공간의 크기를 잘못 계산하여 넘치는 문제가 발생할 수 있습니다. 이로 인해 시스템이 망가지거나 해커가 악성 코드를 실행할 위험이 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: KVM: SEV: Compute the correct max length of the in-GHCB scratch area When setting the length of the GHCB scratch area, and the area is in the GHCB shared buffer, set the effective length of the scratch area to the max possible size given the start of the guest-provided pointer, and the end of the shared buffer. The code was "fine" when first introduced, as KVM doesn't consult the length of the buffer when emulating MMIO, because the passed in @len always specifies the *max* size required. But for PSC requests, the incoming @len is just the minimum length (to process the header), and KVM needs to know the full size of the scratch area to avoid buffer overflows (spoiler alert). Opportunistically rename @len => @min_len to better reflect its role.

📍 영향받는 시스템

Linux Kernel (KVM 및 SEV 기능이 활성화된 환경)

⚔️ 공격 벡터

조작된 PSC(Platform Security Processor) 요청을 통해 GHCB 공유 버퍼의 경계를 넘어서는 데이터를 전송하여 버퍼 오버플로우 유도

🛡️ 대응 방법

KVM의 GHCB 스크래치 영역 길이 계산 로직이 수정된 최신 Linux 커널로 업데이트

🔧 검증 코드

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

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel