🇰🇷 한글 설명
Linux 커널의 BPF 구현 중 htab_lock_bucket() 함수가 -EBUSY 오류를 반환할 때 이를 적절히 처리하지 못하는 취약점입니다. 이로 인해 배치 작업 중 다음 버킷으로 넘어가면서 경계 외 메모리 접근이 발생하거나 커널 메모리가 사용자 공간에 노출될 수 있습니다.
💡 쉬운 설명
리눅스 운영체제의 핵심 기능 중 하나에서 오류가 발생했을 때 이를 제대로 처리하지 못해 발생하는 문제입니다. 이 오류를 이용하면 해커가 컴퓨터의 중요한 내부 정보를 몰래 훔쳐볼 위험이 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
bpf: Propagate error from htab_lock_bucket() to userspace
In __htab_map_lookup_and_delete_batch() if htab_lock_bucket() returns
-EBUSY, it will go to next bucket. Going to next bucket may not only
skip the elements in current bucket silently, but also incur
out-of-bound memory access or expose kernel memory to userspace if
current bucket_cnt is greater than bucket_size or zero.
Fixing it by stopping batch operation and returning -EBUSY when
htab_lock_bucket() fails, and the application can retry or skip the busy
batch as needed.
📍 영향받는 시스템
BPF(Berkeley Packet Filter) 기능을 사용하는 Linux Kernel 버전
⚔️ 공격 벡터
특수하게 조작된 BPF 배치 작업을 통해 커널의 메모리 잠금 오류를 유도하여 메모리 노출 시도
🛡️ 대응 방법
해당 취약점이 수정된 최신 버전의 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 취약점이 해결된 패치 버전 이후인지 확인