🔍 CVE-2026-72408

10.0
CVSS Score
CRITICAL
2026-08-15
2026-08-17 06:19
✅ 완료

🇰🇷 한글 설명

Linux 커널의 geneve 드라이버에서 GRO(Generic Receive Offload) 힌트 처리 로직의 불일치로 인해 발생하는 취약점입니다. 공격자가 조작된 힌트 옵션을 제공할 경우, 커널이 유효하지 않은 오프셋을 참조하여 메모리 경계를 벗어나는 읽기(Out-of-bounds Read) 오류를 발생시킬 수 있습니다.

💡 쉬운 설명

네트워크 데이터를 처리하는 과정에서 검증되지 않은 정보를 잘못 읽어 들여 시스템 메모리의 민감한 정보를 유출하거나 오류를 일으킬 수 있는 문제입니다. 공격자가 특수하게 제작된 네트워크 패킷을 보내 시스템을 공격할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: geneve: gate GRO hint in geneve_gro_complete() on gs->gro_hint geneve_gro_receive() reads the GRO hint through geneve_sk_gro_hint_off(), which honours it only when the socket enabled IFLA_GENEVE_GRO_HINT (gs->gro_hint). geneve_gro_complete() instead calls the low-level geneve_opt_gro_hint_off() and acts on the hint unconditionally. On a tunnel without the hint, receive aggregates the frames as plain ETH_P_TEB while complete still honours an attacker-supplied hint option: it inflates gh_len by gro_hint->nested_hdr_len (u8) and redirects the dispatch type, so the inner gro_complete handler runs at nhoff + gh_len, an offset receive never pulled nor validated, reading out of bounds of the skb head: BUG: KASAN: slab-out-of-bounds in ipv6_gro_complete (net/ipv6/ip6_offload.c:196) Read of size 1 at addr ffff88800fe91980 by task exploit/153 ipv6_gro_complete (net/ipv6/ip6_offload.c:196) geneve_gro_complete (drivers/net/geneve.c:965) udp_gro_complete (net/ipv4/udp_offload.c:940) inet_gro_complete (net/ipv4/af_inet.c:1621) __gro_flush (net/core/gro.c:306) Gate the complete path on gs->gro_hint too via geneve_sk_gro_hint_off(), so both paths agree. Tunnels that enable the hint are unaffected.

📍 영향받는 시스템

Linux Kernel (geneve 드라이버를 사용하는 시스템)

⚔️ 공격 벡터

조작된 GENEVE 프로토콜 힌트 옵션이 포함된 네트워크 패킷 전송

🛡️ 대응 방법

Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인하십시오.

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel