CVE-2026-80698 in Linux
요약
\~에 의해 VulDB • 2026. 08. 28.
리눅스 커널에서 다음 취약점이 해결되었습니다:
dmaengine: idxd: wq, 엔진 및 그룹 구조체의 이중 해제(double free) 수정
wq, 엔진 및 그룹 장치에 대한 릴리스 콜백(idxd_conf_wq_release, idxd_conf_engine_release, idxd_conf_group_release)은 각각 감싸는 구조체에 대해 kfree()를 호출합니다. 설정 오류 경로와 정리 함수도 put_device() 이후 명시적으로 kfree()를 호출하므로, put_device()가 참조 카운트를 0으로 떨어뜨리고 릴리스를 트리거할 때마다 이중 해제(double free)가 발생합니다.
설정 함수에서 device_initialize()는 device_add() 전에 호출되므로, 오류 지점에서의 참조 카운트는 정확히 1입니다. put_device()는 조건 없이 릴리스를 실행하여 구조체를 해제하며, 그 후속 명시적 kfree()는 이미 해지된 메모리 상에서 작동합니다.
idxd_setup_wqs()의 경우 wq 릴리스 콜백은 또한 opcap_bmap 및 wqcfg를 소유합니다. 오류 언와인드(unwind) 과정에서는 put_device() 호출 전에 이러한 필드를 명시적으로 해제하여, 둘 모두에 대해 추가적인 이중 해제를 유발했습니다.
wq, 엔진 및 그룹 구조체에 대한 모든 설정 오류 경로 및 정리 함수에서 중복된 명시적 kfree() 호출을 제거하고, 해당 할당물에 대한 유일한 소유권을 릴리스 콜백으로 위임합니다.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.