🔍 CVE-2024-39493

5.5
CVSS Score
MEDIUM
2024-07-10
2026-10-15 01:18
✅ 완료

🇰🇷 한글 설명

Linux kernel의 QAT(QuickAssist Technology) 암호화 드라이버에서 completion_done 함수를 잘못 사용하여 ADF_DEV_RESET_SYNC 작업 수행 중 메모리가 제대로 해제되지 않는 메모리 누수 취약점입니다. 호출자가 wait_for_completion을 호출하기 전에 메모리가 해제되는 Use-After-Free(UAF) 상황도 발생 가능하며, 이는 시스템 안정성을 저하시킵니다.

💡 쉬운 설명

Linux 시스템에서 암호화 작업 완료 처리 시 메모리가 올바르게 정리되지 않는 문제입니다. 이로 인해 시간이 지남에 따라 사용 가능한 메모리가 줄어들거나 시스템이 불안정해질 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: crypto: qat - Fix ADF_DEV_RESET_SYNC memory leak Using completion_done to determine whether the caller has gone away only works after a complete call. Furthermore it's still possible that the caller has not yet called wait_for_completion, resulting in another potential UAF. Fix this by making the caller use cancel_work_sync and then freeing the memory safely.

📍 영향받는 시스템

Linux kernel 5.17 이후의 모든 버전 (crypto/qat 드라이버 포함 시스템, Intel QAT 하드웨어 사용 시스템)

⚔️ 공격 벡터

로컬 공격자가 반복적으로 QAT 리셋 작업을 트리거하여 메모리 누수를 악화시킬 수 있습니다.

🛡️ 대응 방법

Linux kernel을 최신 패치 버전으로 업데이트하거나, completion_done 대신 cancel_work_sync를 사용하는 패치를 적용하세요.

🔧 검증 코드

cancel_work_sync 호출이 있으면 패치 적용됨, 없으면 취약한 버전입니다.

Shell / Script
grep -r 'ADF_DEV_RESET_SYNC\|cancel_work_sync' /usr/src/linux/drivers/crypto/qat/ 2>/dev/null | head -5

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel