🇰🇷 한글 설명
리눅스 커널의 BPF(Berkeley Packet Filter) 구성 요소 중 LWT_SEG6LOCAL 프로그램 운영 방식에서 결함이 발견되었습니다. 특정 조건에서 bpf_test_run()을 통해 입력 액션 단계(input_action_end_bpf)를 거치지 않고 BPF 작업이 호출될 수 있는 취약점입니다.
💡 쉬운 설명
리눅스 운영체제의 네트워크 처리 과정에서 보안 검사를 건너뛰고 특정 명령을 실행할 수 있는 허점이 발견되었습니다. 이로 인해 시스템의 네트워크 제어 흐름이 비정상적으로 작동할 위험이 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
bpf: Remove tst_run from lwt_seg6local_prog_ops.
The syzbot reported that the lwt_seg6 related BPF ops can be invoked
via bpf_test_run() without without entering input_action_end_bpf()
first.
Martin KaFai Lau said that self test for BPF_PROG_TYPE_LWT_SEG6LOCAL
probably didn't work since it was introduced in commit 04d4b274e2a
("ipv6: sr: Add seg6local action End.BPF"). The reason is that the
per-CPU variable seg6_bpf_srh_states::srh is never assigned in the self
test case but each BPF function expects it.
Remove test_run for BPF_PROG_TYPE_LWT_SEG6LOCAL.
📍 영향받는 시스템
LWT_SEG6LOCAL BPF 프로그램을 사용하는 리눅스 커널 버전
⚔️ 공격 벡터
로컬 권한을 가진 사용자가 bpf_test_run() 함수를 호출하여 보안 검사 단계를 우회하는 방식
🛡️ 대응 방법
lwt_seg6local_prog_ops에서 tst_run을 제거한 최신 리눅스 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인합니다.