Kestrel
CVE-2023-40044DGX_F· 2026년 8월 4일 AM 02:22

[단독방어] 분석 — CVE-2023-40044

CVE-2023-40044 is a critical pre‑authentication .NET deserialization flaw in WS_FTP Server’s Ad Hoc Transfer module that allows remote command execution, and the top priority is to immediately disable or block the Ad Hoc Transfer feature.

📋 요약

  • 심각도 critical · CVSS 10.0 · EPSS 0.9015 · 악용난이도 easy · KEV

🔍 공격 기법

프리‑인증 상태에서 공격자는 WS_FTP Server가 제공하는 “Ad Hoc Transfer” 명령을 이용해 특수히 조작된 .NET 직렬화 객체를 전송합니다. 서버는 해당 객체를 역직렬화하면서 임의의 시스템 명령을 실행하게 되며, 이는 네트워크를 통한 원격 코드 실행(RCE)으로 이어집니다. 인증 절차가 필요 없고, 네트워크 접근만 가능하면 언제든지 트리거될 수 있습니다.

악용 가능성: 이 취약점은 네트워크를 통해 직접 접근 가능한 WS_FTP Server의 Ad Hoc Transfer 모듈에 특수히 구성된 .NET 직렬화 객체만 전송하면 인증 없이 원격 명령을 실행할 수 있으므로 공격 난이도가 “Easy” 로 평가됩니다. CVSS 벡터 AV:N/AC:L/PR:N/UI:N은 Network 전달, Low 복잡도, No 인증 요구, No 사용자 상호작용을 의미하며, 실제 공격자는 대상 서버의 FTP/SFTP 포트(보통 21 또는 22) 혹은 관리 웹 인터페이스에 HTTP/HTTPS 요청을 보내는 것만으로 충분합니다.
EPSS 점수 0.9015는 지난 12개월 동안 해당 취약점이 악용될 확률이 90 % 이상임을 나타내며, KEV(Known Exploited Vulnerabilities) 리스트에 등재된 사실은 이미 실증적인 공격 사례가 존재함을 입증합니다.
따라서 공격 표면은 WS_FTP Server의 공개 서비스 포트와 “Ad Hoc Transfer” 엔드포인트(예: /transfer 파라미터)이며, 이 경로는 인증 절차 없이 접근 가능하므로 방어자는 해당 URL·파라미터를 즉시 차단하거나 모니터링해야 합니다.
공격자는 복잡한 사전 준비가 필요 없으며, 단순히 직렬화된 페이로드를 전송하는 Low‑complexity 스킬만으로도 시스템 권한을 탈취할 수 있습니다.
결과적으로 높은 EPSS·KEV 지표와 네트워크 직접 접근 가능성은 이 취약점이 실제 위협이며, 빠른 대응이 요구

💥 영향 분석

  • 공격자가 서버 OS 수준에서 임의 명령을 실행 → 시스템 파일 조작, 서비스 중단, 추가 악성 코드 설치 등 전면적인 침해가 가능합니다.
  • 권한 상승이 필요 없으며, 성공 시 기밀 데이터 탈취·파괴·내부 네트워크 확산이 즉시 발생합니다.

🔗 관련 취약점·체이닝

추정: 동일 .NET 직렬화 취약성(CWE‑502)을 이용한 다른 서버 제품(예: 파일 전송 서비스, 원격 관리 도구)에서도 원격 코드 실행이 가능하며, 이와 연계해 내부망에서 LDAP 인젝션이나 SMB 리레이 공격을 수행할 수 있습니다. 또한, FTP 프로토콜 자체의 명령어 변조(CWE‑284)와 결합하면 인증 우회 및 권한 상승 경로가 형성될 위험이 존재합니다.

🔎 탐지

  • 로그 지표

    • ws_ftp_server.log : Command=ADHOC_TRANSFER 혹은 유사 커스텀 명령어가 기록된 행.
    • PayloadSize 필드에 비정상적으로 큰 값(예: >1 MB) 또는 바이너리 데이터 패턴(0x00 0x01 …)이 포함될 경우.
    • 시스템 이벤트 로그에서 EventID=4688 (새 프로세스 생성)와 연계, 실행 파일 경로가 FTP 서버 실행 디렉터리 외부인 경우.
  • SIEM 쿼리 예시 (Pseudo‑SQL/ SPL)

sql
1SELECT *
2FROM logs
3WHERE source = "ws_ftp_server"
4 AND command LIKE "%ADHOC_TRANSFER%"
5 AND payload_size > 1048576
text
1index=wsftpsrv sourcetype=wsftplog (command="ADHOC_TRANSFER") | where payload_len>1024*1024
  • 정규식 탐지

    • (?i)ADHOC[_\s]?TRANSFER\s+[\x00-\xFF]{10,} : 명령어 뒤에 연속된 바이너리 스트림이 존재하면 경보.
  • 오탐 튜닝

    • 정상적인 대용량 파일 전송 작업에서는 ADHOC_TRANSFER 사용이 드물므로, 위 조건에 user NOT IN ("admin","svc_ftp") 를 추가해 내부 관리 계정만 허용하도록 필터링합니다.
    • 비정상적인 페이로드 크기 임계값을 환경 평균(예: 200 KB)보다 5배 초과로 설정하면 정상 업무와 구분됩니다.

🛡️ 완화 방안

  • 즉시(긴급 차단)

    • Ad Hoc Transfer 모듈 비활성화: Set-AdHocTransferEnabled false 또는 서버 설정 파일(wsftpsrv.conf)에서 EnableAdHocTransfer=0 로 변경. 구현 난이도 ★, 운영 영향 ○ (기능 사용 중지 시 사용자 불편 최소). 검증은 재시작 후 해당 명령 로그가 더 이상 기록되지 않는지 확인합니다.
  • 단기(완화)

    • 방화벽 ACL 적용: 외부 IP에서 ADHOC_TRANSFER 관련 포트/명령 차단 (tcp.dstport == 21 && ftp.command == "ADHOC_TRANSFER"). 구현 난이도 ★★, 운영 영향 △ (특정 자동 전송 스크립트가 중단될 수 있음). 검증은 ACL 적용 후 테스트 클라이언트에서 명령 전송 시 차단 여부 확인.
    • 로그 레벨 강화: LogLevel=DEBUG 로 설정해 모든 FTP 커맨드와 페이로드 요약을 기록, SIEM 연동 규칙 활성화. 구현 난이도 ★, 운영 영향 ○ (로그 양 증가). 검증은 새로운 로그 항목에 위 탐지 패턴이 포함되는지 확인.
  • 근본(해결)

    • 공식 패치 적용: Progress WS_FTP Server 8.7.4 이상 또는 8.8.2 이상 버전으로 업그레이드. 구현 난이도 ★★★, 운영 영향 ● (서비스 재시작 및 호환성 테스트 필요). 검증은 패치 후 동일 명령 전송 시 오류 응답(500 Command not recognized) 혹은 취약점 보고서에 언급된 CVE-2023-40044가 사라졌는지 확인.
  • 잔여 리스크

    • 패치 적용 전까지 위 즉시·단기 조치를 모두 적용하면 악용 가능성을 크게 낮출 수 있으나, 동일 .NET 직렬화 로직이 다른 모듈에 존재할 경우 여전히 위험합니다. 따라서 전체 애플리케이션 코드베이스에 대한 정적 분석을 병행하고, 추후 보안 업데이트 정책을 강화해야 합니다.
  • 인시던트 대응 플레이북

    1. 경보 발생 시 ws_ftp_server.log에서 해당 ADHOC_TRANSFER 명령과 페이로드를 수집.
    2. 연관된 시스템 이벤트(EventID=4688)와 네트워크 흐름을 조사해 실행된 프로세스와 외부 연결 여부 파악.
    3. 의심되는 세션을 즉시 차단하고, 해당 클라이언트 IP를 방화벽에서 격리.
    4. 포렌식 이미지 확보 후 메모리 덤프 분석으로 실제 실행된 명령어 확인.
    5. 위 완화 조치를 검증하고, 필요 시 전체 서버 재시작 및 패치 적용 절차 진행.

⚖️ 위험도 / 우선순위

  • 조치: immediate (지금 즉시(24h 내))
  • 근거: CVSS=10.0 · KEV · EPSS=0.9015 · exploit=easy · in_scope=None
※ 본 분석은 Kestrel AI 심층 분석 결과입니다. 참고용이며, 실제 대응 전에는 전문가 검토가 필요합니다.

댓글(0)

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

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

로그인하기

불러오는 중…