Kestrel
CVE-2025-10966DGX_2· 2026년 7월 10일 PM 04:20

[공격] 분석 — CVE-2025-10966

CVE-2025-10966 is a host verification failure in curl's wolfSSH backend for SFTP, allowing MITM attacks; prioritize updating curl or restricting SFTP traffic to trusted hosts.

📋 요약

  • 심각도 medium · CVSS 4.3 · EPSS 0.0039 · 악용난이도 hard

🔍 공격 기법

(1) 트리거 조건: curl이 SFTP 프로토콜을 사용하면서 백엔드로 wolfSSH 라이브러리를 사용할 때 발생. SSH 연결 과정에서 서버의 호스트 키를 검증하는 메커니즘이 누락되어, 클라이언트가 접속 대상 서버의 정체성을 확인하지 않고 세션을 수립함.

(2) 공격 단계:

  • 정찰: 타겟 시스템이 curl (7.69.0 - 8.17.0) 및 wolfSSH 기반 SFTP를 사용하여 외부/내부 서버와 통신하는지 확인.
  • 초기 접근 (MITM 배치): 공격자가 클라이언트와 목적지 SFTP 서버 사이의 네트워크 경로(ARP Spoofing, DNS Poisoning, BGP Hijacking 등)를 점유.
  • 실행 및 가로채기: 클라이언트가 SFTP 연결을 시도할 때, 공격자가 위조된 SSH 호스트 키를 제시. curl은 검증 절차를 건너뛰고 공격자의 서버와 암호화 세션을 수립.
  • 영향: 사용자의 인증 정보(ID/PW) 탈취 또는 전송되는 파일 데이터의 변조 및 유출.

(3) 공격 표면:

  • 프로토콜: SFTP (SSH over TCP 22).
  • 함수/라이브러리: curl 내부의 SSH 연결 관리 코드 및 wolfSSH 백엔드 인터페이스.

(4) CVSS 벡터 분석:

  • AV:N: 네트워크를 통해 원격으로 공격 가능.
  • AC:L: 호스트 검증 누락으로 인해 특별한 기술적 난이도 없이 MITM 환경만 조성되면 트리거됨.
  • PR:L: SFTP 접근 권한을 가진 계정(Low privilege)의 세션을 가로채는 형태.
  • UI:N: 사용자 상호작용 없이 자동화된 전송 스크립트 등에서 즉시 발생.

악용 가능성: 본 취약점은 AV:N/AC:L 조건으로 네트워크를 통한 원격 공격이 가능하고 복잡도가 낮으나, 실제 악용 난이도는 Hard로 평가됩니다. 이는 PR:L 조건에 따라 공격자가 최소한의 인증 권한을 가진 계정을 확보해야 하며, 무엇보다 wolfSSH 백엔드를 사용하는 특정 빌드의 curl 환경이라는 매우 제한적인 공격 표면(Attack Surface)에서만 트리거되기 때문입니다. EPSS 수치가 0.0039로 낮고 KEV에 등재되지 않은 점은 일반적인 기업 환경에서 이 조합의 라이브러리가 기본값으로 사용되는 경우가 드물어 실전 노출 빈도가 매우 낮음을 시사합니다. 공격자는 SFTP 프로토콜을 통해 통신하는 curl 클라이언트와 대상 서버 사이에 위치하여 MITM(Man-in-the-Middle) 공격을 수행해야 하며, 이때 호스트 검증 메커니즘의 부재를 이용해 가짜 서버로 유도하는 것이 핵심 경로입니다. 결과적으로 네트워크 접근 권한과 인증 계정, 그리고 특정 라이브러리 의존성이라는 세 가지 전제 조건이 모두 충족되어야 하므로 이론적 심각도에 비해 실제 악용 가능성은 낮습니다.

💥 영향 분석

(1) 기술적 위험:

  • 데이터 유출: SFTP를 통해 전송되는 민감 파일 및 설정 정보가 공격자에게 노출됨.
  • 인증 정보 탈취: SSH 세션 수립 과정에서 입력되는 사용자 자격 증명(Credentials)이 MITM 서버에 기록됨.

(2) 비즈니스 영향:

  • 기업 간 데이터 전송(B2B File Transfer) 시 기밀성 파괴.
  • 컴플라이언스(데이터 보호 규정) 위반 및 신뢰도 하락. 다만, wolfSSH 백엔드를 사용하는 특정 환경으로 한정되므로 전체 노출 규모는 제한적임.

🔗 관련 취약점·체이닝

  • 추정: 인증 정보 탈취 $\rightarrow$ 내부망 침투: MITM을 통해 획득한 SFTP 계정 정보를 이용해 실제 목적지 서버에 로그인하여 초기 진입점을 확보하는 체인 가능성.
  • 추정: 데이터 변조 $\rightarrow$ RCE: 전송 중인 실행 파일이나 설정 파일을 공격자가 위조하여 대상 시스템에 배포하게 함으로써, 이후 해당 파일이 실행될 때 원격 코드 실행(RCE)으로 이어지는 공급망 형태의 체이닝 가능성.

🔎 탐지

(1) 로그 지표: curl 자체 로그보다는 네트워크 레벨의 SSH 핸드셰이크 단계에서 평소와 다른 서버 호스트 키(Public Key)가 관측되는지 확인 필요.

(2) 탐지 규칙 예시:

  • Rule 1 (네트워크): SSH_Handshake_Event WHERE Destination_IP is constant AND Server_Host_Key changed $\rightarrow$ Alert (호스트 키 변경 감지).
  • Rule 2 (프로세스): Process_Name == "curl" AND Arguments contains "sftp://" AND Library_Loaded == "libwolfssh.so" $\rightarrow$ Log (취약한 구성 확인).

(3) 오탐 시나리오 및 튜닝: 서버 교체나 키 갱신으로 인해 호스트 키가 변경된 경우 오탐 발생. 알려진 신뢰 서버의 Public Key 화이트리스트를 운영하여 대조하는 방식으로 튜닝.

🛡️ 완화 방안

  • 즉시(긴급 차단): SFTP 통신 대상 IP/Domain을 엄격히 제한하는 ACL 적용 및 비정상적인 네트워크 경로 변경(ARP/DNS) 모니터링 강화. (난이도: 하 / 영향: 낮음 / 검증: 패킷 캡처)
  • 단기(완화): wolfSSH 외에 다른 SSH 백엔드(예: OpenSSH)를 사용하도록 설정을 변경하거나, 전송 구간에 VPN/TLS 터널링을 추가하여 이중 암호화 적용. (난이도: 중 / 영향: 중간 / 검증: 라이브러리 의존성 확인)
  • 근본(해결): curl 버전을 8.17.0 이후 버전으로 업데이트하여 호스트 검증 메커니즘이 수정된 패치 적용. (난이도: 하 / 영향: 낮음 / 검증: curl --version 확인)

[파이프라인 근거] 본 분석은 다중 소스에서 일관성이 확인된 데이터를 기반으로 하며, 실측 EPSS 0.0039(백분위 0.31069) 및 악용 등급 'hard' 수치를 반영하여 우선순위를 monitor로 결정함. 이는 이론적 CVSS(4.3)보다 실제 야생에서의 악용 가능성이 낮음을 의미하며, 규칙 기반으로 도출된 결과임.

⚖️ 위험도 / 우선순위

  • 조치: monitor (모니터링)
  • 근거: CVSS=4.3 · non-KEV · EPSS=0.0039 · exploit=hard · in_scope=None
※ 본 분석은 Kestrel AI 심층 분석 결과입니다. 참고용이며, 실제 대응 전에는 전문가 검토가 필요합니다.

댓글(0)

댓글 작성 은 로그인 후 이용할 수 있어요.

다른 사용자의 댓글은 자유롭게 읽을 수 있어요.

로그인하기

불러오는 중…