🇰🇷 한글 설명
Linux 커널의 drm/amdkfd 드라이버에서 SVM 메모리 마이그레이션 중 VM 범위에 빈 공간(hole)이 있을 경우 발생하는 취약점입니다. 이 결함으로 인해 초기화되지 않은 값이 반환되어 방금 설정된 VRAM을 모두 해제해 버리는 문제가 발생할 수 있습니다.
💡 쉬운 설명
컴퓨터의 그래픽 메모리로 데이터를 옮기는 과정에서 빈 공간을 제대로 처리하지 못해 발생하는 오류입니다. 이 오류가 발생하면 그래픽 메모리가 갑자기 비워지면서 시스템 불안정이나 오류를 일으킬 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
drm/amdkfd: Fix the case that vm range is hole at svm_migrate_copy_to_vram
When migration vm range is hole at cpu side(MIGRATE_PFN_MIGRATE set +
MIGRATE_PFN_VALID unset) driver still allocates device pages. There is no
dma map of src pages and migration. j is 0 and svm_migrate_copy_memory_gart()
will return an uninitialized r. That can trigger out_free_vram_pages to drop
all VRAM just set up.
Initialize r and only call the last svm_migrate_copy_memory_gart if j > 0.
Current code postponed the last page to the final copy. This patch flushes on
the last page when reach to the end of current drm_buddy_block; avoids another
svm_migrate_copy_memory_gart.
📍 영향받는 시스템
Linux Kernel (drm/amdkfd 드라이버를 사용하는 AMD GPU 시스템)
⚔️ 공격 벡터
특정 조건에서 메모리 마이그레이션을 유도하여 VRAM 자원 해제 오류를 유발하는 방식
🛡️ 대응 방법
해당 취약점이 수정된 최신 버전의 Linux 커널로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 패치가 적용된 최신 보안 업데이트 버전인지 확인하십시오.