🇰🇷 한글 설명
Linux 커널의 IPVS 구성 요소에서 IPv6 패킷 처리 시 TCP 상태 조회 과정에 오류가 발견되었습니다. IPv6 확장 헤더가 포함된 경우 TCP 헤더의 위치를 잘못 계산하여 엉뚱한 바이트를 참조할 수 있는 취약점입니다.
💡 쉬운 설명
인터넷 데이터 패킷을 전달하는 과정에서 IPv6라는 특정 형식을 사용할 때, 데이터의 시작 위치를 잘못 짚는 문제가 있습니다. 이로 인해 시스템이 데이터의 내용을 올바르게 읽지 못할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ipvs: use parsed transport offset in TCP state lookup
TCP state handling reparses the skb to find the TCP header. For IPv6 it
uses sizeof(struct ipv6hdr), while the surrounding IPVS code already
parsed the packet with ip_vs_fill_iph_skb() and has the real
transport-header offset in iph.len.
This makes TCP state handling look at the wrong bytes when an IPv6
packet carries extension headers. Use the parsed transport offset passed
down from ip_vs_set_state() when reading the TCP header.
For IPv4 and for IPv6 packets without extension headers, the passed
offset matches the previous value.
📍 영향받는 시스템
Linux Kernel (IPVS 모듈을 사용하는 시스템)
⚔️ 공격 벡터
확장 헤더가 포함된 특수하게 조작된 IPv6 TCP 패킷 전송
🛡️ 대응 방법
IPVS의 TCP 상태 조회 로직이 수정된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인