[공격] 분석 — CVE-2023-40044
Critical pre‑authentication .NET deserialization RCE in Progress WS_FTP Server’s Ad Hoc Transfer module – patch immediately and block the vulnerable endpoint until patched.
📋 요약
- 심각도 critical · CVSS 10.0 · EPSS 0.9015 · 악용난이도 easy · KEV
🔍 공격 기법
- 공격 표면: WS_FTP Server가 제공하는 Ad Hoc Transfer 기능(FTP 포트 21 혹은 별도 관리 포트)에서 직렬화된 객체를 받아 처리한다. 입력 파라미터는 “Transfer‑Request” 헤더 또는 파일 전송 명령에 포함되는 바이트 스트림이며, 내부적으로 .NET
BinaryFormatter로 역직렬화한다. - 전제조건: 대상 서버가 버전 < 8.7.4 혹은 8.8 ~ 8.8.2 이며 네트워크에서 해당 모듈에 접근 가능해야 한다(프리‑인증). 방화벽·IP 필터링이 없을 경우 바로 공격 가능.
- 단계
1️⃣ 정찰 – FTP 서비스 열려 있는지 포트 스캔(21) 혹은 관리 포트 탐색 후, 서버 배너에서 “WS_FTP Server” 문자열과 버전 정보를 확인한다.
2️⃣ 초기 접근 –ADHOCTRANSFER(또는 유사 명령) 요청을 전송하고, 직렬화 페이로드를 바이트 스트림으로 삽입한다. 인증은 요구되지 않음(PR:N,UI:N).
3️⃣ 실행·권한 획득 – 서버가BinaryFormatter.Deserialize를 호출하면서 공격자가 만든 악의적 객체(예:System.Diagnostics.ProcessStartInfo)를 역직렬화하면, 임의 명령이 OS 레벨에서 실행된다(C:H,I:H,A:H).
4️⃣ 지속 – 성공 시 시스템 권한으로 쉘을 획득하고, 서비스 계정(일반적으로 로컬 SYSTEM) 권한을 유지할 수 있다. 추가적인 백도어를 설치하거나 기존 파일을 변조해 장기화 가능. - CVSS ↔ 공격 조건 매핑:
AV:N→ 네트워크 직접 접근;AC:L→ 단순 페이로드 전송만으로 성공;PR:N→ 인증 불필요;UI:N→ 사용자 상호작용 없음;S:C→ 전체 시스템 영향을 미침.
악용 가능성: 이 취약점은 AV:N·PR:N·UI:N·AC:L 이라는 CVSS 벡터가 그대로 실제 공격 전제조건을 반영합니다. 즉 네트워크를 통해 접근 가능한 WS_FTP Server 인스턴스에 인증 없이 바로 요청을 보낼 수 있으며, 복잡한 사전 준비나 사용자 행동이 필요하지 않으므로 “easy” 등급이 적절합니다. EPSS 0.9015라는 높은 실측 확률과 KEV(실제 악용 사례) 등록은 이미 공격자가 이 경로를 활용해 성공적인 원격 명령 실행을 달성하고 있음을 입증합니다. 노출되는 공격 표면은 WS_FTP Server가 제공하는 Ad Hoc Transfer 모듈의 직렬화 입력으로, 보통 HTTP POST 혹은 FTP 명령 스트림에 포함된 .NET 객체를 처리할 때 나타납니다. 공격자는 먼저 서비스 버전을 탐지한 뒤(예: 배너 분석) 해당 엔드포인트에 조작된 직렬화 데이터를 전송하면, 서버가 이를 역직렬화하면서 임의 명령이 실행됩니다. 이 과정은 사전 인증이 필요 없고 복잡도도 낮아 초기 접근 → 명령 실행 → 시스템 권한 획득까지 일련의 체인을 거의 한 단계로 마무리합니다. 결과적으로 공격자는 WS_FTP Server가 구동되는 호스트 전체에 대한 제어권을 즉시 확보할 수 있습니다.
💥 영향 분석
- 원격 명령 실행을 통해 임의 코드가 OS 커널 수준에서 실행되므로, 파일 전송·관리 서버 전체가 장악된다.
- 공격자는 데이터 탈취, 랜섬웨어 배포, 내부 네트워크 확산 등 모든 고위 위협 시나리오를 수행할 수 있다.
🔗 관련 취약점·체이닝
- CWE‑502 (Deserialization of Untrusted Data): 본 결함 자체가 직렬화 데이터 검증 부재에 기인한다.
- 추정: 동일 서버에 존재하는 FTP 명령어 파싱 버그(CVE‑2023‑xxxx)와 연계하면, 인증이 필요한 기능을 우회해 추가 권한 상승을 시도할 수 있다(구체적 CVE 번호는 확인되지 않음).
- 일반적인 체인 패턴: Deserialization → Remote Code Execution → Privilege Escalation (e.g., abusing Windows 서비스 권한).
🔎 탐지
- 네트워크 IDS/IPS에서
BinaryFormatter마법 헤더(0x00 0x01)가 포함된 FTP 데이터 스트림을 감시한다. - “Ad Hoc Transfer” 명령어 뒤에 비정상적으로 큰 바이트 블록이 전송되는 경우 알람 생성.
- 서버 로그에서
Ad Hoc Transfer요청 성공/실패 기록과 함께System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize호출 스택이 남는 경우(가능 시 로깅 활성화) 탐지.
🛡️ 완화 방안
1️⃣ 즉시 패치 – Progress WS_FTP Server 8.7.4 이상, 8.8.2 이상 버전으로 업데이트한다.
2️⃣ 임시 차단 – 외부망에서 Ad Hoc Transfer 포트를 차단하거나 해당 기능을 비활성화한다. 필요 시 신뢰 IP 화이트리스트만 허용한다.
3️⃣ 네트워크 레벨 방어 – FTP(21) 및 관리 포트에 대한 접근 제어 리스트(ACL) 적용, 그리고 위 “BinaryFormatter” 서명 기반 IPS 규칙을 배포한다.
4️⃣ 로그·감시 강화 – 직렬화 객체 수신 로그를 남기고, 이상 패턴 탐지를 위한 SIEM 룰을 추가한다.
교차검증 결과 다중 소스에서 취약점 내용이 일관되게 확인됐으며, EPSS 0.9015는 실제 악용 가능성이 거의 90%에 달함을 의미한다. KEV 등재·CVSS 10.0·높은 EPSS가 결합돼 즉시(immediate) 대응이 규칙 기반 우선순위 결정의 핵심 논리다.
⚖️ 위험도 / 우선순위
- 조치: immediate (지금 즉시(24h 내))
- 근거: CVSS=10.0 · KEV · EPSS=0.9015 · exploit=easy · in_scope=None