[방어] 분석 — CVE-2025-21705
A vulnerability in the Linux kernel's MPTCP fastopen disconnect handling can lead to data stream corruption and system instability, requiring a kernel update or disabling MPTCP as an immediate mitigation.
📋 요약
- 심각도 medium · CVSS 5.5 · EPSS 0.00205 · 악용난이도 hard
🔍 공격 기법
(1) 트리거 조건: Multipath TCP(MPTCP) 프로토콜의 Fast Open 기능을 사용하는 상태에서 연결 해제(disconnect)가 발생할 때, 커널 내 __mptcp_clean_una 함수 수준에서 데이터 스트림 처리 로직의 결함이 트리거됩니다.
(2) 공격 단계:
- 정찰/초기접근: 대상 시스템이 MPTCP 및 Fast Open을 지원하는지 확인 (AV:L, PR:L 조건에 따라 이미 로컬 권한을 가진 사용자가 수행).
- 실행: 특수하게 조작된 MPTCP 패킷 시퀀스를 통해 연결 해제 상황을 강제로 유도.
- 영향: 커널 내
WARNING발생 및 데이터 스트림 오염(corruption) 유발 $\rightarrow$ 시스템 불안정성 초래.
(3) 공격 표면: Linux Kernel Network Stack (MPTCP 프로토콜 스택).
(4) CVSS 벡터 연결: - AV:L / PR:L: 로컬 권한을 가진 사용자가 커널 네트워크 인터페이스에 접근 가능해야 함.
- AC:L / UI:N: 특별한 사용자 상호작용 없이 낮은 복잡도로 트리거 가능.
악용 가능성: 본 취약점의 공격 난이도는 Hard로 평가되며, 실제 악용 가능성은 현재 매우 낮습니다. CVSS 벡터상 AV:L과 PR:L 조건은 공격자가 이미 대상 시스템에 일반 사용자 권한으로 접근하여 로컬 셸을 확보해야 함을 의미하며, 이는 외부에서의 직접적인 침투 경로가 아님을 시사합니다. EPSS 수치가 0.00205로 매우 낮고 KEV(Known Exploited Vulnerabilities)에 등재되지 않은 점은 현재 야생에서 이 취약점을 이용한 실제 공격 사례가 보고되지 않았음을 뒷받침합니다. 공격 표면은 Linux 커널의 mptcp(Multi-Path TCP) 프로토콜 스택이며, 특히 fastopen 옵션이 활성화된 상태에서 연결 해제(disconnect) 시 발생하는 데이터 스트림 오염 및 커널 패닉 유발 지점이 핵심 트리거입니다. 결과적으로 로컬 권한을 가진 공격자가 특정 네트워크 조건과 MPTCP 파라미터를 정교하게 조작해야 하므로, 단순 실행보다는 시스템 가용성을 저해하는 DoS 공격으로 이어질 가능성이 큽니다.
💥 영향 분석
(1) 기술적 위험: 데이터 스트림 오염 및 커널 패닉/경고 발생으로 인한 시스템 가용성 저하 (CVSS A:H). 원격 코드 실행이나 권한 상승에 대한 직접적인 근거는 없으며, 주로 서비스 중단(DoS) 및 데이터 무결성 훼손이 핵심 위험입니다.
(2) 비즈니스 영향: 커널 수준의 불안정성으로 인해 호스트 서버의 예기치 못한 재부팅 또는 네트워크 서비스 중단이 발생할 수 있으며, 이는 서비스 가용성 지표(SLA)에 영향을 줍니다.
🔗 관련 취약점·체이닝
추정: 본 취약점은 단독으로는 가용성 저하를 일으키나, 커널 메모리 오염(Corruption) 패턴을 보인다는 점에서 추정: 다른 메모리 관리 결함과 체이닝될 경우 로컬 권한 상승(LPE)으로 이어질 가능성이 존재합니다. (일반적인 Kernel Memory Corruption $\rightarrow$ Privilege Escalation 체이닝 패턴)
🔎 탐지
(1) 로그 지표: 커널 링 버퍼(dmesg) 또는 /var/log/syslog, kern.log에서 MPTCP 관련 WARNING 메시지 확인. 특히 __mptcp_clean_una 함수 호출 스택이 포함된 로그가 핵심 지표입니다.
(2) 탐지 규칙:
- 로직:
dmesg또는 시스템 로그에서 특정 함수명과 'WARNING' 키워드가 동시에 출현하는지 모니터링. - SIEM 쿼리 예시:
process.name == "kworker" OR process.name == "syz-executor" AND log.message CONTAINS "WARNING" AND log.message CONTAINS "__mptcp_clean_una" - 정규식 패턴:
WARNING: CPU: \d+ PID: \d+ at net/mptcp/protocol\.c:\d+ __mptcp_clean_una
(3) 오탐 튜닝: MPTCP를 정상적으로 사용하는 고부하 네트워크 환경에서 일시적인 레이스 컨디션으로 인한 경고가 발생할 수 있습니다. 동일 PID에서 반복적으로 발생하거나 시스템 크래시로 이어지는 빈도를 임계값으로 설정하여 튜닝합니다.
🛡️ 완화 방안
즉시(긴급 차단): MPTCP 기능 비활성화. (시스템 설정 또는 모듈 언로드)
- 방법:
sysctl -w net.mptcp.enabled=0적용 또는modprobe -r mptcp수행. - 난이도: 낮음 / 운영 영향: MPTCP 사용 서비스 중단 / 검증:
sysctl net.mptcp.enabled값 확인. 우선순위: 최상.
단기(완화): Fast Open 기능 제한 및 네트워크 필터링.
- 방법: TCP Fast Open 관련 설정을 검토하여 불필요한 경로 차단.
- 난이도: 중간 / 운영 영향: 연결 설정 속도 저하 가능성 / 검증: 네트워크 지연 시간 측정. 우선순위: 중.
근본(해결): 취약점이 해결된 최신 Linux 커널 버전으로 업데이트.
- 대상 버전: 6.1.130+, 6.4.x, 6.6.77+, 6.12.14+, 6.13.3+ 등 (영향 제품 범위 외 최신 패치 버전).
- 난이도: 높음 / 운영 영향: 커널 업데이트 후 시스템 재부팅 필수 / 검증:
uname -r로 버전 확인. 우선순위: 상.
[파이프라인 근거] 본 분석은 다중 소스에서 일관성이 확인된 데이터를 기반으로 하며, EPSS 0.00205(낮음) 및 AV:L/PR:L 조건을 반영하여 실제 악용 가능성을 'hard'로 판단했습니다. 이에 따라 즉각적인 패치보다는 모니터링과 선택적 기능 비활성화를 우선하는 monitor 등급의 대응 전략을 수립하였습니다.
⚖️ 위험도 / 우선순위
- 조치: monitor (모니터링)
- 근거: CVSS=5.5 · non-KEV · EPSS=0.00205 · exploit=hard · in_scope=None