🇰🇷 한글 설명
Linux 커널의 drm/xe/guc_submit 구성 요소에서 wedged_fini 함수 호출 시 잠금(locking) 메커니즘이 누락된 취약점입니다. 이로 인해 비-wedged 상태의 큐가 비동기적으로 파괴되는 과정에서 참조 횟수가 0이 되어 Use-After-Free(UAF) 오류가 발생할 수 있습니다.
💡 쉬운 설명
컴퓨터의 그래픽 처리 관련 기능에서 데이터가 삭제되는 도중에도 해당 데이터에 접근하려고 시도하여 발생하는 오류입니다. 이로 인해 시스템이 충돌하거나 보안 공격에 악용될 위험이 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
drm/xe/guc_submit: add missing locking in wedged_fini
Any non-wedged queue can have a zero refcount here and can be running
concurrently with an async queue destroy, therefore dereferencing the
queue ptr to check wedge status after the lookup can trigger UAF if
queue is not wedged. Fix this by keeping the submission_state lock held
around the check to postpone the free and make the check safe, before
dropping again around the put() to avoid the deadlock.
(cherry picked from commit d28af0b6b9580b9f90c265a7da0315b0ad20bbfd)
📍 영향받는 시스템
Linux Kernel (Intel Xe GPU 드라이버 관련 구성 요소)
⚔️ 공격 벡터
비동기적인 큐 파괴 프로세스와 동시 실행되는 제출 요청을 유도하여 메모리 참조 오류 유발
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하거나 해당 커밋(d28af0b6b9580b9f90c265a7da0315b0ad20bbfd)을 적용
🔧 검증 코드
출력된 커널 버전이 취약점이 수정된 패치 버전 이후인지 확인