🔍 CVE-2026-80618

0.0
CVSS Score
UNKNOWN
2026-08-28
2026-08-28 08:16
✅ 완료

🇰🇷 한글 설명

Linux 커널의 amdgpu/amdkfd 드라이버에서 DOORBELL 및 MMIO BO(Buffer Object)를 해제할 때 발생하는 이중 언핀(double-unpin) 취약점입니다. 메모리 해제 전 매핑 상태를 확인하기 전에 이미 언핀을 수행하여, 이후 프로세스 종료 시 다시 언핀을 시도하면서 ttm_bo_unpin() 언더플로우 경고를 발생시킵니다.

💡 쉬운 설명

컴퓨터의 그래픽 메모리를 정리하는 과정에서 이미 정리된 메모리를 한 번 더 정리하려고 시도하여 시스템 오류를 일으키는 문제입니다. 이로 인해 커널 경고가 발생하거나 시스템의 안정성이 저하될 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: drm/amdkfd: Avoid double-unpin of DOORBELL/MMIO BOs on free amdgpu_amdkfd_gpuvm_free_memory_of_gpu() unpinned DOORBELL and MMIO remap BOs (which are pinned at allocation time) before checking whether the BO is still mapped to the GPU. When the BO is still mapped, the function returns -EBUSY and leaves the BO alive, but it has already been unpinned. The BO is then unpinned again when it is finally freed during process teardown, triggering a ttm_bo_unpin() underflow warning: WARNING: CPU: 18 PID: 15066 at ttm/ttm_bo.c:650 amdttm_bo_unpin+0x6d/0x80 [amdttm] Workqueue: kfd_process_wq kfd_process_wq_release [amdgpu] RIP: 0010:amdttm_bo_unpin+0x6d/0x80 [amdttm] Call Trace: amdgpu_bo_unpin+0x1a/0x90 [amdgpu] amdgpu_amdkfd_gpuvm_unpin_bo+0x31/0xb0 [amdgpu] amdgpu_amdkfd_gpuvm_free_memory_of_gpu+0x3bf/0x460 [amdgpu] kfd_process_free_outstanding_kfd_bos+0xd4/0x170 [amdgpu] kfd_process_wq_release+0x109/0x1b0 [amdgpu] process_one_work+0x1e2/0x3b0 worker_thread+0x50/0x3a0 kthread+0xdd/0x100 ret_from_fork+0x29/0x50 Move the unpin after the mapped_to_gpu_memory check so it only happens once we are committed to freeing the BO. (cherry picked from commit 927c5b2defb9b09856444d94bebfd056a002bd75)

📍 영향받는 시스템

Linux kernel (amdgpu/amdkfd driver components)

⚔️ 공격 벡터

로컬 공격자가 특정 GPU 메모리 할당 및 해제 시퀀스를 유도하여 커널 경고를 발생시킴

🛡️ 대응 방법

Linux 커널을 최신 패치가 적용된 버전으로 업데이트하여 메모리 해제 로직을 수정해야 함

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 수정된 패치 버전(commit 927c5b2defb9b09856444d94bebfd056a002bd75 포함 버전)인지 확인

Shell / Script
uname -r

💻 영향받는 소프트웨어

Linux Kernel