🔍 CVE-2024-56549

7.8
CVSS Score
HIGH
2024-12-27
2026-10-15 22:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 cachefiles 구성 요소에서 ondemand-mode 사용 시 NULL 포인터 역참조가 발생하는 취약점입니다. 할당된 파일 디스크립터와 object->file의 수명 주기가 일치하지 않아, umount 과정에서 파일 객체가 해제된 후에도 쓰기 작업이 시도될 때 시스템 오류가 발생합니다.

💡 쉬운 설명

컴퓨터가 데이터를 저장하는 과정에서 이미 삭제된 파일 정보를 참조하려고 시도하여 시스템이 멈추거나 오류가 발생하는 문제입니다. 파일이 사라지는 시점과 데이터를 쓰는 시점이 맞지 않아 발생하는 충돌입니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: cachefiles: Fix NULL pointer dereference in object->file At present, the object->file has the NULL pointer dereference problem in ondemand-mode. The root cause is that the allocated fd and object->file lifetime are inconsistent, and the user-space invocation to anon_fd uses object->file. Following is the process that triggers the issue: [write fd] [umount] cachefiles_ondemand_fd_write_iter fscache_cookie_state_machine cachefiles_withdraw_cookie if (!file) return -ENOBUFS cachefiles_clean_up_object cachefiles_unmark_inode_in_use fput(object->file) object->file = NULL // file NULL pointer dereference! __cachefiles_write(..., file, ...) Fix this issue by add an additional reference count to the object->file before write/llseek, and decrement after it finished.

📍 영향받는 시스템

Linux Kernel (cachefiles 구성 요소가 포함된 버전)

⚔️ 공격 벡터

특정 조건(ondemand-mode)에서 파일 시스템을 언마운트(umount)하는 동시에 파일 쓰기 작업을 유도하여 시스템 충돌 유발

🛡️ 대응 방법

Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하여 object->file에 대한 참조 카운트 로직을 적용해야 함

🔧 검증 코드

출력된 커널 버전을 확인하여 해당 취약점이 수정된 패치 버전인지 제조사의 보안 공지사항과 대조하여 확인

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