🇰🇷 한글 설명
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가 포함되어 있는지 확인하여 해당 아키텍처 사용 여부를 판단합니다.