🔍 CVE-2024-53090

7.5
CVSS Score
HIGH
2024-11-21
2026-10-30 13:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 AFS(Andrew File System) 구성 요소에서 락 재귀(lock recursion) 문제가 발견되었습니다. AF_RXRPC가 notify_lock을 보유한 상태에서 afs_wake_up_async_call()을 호출할 때, 특정 조건에서 동일한 락을 다시 획득하려 시도하여 시스템이 중단(kernel oops)될 수 있습니다.

💡 쉬운 설명

컴퓨터가 어떤 작업을 처리하기 위해 '자물쇠(락)'를 잠갔는데, 그 작업을 하는 도중에 똑같은 '자물쇠'를 또 잠그려고 시도하다가 시스템이 멈춰버리는 문제입니다. 이로 인해 시스템이 갑자기 꺼지거나 오류가 발생할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: afs: Fix lock recursion afs_wake_up_async_call() can incur lock recursion. The problem is that it is called from AF_RXRPC whilst holding the ->notify_lock, but it tries to take a ref on the afs_call struct in order to pass it to a work queue - but if the afs_call is already queued, we then have an extraneous ref that must be put... calling afs_put_call() may call back down into AF_RXRPC through rxrpc_kernel_shutdown_call(), however, which might try taking the ->notify_lock again. This case isn't very common, however, so defer it to a workqueue. The oops looks something like: BUG: spinlock recursion on CPU#0, krxrpcio/7001/1646 lock: 0xffff888141399b30, .magic: dead4ead, .owner: krxrpcio/7001/1646, .owner_cpu: 0 CPU: 0 UID: 0 PID: 1646 Comm: krxrpcio/7001 Not tainted 6.12.0-rc2-build3+ #4351 Hardware name: ASUS All Series/H97-PLUS, BIOS 2306 10/09/2014 Call Trace: <TASK> dump_stack_lvl+0x47/0x70 do_raw_spin_lock+0x3c/0x90 rxrpc_kernel_shutdown_call+0x83/0xb0 afs_put_call+0xd7/0x180 rxrpc_notify_socket+0xa0/0x190 rxrpc_input_split_jumbo+0x198/0x1d0 rxrpc_input_data+0x14b/0x1e0 ? rxrpc_input_call_packet+0xc2/0x1f0 rxrpc_input_call_event+0xad/0x6b0 rxrpc_input_packet_on_conn+0x1e1/0x210 rxrpc_input_packet+0x3f2/0x4d0 rxrpc_io_thread+0x243/0x410 ? __pfx_rxrpc_io_thread+0x10/0x10 kthread+0xcf/0xe0 ? __pfx_kthread+0x10/0x10 ret_from_fork+0x24/0x40 ? __pfx_kthread+0x10/0x10 ret_from_fork_asm+0x1a/0x30 </TASK>

📍 영향받는 시스템

Linux kernel (특히 AFS 및 RXRPC 관련 모듈을 사용하는 버전)

⚔️ 공격 벡터

특정 네트워크 패킷이나 AFS 통신 시나리오를 유도하여 커널 내 락 재귀를 발생시킴

🛡️ 대응 방법

Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하여 해당 락 재귀 로직을 수정해야 함

🔧 검증 코드

출력된 커널 버전이 취약점이 해결된 최신 패치 버전인지 확인하십시오.

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel