🇰🇷 한글 설명
Linux 커널의 ocfs2 파일 시스템 마운트 과정에서 strlen 함수를 통한 버퍼 오버플로우 취약점이 발견되었습니다. 클러스터 스택 및 이름 문자열이 디스크 표현에서 널 종료(null-terminated)를 보장하지 않아, strlcpy가 잘못된 메모리 영역을 읽어 시스템 패닉을 유발할 수 있습니다.
💡 쉬운 설명
파일 시스템을 연결할 때 데이터의 끝을 알리는 표시가 없어, 컴퓨터가 데이터 범위를 넘어선 잘못된 메모리까지 읽으려다 시스템이 멈추는 문제입니다. 이로 인해 시스템이 갑자기 꺼지거나 오류가 발생할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ocfs2: mount fails with buffer overflow in strlen
Starting with kernel 5.11 built with CONFIG_FORTIFY_SOURCE mouting an
ocfs2 filesystem with either o2cb or pcmk cluster stack fails with the
trace below. Problem seems to be that strings for cluster stack and
cluster name are not guaranteed to be null terminated in the disk
representation, while strlcpy assumes that the source string is always
null terminated. This causes a read outside of the source string
triggering the buffer overflow detection.
detected buffer overflow in strlen
------------[ cut here ]------------
kernel BUG at lib/string.c:1149!
invalid opcode: 0000 [#1] SMP PTI
CPU: 1 PID: 910 Comm: mount.ocfs2 Not tainted 5.14.0-1-amd64 #1
Debian 5.14.6-2
RIP: 0010:fortify_panic+0xf/0x11
...
Call Trace:
ocfs2_initialize_super.isra.0.cold+0xc/0x18 [ocfs2]
ocfs2_fill_super+0x359/0x19b0 [ocfs2]
mount_bdev+0x185/0x1b0
legacy_get_tree+0x27/0x40
vfs_get_tree+0x25/0xb0
path_mount+0x454/0xa20
__x64_sys_mount+0x103/0x140
do_syscall_64+0x3b/0xc0
entry_SYSCALL_64_after_hwframe+0x44/0xae
📍 영향받는 시스템
CONFIG_FORTIFY_SOURCE가 활성화된 커널 5.11 이상 버전
⚔️ 공격 벡터
조작된 ocfs2 파일 시스템 디스크 이미지를 마운트 시도하여 발생
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 5.11 이상인지 확인하고, 배포판의 보안 공지를 통해 해당 취약점이 패치되었는지 대조합니다.