🇰🇷 한글 설명
Linux 커널의 BPF devmap 기능에서 파편화된(fragmented) 프레임을 처리할 때 발생하는 취약점입니다. XDP 프레임을 복제하는 과정에서 초기화되지 않은 메모리 영역을 skb_shared_info로 잘못 해석하여 경계 외 메모리 접근(Out-of-bounds access)이 발생할 수 있습니다.
💡 쉬운 설명
네트워크 데이터를 조각내어 보낼 때, 시스템이 데이터의 끝부분을 잘못 읽어 메모리 오류를 일으키는 문제입니다. 이로 인해 시스템이 충돌하거나 보안 공격에 노출될 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
bpf: Reject fragmented frames in devmap
Devmap broadcast redirects clone the packet for all but the last
destination.
For native XDP, that clone path copies only the linear xdp_frame data,
while fragmented frames keep skb_shared_info in tailroom outside the
linear area. Cloning such a frame leaves XDP_FLAGS_HAS_FRAGS set but
without valid frag metadata, and the later free path can interpret
uninitialized tail data as skb_shared_info, leading to an out-of-bounds
access during frame return.
Reject fragmented native XDP frames in dev_map_enqueue_clone().
Add the same restriction to the generic XDP clone path in
dev_map_redirect_clone(). Generic XDP represents fragmented packets as
nonlinear skbs, and rejecting them here keeps clone-based broadcast
support aligned between native and generic XDP.
📍 영향받는 시스템
Linux kernel (BPF/XDP 기능을 사용하는 시스템)
⚔️ 공격 벡터
파편화된 네트워크 패킷을 devmap broadcast 기능을 통해 전송하여 메모리 오류 유도
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인