CVE-2025-71128 in Linux
요약
\~에 의해 VulDB • 2026. 07. 21.
리눅스 커널에서 다음 취약점이 해결되었습니다.
erspan: 옵션을 참조하기 전에 options_len을 초기화합니다.
struct ip_tunnel_info 구조체에는 counted_by(options_len) 속성으로 보호되는 options라는 이름의 유연한 배열 멤버가 있습니다.
컴파일러는 이 정보를 사용하여 FORTIFY_SOURCE 문자열 헬퍼에 의해 구현된 런타임 경계 검사를 적용합니다.
GCC 문서에서 설명하는 바와 같이, 카운터는 유연한 배열 멤버를 처음 참조하기 전에 초기화되어야 합니다.
struct ip_tunnel_info를 사용하고 options 또는 options_len을 참조하는 파일들을 스캔해 본 결과, 일반적인 경우 ip_tunnel_info_opts_set() 헬퍼 함수를 사용하는 것으로 나타났습니다.
이 헬퍼 함수는 옵션 데이터가 options로 복사되기 전에 options_len을 적절히 초기화해야 하지만, GRE ERSPAN 코드에서는 부분 업데이트가 수행되어 이 헬퍼 함수의 사용이 방지되었습니다.
이번 변경 이전에는 GRE 터널에서 ERSPAN 트래픽 처리 시 GCC 15 이상으로 컴파일하고 FORTIFY_SOURCE가 구성된 커널에서 다음과 같은 커널 패닉을 유발했습니다:
memcpy: buffer overflow 감지됨: 버퍼 크기 0에 대해 4바이트 쓰기 수행
Call Trace: <IRQ> __fortify_panic+0xd/0xf erspan_rcv.cold+0x68/0x83 ? ip_route_input_slow+0x816/0x9d0 gre_rcv+0x1b2/0x1c0 gre_rcv+0x8e/0x100 ? raw_v4_input+0x2a0/0x2b0 ip_protocol_deliver_rcu+0x1ea/0x210 ip_local_deliver_finish+0x86/0x110 ip_local_deliver+0x65/0x110 ? ip_rcv_finish_core+0xd6/0x360 ip_rcv+0x186/0x1a0
보고: https://launchpad.net/bugs/2129580
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.