🇰🇷 한글 설명
Linux 커널의 drm/imagination 드라이버에서 paired job 처리 중 geometry job에 대한 참조를 적절히 유지하지 않아 발생하는 Use-After-Free 취약점입니다. 이로 인해 fragment job이 geometry job을 사용하는 동안 geometry job이 메모리에서 해제될 수 있는 문제가 있었습니다.
💡 쉬운 설명
그래픽 작업을 처리할 때 한 작업이 끝나기도 전에 필요한 데이터가 메모리에서 사라져 발생하는 오류입니다. 이로 인해 시스템이 충돌하거나 보안 문제가 생길 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
drm/imagination: take paired job reference
For paired jobs, have the fragment job take a reference on the
geometry job, so that the geometry job cannot be freed until
the fragment job has finished with it.
The geometry job structure is accessed when the fragment job is being
prepared by the GPU scheduler. Taking the reference prevents the
geometry job being freed until the fragment job no longer requires it.
Fixes a use after free bug detected by KASAN:
[ 124.256386] BUG: KASAN: slab-use-after-free in pvr_queue_prepare_job+0x108/0x868 [powervr]
[ 124.264893] Read of size 1 at addr ffff0000084cb960 by task kworker/u16:4/63
📍 영향받는 시스템
Linux kernel (drm/imagination driver 사용 시스템)
⚔️ 공격 벡터
특수하게 조작된 그래픽 작업(GPU job)을 제출하여 메모리 해제 후 접근을 유도
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인