🔍 CVE-2024-56692

7.8
CVSS Score
HIGH
2024-12-28
2026-10-30 13:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 F2FS 파일 시스템에서 truncate_node() 함수 호출 시 NAT 엔트리의 blkaddr에 대한 유효성 검사가 누락되어 발생하는 취약점입니다. 조작된 파일 시스템 이미지를 사용할 경우 잘못된 블록 주소로 인해 시스템 패닉(Kernel BUG)이 발생할 수 있습니다.

💡 쉬운 설명

파일 시스템의 데이터 주소를 확인하는 과정에서 오류가 발생하여 컴퓨터 시스템이 갑자기 멈추거나 꺼질 수 있는 문제입니다. 악의적으로 만들어진 저장 장치나 파일을 연결할 때 발생할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: f2fs: fix to do sanity check on node blkaddr in truncate_node() syzbot reports a f2fs bug as below: ------------[ cut here ]------------ kernel BUG at fs/f2fs/segment.c:2534! RIP: 0010:f2fs_invalidate_blocks+0x35f/0x370 fs/f2fs/segment.c:2534 Call Trace: truncate_node+0x1ae/0x8c0 fs/f2fs/node.c:909 f2fs_remove_inode_page+0x5c2/0x870 fs/f2fs/node.c:1288 f2fs_evict_inode+0x879/0x15c0 fs/f2fs/inode.c:856 evict+0x4e8/0x9b0 fs/inode.c:723 f2fs_handle_failed_inode+0x271/0x2e0 fs/f2fs/inode.c:986 f2fs_create+0x357/0x530 fs/f2fs/namei.c:394 lookup_open fs/namei.c:3595 [inline] open_last_lookups fs/namei.c:3694 [inline] path_openat+0x1c03/0x3590 fs/namei.c:3930 do_filp_open+0x235/0x490 fs/namei.c:3960 do_sys_openat2+0x13e/0x1d0 fs/open.c:1415 do_sys_open fs/open.c:1430 [inline] __do_sys_openat fs/open.c:1446 [inline] __se_sys_openat fs/open.c:1441 [inline] __x64_sys_openat+0x247/0x2a0 fs/open.c:1441 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0010:f2fs_invalidate_blocks+0x35f/0x370 fs/f2fs/segment.c:2534 The root cause is: on a fuzzed image, blkaddr in nat entry may be corrupted, then it will cause system panic when using it in f2fs_invalidate_blocks(), to avoid this, let's add sanity check on nat blkaddr in truncate_node().

📍 영향받는 시스템

Linux Kernel (F2FS 파일 시스템을 사용하는 시스템)

⚔️ 공격 벡터

조작된(fuzzed) F2FS 파일 시스템 이미지를 마운트하거나 해당 파일 시스템 내의 파일을 조작하여 시스템 패닉 유도

🛡️ 대응 방법

F2FS의 NAT blkaddr 유효성 검사 로직이 포함된 최신 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