🇰🇷 한글 설명
리눅스 커널의 DRM MSM DP 드라이버에서 DP 컨트롤러가 해제된 후에도 AUX 버스 장치가 남아 있어 발생하는 Use-After-Free 취약점입니다. 이로 인해 EDID 정보 읽기 시도 중 메모리 오류나 KASAN 결함이 발생할 수 있습니다.
💡 쉬운 설명
화면 출력 장치를 관리하는 소프트웨어가 종료될 때, 연결된 부품을 제대로 정리하지 못해 발생하는 오류입니다. 이 오류로 인해 시스템이 갑자기 멈추거나 비정상적인 동작을 할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
drm/msm/dp: Drop aux devices together with DP controller
Using devres to depopulate the aux bus made sure that upon a probe
deferral the EDP panel device would be destroyed and recreated upon next
attempt.
But the struct device which the devres is tied to is the DPUs
(drm_dev->dev), which may be happen after the DP controller is torn
down.
Indications of this can be seen in the commonly seen EDID-hexdump full
of zeros in the log, or the occasional/rare KASAN fault where the
panel's attempt to read the EDID information causes a use after free on
DP resources.
It's tempting to move the devres to the DP controller's struct device,
but the resources used by the device(s) on the aux bus are explicitly
torn down in the error path. The KASAN-reported use-after-free also
remains, as the DP aux "module" explicitly frees its devres-allocated
memory in this code path.
As such, explicitly depopulate the aux bus in the error path, and in the
component unbind path, to avoid these issues.
Patchwork: https://patchwork.freedesktop.org/patch/542163/
📍 영향받는 시스템
Linux kernel (drm/msm/dp driver components)
⚔️ 공격 벡터
로컬 공격자가 특정 하드웨어 드라이버의 자원 해제 로직을 이용해 메모리 오류를 유발할 수 있음
🛡️ 대응 방법
리눅스 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 이후의 버전인지 확인하십시오.