🔍 CVE-2023-53487

7.8
CVSS Score
HIGH
2025-10-01
2026-11-05 21:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 powerpc/rtas_flash 드라이버에서 펌웨어 업데이트 인터페이스를 통해 사용자 공간 데이터를 복사할 때, flash_block_cache 객체가 usercopy 안전으로 표시되지 않아 CONFIG_HARDENED_USERCOPY 활성화 시 커널 BUG()가 발생합니다. 수정은 해당 캐시를 kmem_cache_create_usercopy()로 생성하여 사용자 접근을 허용하는 것입니다.

💡 쉬운 설명

PowerPC 기반 리눅스 서버에서 시스템 펌웨어를 업데이트하려고 할 때 커널이 강제로 멈출 수 있는 문제입니다. 보안 강화 설정이 켜진 시스템에서 주로 발생하며, 펌웨어 업데이트 과정이 중단되거나 시스템이 재부팅될 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: powerpc/rtas_flash: allow user copy to flash block cache objects With hardened usercopy enabled (CONFIG_HARDENED_USERCOPY=y), using the /proc/powerpc/rtas/firmware_update interface to prepare a system firmware update yields a BUG(): kernel BUG at mm/usercopy.c:102! Oops: Exception in kernel mode, sig: 5 [#1] LE PAGE_SIZE=64K MMU=Hash SMP NR_CPUS=2048 NUMA pSeries Modules linked in: CPU: 0 PID: 2232 Comm: dd Not tainted 6.5.0-rc3+ #2 Hardware name: IBM,8408-E8E POWER8E (raw) 0x4b0201 0xf000004 of:IBM,FW860.50 (SV860_146) hv:phyp pSeries NIP: c0000000005991d0 LR: c0000000005991cc CTR: 0000000000000000 REGS: c0000000148c76a0 TRAP: 0700 Not tainted (6.5.0-rc3+) MSR: 8000000000029033 <SF,EE,ME,IR,DR,RI,LE> CR: 24002242 XER: 0000000c CFAR: c0000000001fbd34 IRQMASK: 0 [ ... GPRs omitted ... ] NIP usercopy_abort+0xa0/0xb0 LR usercopy_abort+0x9c/0xb0 Call Trace: usercopy_abort+0x9c/0xb0 (unreliable) __check_heap_object+0x1b4/0x1d0 __check_object_size+0x2d0/0x380 rtas_flash_write+0xe4/0x250 proc_reg_write+0xfc/0x160 vfs_write+0xfc/0x4e0 ksys_write+0x90/0x160 system_call_exception+0x178/0x320 system_call_common+0x160/0x2c4 The blocks of the firmware image are copied directly from user memory to objects allocated from flash_block_cache, so flash_block_cache must be created using kmem_cache_create_usercopy() to mark it safe for user access. [mpe: Trim and indent oops]

📍 영향받는 시스템

CONFIG_HARDENED_USERCOPY가 활성화된 PowerPC(pSeries 등) 기반 Linux 커널 (수정 커밋 적용 이전 버전)

⚔️ 공격 벡터

권한이 있는 로컬 사용자가 /proc/powerpc/rtas/firmware_update 인터페이스에 쓰기를 수행하여 커널 BUG를 유발하는 서비스 거부(DoS) 형태이며, 원격 공격 경로는 확인되지 않음

🛡️ 대응 방법

배포판 제공 커널을 해당 CVE 수정이 포함된 최신 버전으로 업데이트하고 재부팅합니다.

🔧 검증 코드

커널 버전이 수정 배포판 패키지 버전 이상인지 확인하고, CONFIG_HARDENED_USERCOPY=y 및 PPC 설정이 있으면 해당 시스템이 영향 범위에 해당하는지 판단하며, 설정이 없으면 PowerPC 아키텍처가 아니므로 영향이 없습니다.

Shell / Script
uname -r && grep -E 'CONFIG_HARDENED_USERCOPY|CONFIG_PPC' /boot/config-$(uname -r) 2>/dev/null

📊 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