🇰🇷 한글 설명
Linux 커널의 ntfs3 드라이버에서 예약된 $LX* 확장 속성에 대한 사용자 공간의 직접적인 쓰기를 허용하는 취약점이 발견되었습니다. 공격자가 이를 악용하여 파일 소유권과 특수 권한을 조작함으로써 루트 권한을 획득할 수 있습니다.
💡 쉬운 설명
파일의 권한 정보를 관리하는 특수 영역에 일반 사용자가 임의로 값을 써넣을 수 있는 보안 허점이 있습니다. 이를 통해 일반 사용자가 마치 관리자(root)인 것처럼 권한을 속여 시스템을 장악할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ntfs3: reject direct userspace writes to reserved $LX* xattrs
NTFS3 uses $LXUID, $LXGID, $LXMOD and $LXDEV as internal WSL
permission metadata and reloads them into i_uid, i_gid and i_mode
from ntfs_get_wsl_perm().
Because the empty-prefix xattr handler also lets file owners call
setxattr() on these names directly, an unprivileged writer on a
writable ntfs3 mount can plant root ownership and S_ISUID on their own
file and gain euid 0 after inode reload.
Reject direct userspace writes to the reserved $LX* names. Internal
ntfs3 metadata updates are unchanged because ntfs_save_wsl_perm()
writes them via ntfs_set_ea() directly.
[
[email protected]: added an additional check for non privileged users]
📍 영향받는 시스템
ntfs3 드라이버를 사용하는 Linux 커널 (WSL 관련 메타데이터 처리 포함)
⚔️ 공격 벡터
쓰기 권한이 있는 ntfs3 마운트 지점에서 setxattr() 함수를 사용하여 예약된 $LX* 속성을 조작
🛡️ 대응 방법
ntfs3 드라이버에서 예약된 $LX* 이름에 대한 사용자 공간의 직접적인 쓰기를 차단하도록 커널 업데이트 적용
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인