🔍 CVE-2022-50428

5.5
CVSS Score
MEDIUM
2025-10-01
2026-11-05 21:16
✅ 완료

🇰🇷 한글 설명

Linux 커널 ext4 파일시스템의 fast-commit 블록 채우기 로직에서 여러 off-by-one 오류가 발견되어 수정되었습니다. 기존에는 tlv 항목이 블록 끝 근처에 배치되는 특이한 제약이 있었으며, 이로 인해 초기화되지 않은 메모리가 디스크에 기록되는 문제가 있었습니다. 이번 수정으로 블록을 자연스러운 방식으로 채우도록 변경되었습니다.

💡 쉬운 설명

리눅스의 파일 저장 기능(ext4)이 빠른 저장 기록을 남길 때 계산 실수가 있었습니다. 이 실수로 인해 메모리 일부 내용이 디스크에 잘못 기록될 수 있었고, 이를 바로잡았습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: ext4: fix off-by-one errors in fast-commit block filling Due to several different off-by-one errors, or perhaps due to a late change in design that wasn't fully reflected in the code that was actually merged, there are several very strange constraints on how fast-commit blocks are filled with tlv entries: - tlvs must start at least 10 bytes before the end of the block, even though the minimum tlv length is 8. Otherwise, the replay code will ignore them. (BUG: ext4_fc_reserve_space() could violate this requirement if called with a len of blocksize - 9 or blocksize - 8. Fortunately, this doesn't seem to happen currently.) - tlvs must end at least 1 byte before the end of the block. Otherwise the replay code will consider them to be invalid. This quirk contributed to a bug (fixed by an earlier commit) where uninitialized memory was being leaked to disk in the last byte of blocks. Also, strangely these constraints don't apply to the replay code in e2fsprogs, which will accept any tlvs in the blocks (with no bounds checks at all, but that is a separate issue...). Given that this all seems to be a bug, let's fix it by just filling blocks with tlv entries in the natural way. Note that old kernels will be unable to replay fast-commit journals created by kernels that have this commit.

📍 영향받는 시스템

fast-commit 기능을 사용하는 ext4 파일시스템이 적용된 Linux 커널 (수정 커밋 이전 버전)

⚔️ 공격 벡터

로컬 사용자가 ext4 파일시스템 저널링 동작을 유도하여 초기화되지 않은 커널 메모리 일부가 디스크에 남도록 하는 정보 노출 형태입니다.

🛡️ 대응 방법

패치가 포함된 최신 Linux 커널 버전으로 업데이트하고 재부팅합니다.

🔧 검증 코드

출력된 커널 버전을 배포판 보안 공지 또는 패치 목록과 비교하여 수정이 포함된 버전인지 확인합니다.

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel