🔍 CVE-2024-46786

7.8
CVSS Score
HIGH
2024-09-18
2026-10-15 01:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 fscache 모듈에서 모듈 제거 시 fscache_cookie_lru_timer를 적절히 삭제하지 않아 발생하는 Use-After-Free(UAF) 취약점입니다. 모듈이 제거된 후에도 타이머가 실행되려고 시도하면서 커널 메모리 오류 및 시스템 충돌을 유발할 수 있습니다.

💡 쉬운 설명

컴퓨터의 특정 기능을 껐는데도, 그 기능이 작동하기 위해 예약해둔 알람이 계속 울리려고 해서 시스템이 고장 나는 문제입니다. 이 과정에서 잘못된 메모리 영역을 건드려 컴퓨터가 멈추거나 오류가 발생할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: fscache: delete fscache_cookie_lru_timer when fscache exits to avoid UAF The fscache_cookie_lru_timer is initialized when the fscache module is inserted, but is not deleted when the fscache module is removed. If timer_reduce() is called before removing the fscache module, the fscache_cookie_lru_timer will be added to the timer list of the current cpu. Afterwards, a use-after-free will be triggered in the softIRQ after removing the fscache module, as follows: ================================================================== BUG: unable to handle page fault for address: fffffbfff803c9e9 PF: supervisor read access in kernel mode PF: error_code(0x0000) - not-present page PGD 21ffea067 P4D 21ffea067 PUD 21ffe6067 PMD 110a7c067 PTE 0 Oops: Oops: 0000 [#1] PREEMPT SMP KASAN PTI CPU: 1 UID: 0 PID: 0 Comm: swapper/1 Tainted: G W 6.11.0-rc3 #855 Tainted: [W]=WARN RIP: 0010:__run_timer_base.part.0+0x254/0x8a0 Call Trace: <IRQ> tmigr_handle_remote_up+0x627/0x810 __walk_groups.isra.0+0x47/0x140 tmigr_handle_remote+0x1fa/0x2f0 handle_softirqs+0x180/0x590 irq_exit_rcu+0x84/0xb0 sysvec_apic_timer_interrupt+0x6e/0x90 </IRQ> <TASK> asm_sysvec_apic_timer_interrupt+0x1a/0x20 RIP: 0010:default_idle+0xf/0x20 default_idle_call+0x38/0x60 do_idle+0x2b5/0x300 cpu_startup_entry+0x54/0x60 start_secondary+0x20d/0x280 common_startup_64+0x13e/0x148 </TASK> Modules linked in: [last unloaded: netfs] ================================================================== Therefore delete fscache_cookie_lru_timer when removing the fscahe module.

📍 영향받는 시스템

Linux kernel (fscache module 사용 환경)

⚔️ 공격 벡터

로컬 공격자가 fscache 모듈을 로드 및 언로드하는 과정을 통해 커널 메모리 오류 유발 가능

🛡️ 대응 방법

fscache 모듈 제거 시 fscache_cookie_lru_timer를 삭제하도록 커널 패치 적용

🔧 검증 코드

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

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