🇰🇷 한글 설명
Linux 커널의 futex 구현에서 CLONE_THREAD 요구 사항이 부적절하게 설정되어 메모리 관리 오류가 발생할 수 있는 취약점입니다. 특정 상황에서 mm->futex_ref 할당 시 비동기성 가정이 깨지면서 slab-use-after-free와 같은 커널 버그를 유발할 수 있습니다.
💡 쉬운 설명
컴퓨터의 핵심 운영체제인 리눅스에서 메모리를 관리하는 방식에 오류가 있어, 프로그램이 충돌하거나 시스템이 불안정해질 수 있는 문제입니다. 특정 조건에서 메모리를 이미 사용 중인데 다시 사용하려고 시도할 때 문제가 발생합니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
futex: Drop CLONE_THREAD requirement for private default hash alloc
Currently need_futex_hash_allocate_default() depends on strict pthread
semantics, abusing CLONE_THREAD. This breaks the non-concurrency
assumptions when doing the mm->futex_ref pcpu allocations, leading to
bugs[0] when sharing the mm in other ways; ie:
BUG: KASAN: slab-use-after-free in futex_hash_put
... where the +1 bias can end up on a percpu counter that mm->futex_ref
no longer points at.
Loosen the check to cover any CLONE_VM clone, except vfork(). Excluding
vfork keeps the existing paths untouched (no overhead), and we can't
race in the first place: either the parent is suspended and the child
runs alone, or mm->futex_ref is already allocated from an earlier
CLONE_VM.
📍 영향받는 시스템
CLONE_VM을 공유하지만 CLONE_THREAD가 없는 특정 프로세스 구조를 사용하는 Linux Kernel
⚔️ 공격 벡터
메모리 공유 방식을 악용하여 커널의 메모리 관리 로직을 교란함으로써 발생 (로컬 공격 가능성 높음)
🛡️ 대응 방법
해당 취약점이 해결된 최신 버전의 Linux 커널로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 취약점이 패치된 최신 보안 업데이트 버전인지 확인하십시오.