🔍 CVE-2026-93039

7.4
CVSS Score
HIGH
2026-09-17
2026-10-19 10:16
✅ 완료

🇰🇷 한글 설명

Linux 커널의 ASoC meson 드라이버에서 메모리 재할당 실패 시 발생하는 취약점입니다. 두 번의 krealloc() 호출 중 두 번째가 실패할 경우, 이미 해제된 이전 메모리 블록을 가리키는 포인터를 참조하게 되어 Use-After-Free 및 Double Free 오류가 발생합니다.

💡 쉬운 설명

컴퓨터가 데이터를 저장할 공간을 늘리려다 실패했을 때, 이미 버린 공간을 다시 사용하려고 시도하면서 시스템이 충돌하거나 보안 문제가 생길 수 있는 오류입니다. 이로 인해 시스템이 예기치 않게 종료되거나 공격자가 시스템 권한을 탈취할 위험이 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: ASoC: meson: Keep link pointers valid on realloc failure meson_card_reallocate_links() grows the DAI link and private data arrays with two consecutive krealloc() calls and updates the owner pointers only after both calls have succeeded. A successful krealloc() may move the data: it frees the old block and returns a new one. When that happens for the link array and the second krealloc() then fails, card->dai_link still points to the block that krealloc() already freed, and the error path frees the new block too. The probe error path then calls meson_card_clean_references(), which dereferences card->dai_link and kfree()s it again, resulting in a use-after-free and a double free. Commit card->dai_link and card->num_links right after the first krealloc() succeeds, so the pointer always refers to a valid allocation that meson_card_clean_references() can walk and free. krealloc() with __GFP_ZERO zero-initializes the added entries, so walking them on the error path is safe. With both failure paths reduced to a plain return, drop the goto labels and the error message.

📍 영향받는 시스템

Linux Kernel (ASoC meson driver 포함 버전)

⚔️ 공격 벡터

메모리 재할당 과정에서 의도적으로 오류를 유도하여 Use-After-Free 및 Double Free 유발

🛡️ 대응 방법

Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel