🔍 CVE-2025-40172

7.8
CVSS Score
HIGH
2025-11-12
2026-10-19 21:10
✅ 완료

🇰🇷 한글 설명

Linux 커널의 accel/qaic 드라이버 내 find_and_map_user_pages() 함수에서 데이터 전송 크기가 0인 경우를 적절히 처리하지 못하는 취약점입니다. 이로 인해 메모리 할당 없이 특정 함수가 호출되어 시스템에 일반 보호 오류(General Protection Fault)를 유발할 수 있습니다.

💡 쉬운 설명

데이터를 주고받을 때 크기가 0인 잘못된 요청이 들어오면 컴퓨터가 이를 제대로 처리하지 못하고 갑자기 멈추거나 오류를 일으킬 수 있는 문제입니다. 이는 시스템의 안정성을 해칠 수 있는 결함입니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: accel/qaic: Treat remaining == 0 as error in find_and_map_user_pages() Currently, if find_and_map_user_pages() takes a DMA xfer request from the user with a length field set to 0, or in a rare case, the host receives QAIC_TRANS_DMA_XFER_CONT from the device where resources->xferred_dma_size is equal to the requested transaction size, the function will return 0 before allocating an sgt or setting the fields of the dma_xfer struct. In that case, encode_addr_size_pairs() will try to access the sgt which will lead to a general protection fault. Return an EINVAL in case the user provides a zero-sized ALP, or the device requests continuation after all of the bytes have been transferred.

📍 영향받는 시스템

Linux kernel (accel/qaic 드라이버 포함 버전)

⚔️ 공격 벡터

사용자 공간에서 크기가 0인 DMA 전송 요청을 보내거나 장치로부터 잘못된 전송 상태를 수신하여 시스템 오류 유도

🛡️ 대응 방법

Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하여 해당 드라이버의 오류 처리 로직을 수정해야 합니다.

🔧 검증 코드

출력된 커널 버전을 확인하여 해당 취약점이 해결된 패치 버전인지 제조사의 보안 공지와 대조합니다.

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Linux Kernel