🔍 CVE-2024-40901

7.3
CVSS Score
HIGH
2024-07-12
2026-10-15 01:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 mpt3sas 드라이버에서 test_bit() 및 set_bit() 함수가 할당되지 않은 메모리 영역에 접근할 수 있는 취약점이 발견되었습니다. 단일 워드 크기의 메모리를 사용할 때 비트 연산이 워드 경계를 초과하여 발생하며, 이는 KASAN에 의해 slab-out-of-bounds 오류로 탐지되었습니다.

💡 쉬운 설명

컴퓨터가 데이터를 저장할 때 사용하는 작은 방의 크기가 너무 작아서, 데이터를 기록하다가 옆에 있는 빈 공간을 침범하는 문제입니다. 이로 인해 시스템이 불안정해지거나 오류가 발생할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: scsi: mpt3sas: Avoid test/set_bit() operating in non-allocated memory There is a potential out-of-bounds access when using test_bit() on a single word. The test_bit() and set_bit() functions operate on long values, and when testing or setting a single word, they can exceed the word boundary. KASAN detects this issue and produces a dump: BUG: KASAN: slab-out-of-bounds in _scsih_add_device.constprop.0 (./arch/x86/include/asm/bitops.h:60 ./include/asm-generic/bitops/instrumented-atomic.h:29 drivers/scsi/mpt3sas/mpt3sas_scsih.c:7331) mpt3sas Write of size 8 at addr ffff8881d26e3c60 by task kworker/u1536:2/2965 For full log, please look at [1]. Make the allocation at least the size of sizeof(unsigned long) so that set_bit() and test_bit() have sufficient room for read/write operations without overwriting unallocated memory. [1] Link: https://lore.kernel.org/all/[email protected]/

📍 영향받는 시스템

mpt3sas 드라이버를 사용하는 Linux 커널 시스템

⚔️ 공격 벡터

특정 SCSI 장치 조작을 통한 메모리 경계 초과 접근 유도

🛡️ 대응 방법

비트 연산에 충분한 공간을 확보하도록 커널 패치를 적용하거나 최신 커널로 업데이트

🔧 검증 코드

현재 실행 중인 커널 버전을 확인하여 해당 취약점이 해결된 최신 패치 버전인지 확인합니다.

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel