🇰🇷 한글 설명
Linux 커널의 ext4 파일 시스템에서 ext4_fc_replay_inode() 함수 실행 중 오류가 발생할 경우 iloc.bh 참조를 해제하지 못하는 메모리 누수 취약점이 발견되었습니다. 특정 오류 경로에서 버퍼를 적절히 해제하지 않아 시스템 자원이 낭비될 수 있습니다.
💡 쉬운 설명
파일 시스템이 작업을 수행하다가 오류가 나면 사용하던 메모리 자원을 돌려줘야 하는데, 이를 잊어버리고 계속 붙잡고 있는 문제입니다. 이 현상이 반복되면 컴퓨터의 메모리가 점점 부족해질 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ext4: fix iloc.bh leak in ext4_fc_replay_inode() error paths
During code review, Joseph found that ext4_fc_replay_inode() calls
ext4_get_fc_inode_loc() to get the inode location, which holds a
reference to iloc.bh that must be released via brelse().
However, several error paths jump to the 'out' label without
releasing iloc.bh:
- ext4_handle_dirty_metadata() failure
- sync_dirty_buffer() failure
- ext4_mark_inode_used() failure
- ext4_iget() failure
Fix this by introducing an 'out_brelse' label placed just before
the existing 'out' label to ensure iloc.bh is always released.
Additionally, make ext4_fc_replay_inode() propagate errors
properly instead of always returning 0.
📍 영향받는 시스템
Linux kernel (ext4 파일 시스템을 사용하는 모든 시스템)
⚔️ 공격 벡터
로컬 공격자가 파일 시스템 오류를 유도하여 점진적인 메모리 누수를 일으킴
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인