[방어] 분석 — CVE-2025-21706
A logic flaw in the Linux kernel's MPTCP path manager allows improper 'fullmesh' flag settings on implicit endpoints, potentially causing a system crash; immediately disable MPTCP if not required or monitor for kernel warnings.
📋 요약
- 심각도 medium · CVSS 5.5 · EPSS 0.00205 · 악용난이도 hard
🔍 공격 기법
(1) 트리거 조건: mptcp_pm_nl_fullmesh() 함수가 subflow 엔드포인트에만 적용되어야 할 'fullmesh' 플래그를 implicit 엔드포인트에도 설정할 수 있게 허용하는 set_flags() 훅의 권한 제어 미흡이 트리거 포인트입니다.
(2) 공격 단계:
- 정찰 및 접근: 로컬 시스템에 로그인하여 일반 사용자 권한을 획득합니다 (PR:L).
- 실행: Netlink 인터페이스를 통해 MPTCP 경로 관리자(path manager) 설정 변경 요청을 보냅니다.
- 영향: implicit 엔드포인트에
fullmesh플래그가 강제로 설정되며, 이후 커널 내부의__mark_subflow_endp_available함수에서 기대하지 않은 상태를 만나 Kernel Warning 또는 Crash(DoS)를 유발합니다.
(3) 공격 표면: Linux Kernel Netlink interface (MPTCP path manager).
(4) CVSS 벡터 분석:AV:L/AC:L/PR:L/UI:N에 따라, 원격 공격이 아닌 로컬 권한을 가진 사용자가 특별한 상호작용 없이 낮은 복잡도로 시스템 가용성을 저해할 수 있는 조건입니다.
악용 가능성: 본 취약점은 Linux 커널의 MPTCP Path Manager 내 fullmesh 플래그 설정 로직 결함으로, 공격 난이도는 Hard로 평가됩니다. CVSS 벡터상 AV:L 및 PR:L 조건에 따라, 공격자는 이미 시스템에 로그인하여 낮은 권한(Low Privilege)을 획득한 상태에서만 Netlink 인터페이스를 통해 커널 메모리에 접근할 수 있습니다. 구체적인 공격 표면은 mptcp_pm_nl_fullmesh() 함수와 연결된 Netlink 엔드포인트 및 관련 파라미터이며, 'implicit' 엔드포인트에 부적절하게 플래그를 설정하는 트리거 조건이 성립해야 합니다. EPSS 수치가 0.00205로 매우 낮고 KEV(Known Exploited Vulnerabilities)에 등재되지 않은 점은 현재 야생에서 실제 악용 사례가 드물며, 이론적인 심각도보다 실질적인 위협 수준이 낮음을 시사합니다. 그러나 로컬 권한 상승(LPE)이나 커널 패닉을 유도할 수 있는 잠재적 경로가 되므로, 내부 침투 이후의 횡적 이동 및 권한 상승 단계에서 악용될 가능성이 존재합니다.
💥 영향 분석
(1) 기술적 위험: 커널 패닉 또는 Kernel Warning으로 인한 시스템 중단(Denial of Service, A:H). 메모리 오염이나 권한 상승에 대한 직접적인 근거는 없으므로 서비스 가용성 상실이 주된 위협입니다.
(2) 비즈니스 영향: 서버 인스턴스의 갑작스러운 재부팅으로 인한 서비스 다운타임 발생 및 운영 가용성 저하.
🔗 관련 취약점·체이닝
- 추정: 본 취약점은 단독으로는 DoS에 그치지만, 커널의 불안정한 상태를 유발하여 다른 Race Condition이나 Memory Corruption 취약점과 체이닝될 경우 권한 상승(LPE)으로 이어질 가능성이 있는 패턴입니다.
🔎 탐지
(1) 로그 지표: /var/log/syslog, dmesg 또는 journalctl -k에서 MPTCP 관련 커널 경고 메시지를 확인합니다.
- 핵심 키워드:
WARNING,mptcp_pm_nl_fullmesh,__mark_subflow_endp_available,net/mptcp/pm_netlink.c
(2) 탐지 규칙 예시: - SIEM 쿼리 (의사코드):
SELECT timestamp, hostname, message FROM kernel_logs WHERE message LIKE '%WARNING%__mark_subflow_endp_available%' AND message LIKE '%mptcp_pm_nl_fullmesh%' - 정규식 패턴:
WARNING: CPU: \d+ PID: \d+ at net/mptcp/pm_netlink\.c:\d+ __mark_subflow_endp_available
(3) 오탐 튜닝: 정상적인 MPTCP 설정 변경 작업 중 발생하는 로그인지 확인하십시오. 일반적인 사용자 환경에서fullmesh플래그를 Netlink로 직접 수정하는 경우는 드물므로, 해당 패턴 발견 시 즉시 조사가 필요합니다.
🛡️ 완화 방안
- 즉시(긴급 차단): MPTCP 기능이 불필요한 서버의 경우 커널 모듈을 비활성화하거나 로드되지 않도록 설정합니다.
- 방법:
modprobe -r mptcp또는/etc/modprobe.d/에blacklist mptcp추가. - 난이도: 낮음 / 운영 영향: MPTCP 사용 서비스 중단 / 검증:
lsmod | grep mptcp결과 없음 확인. (우선순위: 높음)
- 방법:
- 단기(완화): 일반 사용자(
PR:L)가 Netlink를 통해 커널 설정을 변경하는 것을 제한하기 위해CAP_NET_ADMIN권한 관리를 강화하고, 불필요한 로컬 계정의 접근을 제어합니다.- 난이도: 중간 / 운영 영향: 관리자 작업 절차 변경 가능성 / 검증: 일반 계정으로 MPTCP 설정 시도 시 Permission Denied 확인. (우선순위: 중간)
- 근본(해결): 영향받는 커널 버전(5.18~6.13.2 등)을 패치된 최신 버전으로 업데이트합니다.
- 난이도: 중간 / 운영 영향: 재부팅 필요로 인한 서비스 일시 중단 / 검증:
uname -r및 벤더 제공 보안 패치 적용 여부 확인. (우선순위: 필수)
- 난이도: 중간 / 운영 영향: 재부팅 필요로 인한 서비스 일시 중단 / 검증:
[분석 근거] 본 리포트는 다중 소스 교차검증을 통해 데이터 일관성이 확인되었으며, 실측 EPSS 값(0.00205)과 CVSS 5.5, 그리고 AV:L/PR:L 조건을 종합하여 실제 악용 가능성이 낮다고 판단(exploit=hard)해 우선순위를 'monitor'로 결정하였습니다.
⚖️ 위험도 / 우선순위
- 조치: monitor (모니터링)
- 근거: CVSS=5.5 · non-KEV · EPSS=0.00205 · exploit=hard · in_scope=None