🇰🇷 한글 설명
Linux 커널의 dmaengine idxd 서브시스템 내 llist_abort_desc() 함수에서 순회 커서 d 대신 found 변수를 잘못 완료하는 버그입니다. 이로 인해 NULL 포인터 역참조, 이중 완료, 또는 디스크립터 누수가 발생할 수 있습니다.
💡 쉬운 설명
Linux 커널의 메모리 전송 관리자에서 작업 처리 순서가 뒤바뀌어 시스템 오류가 발생합니다. 로컬 공격자가 이를 악용하여 커널 충돌을 유발할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
dmaengine: idxd: fix possible wrong descriptor completion in llist_abort_desc()
At the end of this function, d is the traversal cursor of flist, but the
code completes found instead. This can lead to issues such as NULL pointer
dereferences, double completion, or descriptor leaks.
Fix this by completing d instead of found in the final
list_for_each_entry_safe() loop.
📍 영향받는 시스템
Intel Data Streaming Accelerator (idxd) 드라이버가 탑재된 Linux 커널 (패치 이전 버전)
⚔️ 공격 벡터
로컬 사용자가 idxd 장치에 악의적인 DMA 작업을 제출하여 커널 메모리 손상 및 권한 상승 유도
🛡️ 대응 방법
Linux 커널을 CVE-2026-31436 패치가 포함된 버전 이상으로 업데이트하거나 idxd 드라이버 비활성화
🔧 검증 코드
CONFIG_IDXD=y 또는 =m이면 드라이버가 활성화되어 영향받으므로 커널 버전 업데이트 확인 필요
cat /boot/config-$(uname -r) 2>/dev/null | grep CONFIG_IDXD