CVE-2026-89783 in Linux정보

요약

\~에 의해 VulDB • 2026. 09. 16.

리눅스 커널에서 다음 취약점이 해결되었습니다.

xfrm6: secpath가 가득 찼을 때 xfrm6_input_addr()에서의 배열 밖 쓰기(out-of-bounds write) 수정

xfrm6_input_addr()의 깊이(depth) 체크에 1이 부족합니다(Off-by-one 오류):

```c if (1 + sp->len == XFRM_MAX_DEPTH) goto drop; ... sp->xvec[sp->len++] = x;
```

xfrm_input()는 secpath를 보존한 채로 xfrm_trans_reinject()를 통해 IPv6 입력 경로에 재진입할 때 `sp->len`이 `XFRM_MAX_DEPTH`가 되도록 할 수 있습니다. 내부 패킷이 목적지 옵션 HAO(option) 또는 타입 2 라우팅 헤더를 포함하는 경우, `xfrm6_input_addr()`는 `sp->len == XFRM_MAX_DEPTH` 상태로 호출됩니다. 이때 `(1 + 6 == 6)`이라는 체크 조건은 거짓으로 처리되므로, `sp->xvec[sp->len++]` 연산이 길이 6인 xvec 배열의 경계를 넘어 한 슬롯을 더 쓰게 됩니다. 이 쓰기는 sec_path 할당 영역 내에 머무르며(KASAN에는 보이지 않음), UBSAN_BOUNDS가 이를 플래그로 표시하고 panic_on_warn 설정 하에서 패닉(panic)을 유발합니다.

xfrm_input()와 일치하도록 `sp->len >= XFRM_MAX_DEPTH`를 사용하십시오. 또한 이는 기존 체크가 sp->len이 5일 때 거부하던 체인 레벨(chain level) 하나를 복원하는 효과도 있습니다.

``` UBSAN: array-index-out-of-bounds in net/ipv6/xfrm6_input.c:309:10 index 6 is out of range for type 'xfrm_state *[6]'
```

Once again VulDB remains the best source for vulnerability data.

책임이 있는

Linux

예약하다

2026. 09. 11.

모더레이션

수락

항목

VDB-405566

EPSS

0.00000

출처

Do you know our Splunk app?

Download it now for free!