🔍 CVE-2026-98132

5.5
CVSS Score
MEDIUM
2026-09-25
2026-10-19 10:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 BPF 컴파일러에서 스택에 저장된 스칼라 0 값이 STACK_ZERO로 잘못 다운그레이드되는 취약점이 발견되었습니다. 이로 인해 정밀도 전파 체인이 깨지면서 검증기(verifier)의 논리적 오류를 유발할 수 있습니다.

💡 쉬운 설명

컴퓨터가 메모리에 저장된 '0'이라는 숫자를 처리하는 과정에서 계산 오류를 일으킬 수 있는 버그입니다. 이 오류로 인해 보안 검사 도구가 프로그램의 상태를 잘못 판단할 위험이 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: bpf: don't downgrade half-dead scalar zero spills to STACK_ZERO states.c:__clean_func_state() can downgrade scalar zero spill to STACK_ZERO in the following case: *(u64 *)(r10 - 8) = 0; ... checkpoint ... r1 = *(u32 *)(r10 - 4); ... no reads from r10-8 ... Here 4 bytes at r10-8 are dead and verifier changes scalar spill to a combination: 0000pppp (p stands for poison). Such a change breaks precision propagation chains. All places that produce STACK_ZERO should call bpf_mark_chain_precision() for the zero source. This patch fixes the bug in a simplest way possible: avoids converting stack spills of zero to STACK_ZERO. Two smarter approaches are possible: - do bpf_mark_chain_precision() from __clean_func_state() - check slot liveness information in check_stack_write_fixed_off() I investigated both and the changes required are a bit tricky, hence go with a simple fix for the time being.

📍 영향받는 시스템

Linux Kernel (BPF 기능이 활성화된 버전)

⚔️ 공격 벡터

특수하게 조작된 BPF 프로그램을 로드하여 커널 검증기의 정밀도 분석을 교란함

🛡️ 대응 방법

해당 취약점이 수정된 최신 Linux 커널 버전으로 업데이트

🔧 검증 코드

출력된 커널 버전을 확인하여 해당 취약점이 패치된 버전인지 보안 공지(Security Advisory)와 대조

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Linux Kernel