🇰🇷 한글 설명
Linux 커널의 accel/amdxdna 구성 요소에서 iommu_sva_unbind_device() 호출 시 메모리 관리 구조체(mm)가 이미 해제된 후 접근하여 발생하는 크래시 취약점입니다. 장치가 바인딩된 후 mm 구조체에 대한 명시적 참조를 유지하고 언바인딩 시에만 해제하도록 수정하여 메모리 유효성을 보장합니다.
💡 쉬운 설명
컴퓨터의 특정 부품을 연결하거나 해제할 때, 이미 사라진 메모리 정보를 참조하려고 시도하여 시스템이 갑자기 멈추거나 꺼지는 문제입니다. 이를 방지하기 위해 부품이 연결되어 있는 동안에는 해당 메모리 정보를 안전하게 붙잡아 두도록 수정되었습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
accel/amdxdna: Hold mm structure across iommu_sva_unbind_device()
Some tests trigger a crash in iommu_sva_unbind_device() due to
accessing iommu_mm after the associated mm structure has been
freed.
Fix this by taking an explicit reference to the mm structure
after successfully binding the device, and releasing it only
after the device is unbound. This ensures the mm remains valid
for the entire SVA bind/unbind lifetime.
📍 영향받는 시스템
Linux kernel (accel/amdxdna 드라이버 포함 버전)
⚔️ 공격 벡터
특정 장치의 SVA(Shared Virtual Addressing) 바인딩 및 언바인딩 과정을 반복적으로 유도하여 커널 크래시 유발
🛡️ 대응 방법
amdxdna 드라이버의 메모리 참조 로직이 수정된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 버전인지 확인