🔍 CVE-2026-52935

7.8
CVSS Score
HIGH
2026-06-24
2026-10-19 20:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 xfrm espintcp 구성 요소에서 진행 중인 부분 전송(partial send) 상태를 재사용할 때 발생하는 메모리 안전성 취약점입니다. 이전 전송이 완료되지 않은 상태에서 새로운 전송 메시지를 생성하면 잘못된 오프셋이 유지되어 전송 경로에서 경계 외 읽기(out-of-bounds read)가 발생할 수 있습니다.

💡 쉬운 설명

데이터를 보내는 도중에 이전 작업이 끝나지 않았는데 새 작업을 덮어씌우면서 발생하는 오류입니다. 이로 인해 컴퓨터 메모리의 잘못된 영역을 읽게 되어 시스템 보안에 문제가 생길 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: xfrm: espintcp: do not reuse an in-progress partial send espintcp keeps a single in-flight transmit in ctx->partial. Before building a new sk_msg, espintcp_sendmsg() first tries to flush that state through espintcp_push_msgs(). For blocking callers, espintcp_push_msgs() may return success even when the previous partial send is still pending. espintcp_sendmsg() would then reinitialize emsg->skmsg and reuse ctx->partial while the old transfer still owns that state. Do not rebuild the send message when ctx->partial is still in progress. If espintcp_push_msgs() returns with emsg->len still set, fail the new send instead of overwriting the live partial state. This is a memory-safety fix: reusing the live partial-send state can leave a stale offset attached to a new sk_msg and lead to an out-of- bounds read in the send path. tcp_sendmsg_locked() already handles waiting for send buffer memory, so the fix here is just to preserve espintcp's one-message-at-a-time transmit state.

📍 영향받는 시스템

Linux kernel (xfrm/espintcp 모듈 사용 환경)

⚔️ 공격 벡터

특정 네트워크 트래픽 패턴을 유도하여 진행 중인 전송 상태를 강제로 재사용하게 함으로써 메모리 경계 외 읽기 유발

🛡️ 대응 방법

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

🔧 검증 코드

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

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel