🇰🇷 한글 설명
Linux 커널의 F2FS 파일 시스템에서 extent_info 구조체의 일부 필드가 초기화되지 않은 채 사용되는 취약점이 발견되었습니다. KMSAN 분석 결과, __is_extent_mergeable() 및 __is_back_mergeable() 함수에서 초기화되지 않은 값을 참조하여 정의되지 않은 동작을 유발할 수 있음이 확인되었습니다.
💡 쉬운 설명
컴퓨터의 저장 장치를 관리하는 프로그램에서 데이터의 일부를 깨끗하게 비우지 않고 사용하면서 오류가 발생하는 문제입니다. 이로 인해 시스템이 예상치 못한 방식으로 작동하거나 불안정해질 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
f2fs: fix KMSAN uninit-value in extent_info usage
KMSAN reported a use of uninitialized value in `__is_extent_mergeable()`
and `__is_back_mergeable()` via the read extent tree path.
The root cause is that `get_read_extent_info()` only initializes three
fields (`fofs`, `blk`, `len`) of `struct extent_info`, leaving the
remaining fields uninitialized. This leads to undefined behavior
when those fields are accessed later, especially during
extent merging.
Fix it by zero-initializing the `extent_info` struct before population.
📍 영향받는 시스템
F2FS 파일 시스템을 사용하는 Linux 커널 버전
⚔️ 공격 벡터
로컬 공격자가 조작된 파일 시스템 구조를 통해 초기화되지 않은 메모리 값을 참조하도록 유도
🛡️ 대응 방법
struct extent_info를 사용하기 전에 0으로 초기화하도록 커널 패치를 적용하거나 최신 커널로 업데이트
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 해당 취약점이 수정된 최신 버전인지 확인합니다.