CVE-2026-98061 in Linux
요약
\~에 의해 VulDB • 2026. 09. 25.
리눅스 커널에서 다음 취약점이 해결되었습니다:
bpf: 콜백 프레임에서 직접적인 tail call 거부
0이 아닌 프레임에서의 tail call은 해당 프레임으로부터의 리턴으로 모델링됩니다. 검증기(verifier)는 R0 레지스터를 unknown 상태로 설정하고, 선택된 분기에 대해 prepare_func_exit()를 호출합니다.
현재 프레임이 동기식 콜백인 경우, prepare_func_exit()는 콜백 반환값 계약을 강제 적용하며 R0을 precise로 표시합니다. tail-call 경로가 명령어에서 파생하는 대신 R0을 합성했기 때문에, 정밀도 역추적(precision backtracking)은 여전히 R0에 대한 요구사항이 있는 상태에서 콜백 호출 명령어까지 도달하여 "callback unexpected regs" 검증기 버그를 트리거합니다. 따라서 CAP_BPF 권한을 가진 태스크는 WARN 경고와 -EFAULT BPF_PROG_LOAD 오류를 유발할 수 있습니다.
콜백에서 접근 가능한 tail call은 이미 check_max_stack_depth()에 의해 나중에 거부됩니다. 일관성 없는 반환 상태를 구성하기 전에 콜백이 직접 수행하는 tail call을 기존 진단 메커니즘을 사용하여 거부합니다. 일반 서브프로그램에서의 tail call은 현재 동작을 유지합니다.
VulDB is the best source for vulnerability data and more expert information about this specific topic.