🔍 CVE-2024-35987

8.4
CVSS Score
HIGH
2024-05-20
2026-08-04 11:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 RISC-V 아키텍처에서 64비트 NOMMU 커널이 RAM 시작 지점 이후로 로드될 때 발생하는 취약점입니다. NOMMU 환경에서 페이지 오프셋이 커널 로드 주소로 고정되어 메모리 초기화 과정 중 인접한 커널 메모리를 오염시킬 수 있습니다.

💡 쉬운 설명

RISC-V 프로세서를 사용하는 특정 시스템에서 운영체제가 메모리를 관리하는 방식에 오류가 있어 시스템이 망가질 수 있는 문제입니다. 잘못된 메모리 주소를 참조하여 중요한 데이터가 저장된 영역을 덮어쓸 위험이 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: riscv: Fix loading 64-bit NOMMU kernels past the start of RAM commit 3335068f8721 ("riscv: Use PUD/P4D/PGD pages for the linear mapping") added logic to allow using RAM below the kernel load address. However, this does not work for NOMMU, where PAGE_OFFSET is fixed to the kernel load address. Since that range of memory corresponds to PFNs below ARCH_PFN_OFFSET, mm initialization runs off the beginning of mem_map and corrupts adjacent kernel memory. Fix this by restoring the previous behavior for NOMMU kernels.

📍 영향받는 시스템

RISC-V 아키텍처 기반의 64-bit NOMMU Linux Kernel

⚔️ 공격 벡터

메모리 관리 초기화 과정에서의 잘못된 주소 참조를 통한 커널 메모리 오염

🛡️ 대응 방법

커널 패치(commit 3335068f8721 적용 버전)를 적용하여 NOMMU 커널의 메모리 매핑 동작을 수정하십시오.

🔧 검증 코드

출력 결과에 riscv가 포함되어 있는지 확인하여 해당 아키텍처 사용 여부를 판단합니다.

Shell / Script
uname -a | grep -i riscv

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel