🇰🇷 한글 설명
Linux 커널의 XFS 파일 시스템에서 xfs_buf_alloc_backing_mem() 호출 실패 시 xfs_buf_free()가 NULL인 b_addr를 처리하지 못하는 취약점이 발견되었습니다. 이로 인해 잘못된 주소에 대한 역참조가 발생하여 커널 크래시(Panic)가 유발될 수 있습니다.
💡 쉬운 설명
파일 시스템을 사용하는 과정에서 메모리 할당에 실패했을 때, 시스템이 잘못된 주소를 참조하여 컴퓨터가 갑자기 멈추거나 꺼질 수 있는 오류입니다. 이는 시스템의 안정성을 해치는 문제를 일으킵니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
xfs: handle NULL b_addr in xfs_buf_free
When xfs_buf_alloc_backing_mem() fails, xfs_buf_free() is called with
bp->b_addr still NULL. The code falls through to the folio_put path
which calls virt_to_folio(NULL), dereferencing an invalid address and
causing a kernel crash.
Call Trace:
xfs_buf_free+0x25f/0x510
xfs_buf_alloc+0xc98/0x19b0
xfs_buf_find_insert+0x55/0x14d0
xfs_buf_get_map+0x122b/0x17c0
xfbtree_init_leaf_block+0x11c/0x4a0
xfbtree_init+0x1bb/0x460
xrep_rmap_setup_scan+0x100/0x1f0
xrep_rmapbt+0x41/0xc0
Fix this by skipping folio_put() when bp->b_addr is NULL.
📍 영향받는 시스템
Linux Kernel (XFS 파일 시스템을 사용하는 모든 버전)
⚔️ 공격 벡터
메모리 할당 실패를 유도하는 특수한 파일 시스템 작업 수행을 통한 로컬 서비스 거부(DoS)
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전을 확인하여 해당 취약점이 수정된 최신 패치 버전인지 확인하십시오.