🇰🇷 한글 설명
Linux 커널의 NTFS 드라이버에서 부트 섹터의 MFT LCN 값을 처리할 때 부호 있는 64비트 정수(s64)로 잘못 디코딩하는 취약점이 발견되었습니다. 공격자가 조작된 높은 비트 값을 가진 LCN을 제공할 경우, 경계 검사를 우회하여 MFT 영역 할당 과정에서 메모리 범위 외 접근(Out-of-bounds access)을 유발할 수 있습니다.
💡 쉬운 설명
NTFS 저장 장치의 정보를 읽는 과정에서 숫자를 잘못 해석하여 발생하는 오류입니다. 나쁜 의도를 가진 데이터가 입력되면 컴퓨터의 메모리 영역을 잘못 건드려 시스템이 멈추거나 보안 문제가 생길 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ntfs: reject invalid MFT LCNs from boot sector
The NTFS boot sector stores the MFT and MFTMirr locations as unsigned
64-bit LCNs, but parse_ntfs_boot_sector() decoded them into an s64.
A crafted high-bit value could therefore become negative and pass
the existing upper-bound check. The invalid value then propagated into
the MFT zone allocator and could result in an out-of-bounds access to
lcn_empty_bits_per_page.
📍 영향받는 시스템
NTFS 파일 시스템을 사용하는 Linux 커널 기반 시스템
⚔️ 공격 벡터
조작된 MFT LCN 값이 포함된 NTFS 파일 시스템(USB, 하드디스크 등)을 시스템에 마운트
🛡️ 대응 방법
NTFS 관련 패치가 적용된 최신 버전의 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 보안 패치 버전 이상인지 확인