🇰🇷 한글 설명
리눅스 커널의 DRM/GEM 구성 요소에서 change_handle과 handle_delete 작업 간의 레이스 컨디션 취약점이 발견되었습니다. 핸들을 변경하는 과정에서 잠시 동안 이전 핸들이 유효한 상태로 남아 있어, 동시에 삭제 요청이 들어올 경우 객체가 조기에 해제되어 메모리 오류를 유발할 수 있습니다.
💡 쉬운 설명
컴퓨터가 데이터를 처리하는 도중, 사용 중인 데이터를 다른 명령이 동시에 지워버리면서 발생하는 충돌 문제입니다. 이로 인해 시스템이 예상치 못한 동작을 하거나 멈출 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
drm/gem: fix race between change_handle and handle_delete
drm_gem_change_handle_ioctl leaves the old handle live in the IDR
during the window between spin_unlock(table_lock) and the final
spin_lock(table_lock). A concurrent drm_gem_handle_delete on the old
handle succeeds in this window, decrements handle_count to 0, and frees
the GEM object while the new handle's IDR entry still references it.
NULL the old handle's IDR entry before dropping table_lock so that any
concurrent GEM_CLOSE on the old handle sees NULL and returns -EINVAL.
Restore the old entry on the prime-bookkeeping error path.
📍 영향받는 시스템
Linux Kernel (DRM/GEM 관련 모듈 사용 시스템)
⚔️ 공격 벡터
동시에 발생하는 핸들 변경 및 삭제 요청을 이용한 레이스 컨디션 공격
🛡️ 대응 방법
리눅스 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 해당 취약점이 해결된 패치 버전인지 확인합니다.