🇰🇷 한글 설명
Linux 커널 F2FS 파일시스템의 __replace_atomic_write_block 함수에서 tracepoint 호출 시 old_addr이 NULL인 경우 널 포인터 역참조가 발생해 커널 패닉이 일어납니다. 원자적 쓰기(atomic write) 커밋 과정에서 주로 나타나며, 수정을 통해 NULL 검사가 추가되었습니다.
💡 쉬운 설명
리눅스 커널의 F2FS 파일시스템에서 특정 쓰기 작업 중 잘못된 주소를 참조해 시스템이 갑자기 멈출 수 있는 문제입니다. 해당 커널 업데이트를 적용하면 이 문제가 해결됩니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
f2fs: fix null pointer panic in tracepoint in __replace_atomic_write_block
We got a kernel panic if old_addr is NULL.
https://bugzilla.kernel.org/show_bug.cgi?id=217266
BUG: kernel NULL pointer dereference, address: 0000000000000000
Call Trace:
<TASK>
f2fs_commit_atomic_write+0x619/0x990 [f2fs a1b985b80f5babd6f3ea778384908880812bfa43]
__f2fs_ioctl+0xd8e/0x4080 [f2fs a1b985b80f5babd6f3ea778384908880812bfa43]
? vfs_write+0x2ae/0x3f0
? vfs_write+0x2ae/0x3f0
__x64_sys_ioctl+0x91/0xd0
do_syscall_64+0x5c/0x90
entry_SYSCALL_64_after_hwframe+0x72/0xdc
RIP: 0033:0x7f69095fe53f
📍 영향받는 시스템
F2FS 파일시스템을 사용하는 Linux 커널 (패치 이전 버전, 주로 안드로이드 기기 및 F2FS 사용 리눅스 시스템)
⚔️ 공격 벡터
로컬 사용자가 F2FS 원자적 쓰기 관련 ioctl 호출을 조작해 커널 패닉을 유발할 수 있음 (서비스 거부)
🛡️ 대응 방법
커널을 해당 취약점이 수정된 최신 안정 버전으로 업데이트하고 재부팅합니다.
🔧 검증 코드
첫 번째 출력은 현재 커널 버전이며 패치된 버전과 비교하고, f2fs가 출력되면 F2FS가 지원되는 시스템이므로 커널 업데이트 적용 여부를 확인해야 합니다.
uname -r && grep -l f2fs /proc/filesystems 2>/dev/null