🔍 CVE-2026-89554

8.2
CVSS Score
HIGH
2026-09-11
2026-10-19 09:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 MPTCP 구현 중 SYN 쿠키를 사용하는 MP_JOIN 재구성 과정에서 local_id가 초기화되지 않는 취약점이 발견되었습니다. 이로 인해 이전에 해제된 소켓의 잔류 데이터가 잘못된 ID로 사용될 수 있으며, 공격자가 이를 악용하여 경로 관리자의 서브플로우 장부 기록을 오염시킬 수 있습니다.

💡 쉬운 설명

컴퓨터가 네트워크 연결을 다시 만들 때, 이전에 사용하던 찌꺼기 데이터를 잘못 읽어 들여 연결 정보가 꼬이는 문제입니다. 공격자가 이 찌꺼기 데이터를 조작하여 네트워크 연결 흐름을 방해하거나 혼란을 줄 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: mptcp: fix uninitialized local_id in syncookie MP_JOIN reconstruction mptcp_token_join_cookie_init_state() restores remote_nonce, local_nonce, backup, join_id, token and msk from the saved cookie entry when rebuilding the request socket for a MP_JOIN 4th-ACK handled under SYN cookies, but it does not restore local_id, even though the SYN path saved it. subflow_ulp_clone() then reads that uninitialized field and stores it as the joined subflow's address-ID. Because the request-sock slab is SLAB_TYPESAFE_BY_RCU and not zeroed on allocation, the value is the stale byte of a previously freed request socket, which an off-path peer can influence by sending concurrent MP_JOIN SYNs. This corrupts the path manager's id-based subflow bookkeeping for the connection. Restore subflow_req->local_id from the cookie entry, as done for the other fields.

📍 영향받는 시스템

Linux kernel (MPTCP 기능이 활성화된 버전)

⚔️ 공격 벡터

공격자가 동시에 MP_JOIN SYN 패킷을 전송하여 메모리에 남아있는 이전 소켓의 잔류 데이터를 조작하는 방식

🛡️ 대응 방법

커널 패치를 적용하여 MP_JOIN 재구성 시 local_id가 쿠키 엔트리로부터 올바르게 복구되도록 업데이트해야 합니다.

🔧 검증 코드

현재 실행 중인 커널 버전을 확인하여 해당 취약점이 해결된 패치 버전인지 확인합니다.

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel