MOVEit Transfer를 아직 운영 중이라면 CVE-2023-34362는 “과거에 유행한 취약점”으로만 넘길 수 없다. 이 취약점은 2023년 5월 말부터 실제 대규모 악용이 확인된 제로데이였고, 공격자는 파일 전송 서버를 단순히 장악하는 데서 멈추지 않고 조직 간에 오가는 민감 파일을 빼내는 데 집중했다. 패치를 적용했더라도 취약했던 기간의 로그, 웹셸 흔적, 대량 다운로드, 클라우드 저장소 키 노출 여부를 다시 확인하지 않았다면 유출 가능성은 여전히 남아 있다.
CVE-2023-34362는 Progress MOVEit Transfer 웹 애플리케이션의 SQL Injection 취약점이다. 인증되지 않은 원격 공격자가 HTTP 또는 HTTPS 요청만으로 MOVEit Transfer 데이터베이스에 접근할 수 있고, 환경에 따라 데이터 조회·변경·삭제, 권한 상승, 웹셸 배포, 파일 탈취로 이어질 수 있다. NVD 기준 CVSS v3.1 점수는 9.8이며, CISA KEV에 포함된 실제 악용 취약점이다.
운영자가 지금 다시 봐야 할 핵심은 “패치했는가”가 아니라 “취약했던 기간에 이미 털렸는가”다. MOVEit Transfer는 고객, 협력사, 임직원 자료가 모이는 파일 전송 허브로 쓰이는 경우가 많다. 따라서 서버가 정상 동작한다는 사실만으로 침해가 없었다고 판단하면 안 된다. 랜섬웨어 암호화 없이 데이터 탈취와 협박만 진행된 사례가 많았기 때문이다.
영향 범위
영향 대상은 Progress MOVEit Transfer와 MOVEit Cloud다. 특히 인터넷에 직접 노출된 MOVEit Transfer, 외부 협력사나 고객망에서 접근 가능한 인스턴스, Azure Blob Storage·S3·NAS 같은 외부 저장소와 연동된 인스턴스는 우선 점검 대상이다.
공개 자료 기준 주요 취약 버전과 조치 기준은 다음과 같다.
| 제품 | 영향 버전 | 조치 기준 |
|---|---|---|
| MOVEit Transfer 2020.x 및 이전 | 2020.1.6 이하 및 구버전 포함 | 지원 종료 버전은 업그레이드 또는 격리 필요 |
| MOVEit Transfer 2021.0 | 2021.0.7 미만 | 2021.0.7 이상 또는 벤더 권고 최신 패치 |
| MOVEit Transfer 2021.1 | 2021.1.5 미만 | 2021.1.5 이상 또는 벤더 권고 최신 패치 |
| MOVEit Transfer 2022.0 | 2022.0.5 미만 | 2022.0.5 이상 또는 벤더 권고 최신 패치 |
| MOVEit Transfer 2022.1 | 2022.1.6 미만 | 2022.1.6 이상 또는 벤더 권고 최신 패치 |
| MOVEit Transfer 2023.0 | 2023.0.2 미만 | 2023.0.2 이상 또는 벤더 권고 최신 패치 |
| MOVEit Cloud | 14.0.5.45, 14.1.6.97, 15.0.2.39 미만 구간 | Progress 관리형 환경 패치 상태 확인 |
초기 권고에서 언급된 최초 수정 버전만 충족했다고 끝내면 안 된다. 2023년 6월 이후 MOVEit 관련 SQL Injection 취약점과 보안 업데이트가 연속으로 공개됐으므로, 실무 기준은 현재 Progress가 제공하는 최신 유지보수 릴리스까지 올리는 것이다.
우선순위는 인터넷 직접 노출 서버, 외부 사용자 접근 가능 서버, 외부 저장소 연동 서버, 개인정보·계약서·급여·의료·금융 자료 처리 서버, 2023년 5월 27일 전후부터 패치 전까지 로그가 보존된 서버 순으로 잡는다. 로그가 남아 있는 자산은 단순 패치 대상이 아니라 침해 조사 대상이다.
공격 방식
공격자는 먼저 인터넷에 노출된 MOVEit Transfer 인스턴스를 찾고, 웹 애플리케이션의 취약한 요청 처리 경로에 SQL Injection 페이로드를 보낸다. 인증이 없어도 데이터베이스 구조와 내용을 조회하거나 조작할 수 있기 때문에, 공격자는 계정과 파일 메타데이터를 파악한 뒤 파일 탈취로 이동할 수 있다.
실제 캠페인에서는 guestaccess.aspx 관련 요청 이후 human2.aspx, _human2.aspx처럼 정상 구성요소로 보이는 ASP.NET 웹셸이 배치된 사례가 보고됐다. 이 웹셸은 LEMURLOOT으로 불렸고, X-siLock-Comment, X-siLock-Step1, X-siLock-Step2, X-siLock-Step3 같은 HTTP 헤더를 통해 명령을 받았다. 공격자는 이를 이용해 파일 목록, 파일 본문, 시스템 설정, Azure Blob Storage 계정과 키를 추출했다.
그다음 단계는 MOVEit에 업로드된 파일을 직접 다운로드하거나, 노출된 클라우드 저장소 자격 증명으로 추가 파일에 접근하는 방식이다. 이후에는 유출 사이트를 통한 협박, 고객·협력사 통지 압박, 2차 피싱과 BEC 등으로 비즈니스 영향이 확산될 수 있다.
중요한 점은 이 공격이 반드시 서버 암호화나 서비스 중단으로 드러나지 않는다는 것이다. 서버가 멀쩡히 운영돼도 파일이 이미 빠져나갔을 수 있다. 따라서 정상 동작 여부보다 웹셸, 비정상 계정, 다운로드 패턴, 저장소 키 사용 기록을 중심으로 확인해야 한다.
탐지 포인트
첫 번째는 자산과 버전 확인이다. CMDB, 취약점 스캐너, 인증서 인벤토리, WAF·로드밸런서 설정, DNS 레코드에서 MOVEit Transfer와 MOVEit Cloud 사용 여부를 대조한다. 제품 버전, 빌드, 설치 경로, 패치 적용일, 재시작 일시를 기록하고, 외부 노출 여부는 방화벽 NAT, 로드밸런서 VIP, WAF 정책, 외부 ASM 도구 기준으로 재확인한다.
두 번째는 웹 로그다. 최소 점검 기간은 2023년 5월 27일부터 패치 또는 격리 완료 시점까지로 잡는다. IIS, WAF, 프록시, 로드밸런서, SIEM 백업 로그를 모두 확인해야 한다. 우선 봐야 할 항목은 /moveitisapi/, /human.aspx, /human2.aspx, /_human2.aspx, /guestaccess.aspx 접근, 비정상 POST 요청, 짧은 시간의 반복 요청, 정상 사용자 행위와 맞지 않는 대량 다운로드다.
HTTP 헤더에서는 X-siLock-Comment, X-siLock-Step1, X-siLock-Step2, X-siLock-Step3를 찾는다. 404 응답이 반복되더라도 같은 출발지에서 이후 파일 다운로드나 웹셸 상호작용이 이어졌다면 공격 정찰 또는 실패한 시도일 수 있다. 공개 보고서에 나온 5.252.188.0/22 같은 스캐닝 대역도 참고할 수 있지만, 오래된 IOC만으로 판단하지 말고 행위 기반 탐지를 병행해야 한다.
예시 탐지 로직은 다음과 같이 잡을 수 있다.
where uri contains "human2.aspx"
or uri contains "_human2.aspx"
or uri contains "guestaccess.aspx"
or request_header_names has_any ("X-siLock-Comment", "X-siLock-Step1", "X-siLock-Step2", "X-siLock-Step3")
세 번째는 파일시스템이다. MOVEit Transfer 설치 디렉터리와 IIS 웹 루트에서 human2.aspx, _human2.aspx 같은 비정상 ASPX 파일을 찾는다. 정상 파일과 이름은 비슷하지만 생성일, 수정일, 해시가 다른 파일도 확인한다. 패치 전후에 생성된 작은 ASP.NET 스크립트, 컴파일된 DLL, 임시 디렉터리의 비정상 아티팩트, w3wp.exe가 생성한 파일도 점검 대상이다.
웹셸 탐지는 파일명만으로 끝내면 안 된다. X-siLock-*, Health Check Service, attachment;filename, AzureBlobStorageAccount, AzureBlobKey 같은 문자열을 포함하는 파일과 메모리 아티팩트를 함께 찾아야 한다.
네 번째는 데이터베이스와 계정이다. MOVEit DB에서 비정상 사용자 생성·삭제 흔적, Health Check Service라는 LoginName 또는 RealName을 가진 계정, 갑작스럽게 생성된 고권한 계정, 세션 삽입 흔적, 파일·폴더·기관 정보 테이블의 대량 조회를 확인한다. 관리자 계정, API 계정, 서비스 계정의 비정상 로그인 시간대와 출발지도 함께 봐야 한다.
다섯 번째는 파일 탈취 정황이다. 외부 IP별 다운로드 파일 수, 총 바이트, 다운로드 시간대, 평소 대비 대량 다운로드, 특정 기관·폴더·사용자 소유 파일의 집중 조회, 파일 목록 조회 직후 다운로드가 이어지는 흐름을 별도 타임라인으로 만든다. Azure Blob Storage 등 외부 저장소에서는 MOVEit 서버가 아닌 출발지의 접근, 액세스 키 사용 기록, SAS 토큰 발급, 비정상 컨테이너 열람 여부를 확인한다.
마지막으로 네트워크와 EDR을 본다. w3wp.exe의 외부 통신, DNS 질의, 비정상 프로세스 실행, MOVEit 서버에서 외부 RDP·VPS·익명 프록시·토르 출구 노드로 나간 연결, PowerShell·cmd·certutil·bitsadmin 실행, 백업·스냅샷·로그 삭제 시도를 확인한다.
패치와 완화
취약 버전이거나 버전을 확인할 수 없는 MOVEit Transfer는 인터넷 접근을 즉시 차단한다. 방화벽, WAF, 로드밸런서에서 HTTP/HTTPS 외부 접근을 허용 IP 기반으로 제한하고, 운영상 가능하면 패치 전까지 MOVEit Transfer 서비스를 중지한다. 패치는 Progress 공식 경로에서만 내려받아 적용해야 하며, 임의 미러나 제3자 제공 파일을 사용하면 안 된다.
패치 전에는 시스템 이미지, 웹 루트, DB, 로그를 보존한다. 침해 가능성이 있는 상태에서 증거 보존 없이 재설치부터 진행하면 유출 범위 산정이 어려워진다. 현재 설치 버전별 벤더 권고에 맞는 최신 릴리스로 업그레이드하고, 패치 후에는 서비스 재시작, 버전 확인, 웹 루트 무결성 확인, 외부 노출 재점검을 수행한다.
웹셸이나 탈취 흔적이 확인되면 “취약점 조치 완료”가 아니라 “침해 사고 대응”으로 전환해야 한다. MOVEit 서버를 네트워크에서 격리하되 디스크, 메모리, 로그 증거를 보존한다. IIS 로그, DB 감사 로그, Windows 이벤트 로그, EDR 타임라인, 클라우드 저장소 로그를 수집하고, MOVEit 애플리케이션 계정, 관리자 계정, API 키, DB 계정, 클라우드 저장소 키를 교체한다.
중장기적으로는 MOVEit Transfer를 인터넷에 직접 노출하지 않고 WAF, VPN, ZTNA, 허용 IP 기반 접근제어 뒤에 둔다. MFT 서버는 일반 업무망과 분리하고, DB·스토리지 접근 권한을 최소화한다. IIS 웹 루트 파일 무결성 모니터링, 비정상 ASPX 생성 경보, 대량 다운로드 탐지, 신규 고권한 계정 탐지, 클라우드 저장소 키 조회 탐지를 상시 룰로 운영한다.
실무 체크리스트
24시간 이내
- MOVEit 자산 목록, 버전, 외부 노출 여부를 확인한다.
- 취약하거나 버전 확인이 어려운 인스턴스의 외부 접근을 차단한다.
- Progress 최신 패치 적용 계획과 긴급 변경 승인을 확보한다.
- 2023년 5월 27일 이후 로그 보존 여부를 확인한다.
human2.aspx,_human2.aspx,X-siLock-*,Health Check Service를 1차 헌팅한다.
72시간 이내
- 최신 보안 패치를 적용하고 버전을 검증한다.
- IIS, WAF, DB, EDR, 클라우드 저장소 로그를 통합 타임라인으로 정리한다.
- 비정상 파일, 계정, 세션, 다운로드 이벤트를 확인한다.
- MOVEit 관리자 계정, 서비스 계정, API 키, DB 계정, 저장소 키를 회전한다.
- 유출 의심 파일 목록과 데이터 민감도를 분류한다.
1주 이내
- 외부 노출 구조를 WAF, VPN/ZTNA, 허용 IP, 관리망 분리 기준으로 재설계한다.
- MFT 서버 파일 무결성 모니터링과 웹셸 탐지 룰을 상시화한다.
- 대량 다운로드, 비정상 헤더, 신규 고권한 계정 탐지 룰을 운영한다.
- KEV 등록 취약점 긴급 패치 프로세스에 MFT 제품군을 포함한다.
- 사고 통지, 고객 커뮤니케이션, 법적 보존 요구사항을 법무·개인정보보호 담당과 검토한다.
결론
CVE-2023-34362 대응은 패치 확인에서 끝나지 않는다. 먼저 최신 패치를 적용해 추가 악용 가능성을 막고, 취약하거나 상태가 불명확한 MOVEit Transfer는 즉시 격리해야 한다. 그다음 취약 기간의 웹 로그, DB 로그, EDR, 클라우드 저장소 로그를 조사해 웹셸과 파일 탈취 정황을 확인한다.
침해 가능성이 조금이라도 보이면 관리자 계정, 서비스 계정, API 키, DB 계정, 저장소 키를 회전해야 한다. 마지막으로 다운로드 기록과 저장소 접근 기록을 기준으로 유출 범위를 산정하고, 영향을 받은 고객·협력사·규제기관 통지 필요성을 판단한다. 운영 메시지는 명확하다. 패치하고, 격리하고, 로그를 조사하고, 자격 증명을 회전하고, 유출 범위를 끝까지 산정해야 한다.
참고자료
- Progress Community: MOVEit Transfer Critical Vulnerability, CVE-2023-34362
- NVD: CVE-2023-34362
- CISA: #StopRansomware: CL0P Ransomware Gang Exploits CVE-2023-34362 MOVEit Vulnerability
- Google Cloud Mandiant: Zero-Day Vulnerability in MOVEit Transfer Exploited for Data Theft
본 콘텐츠는 AI 기술로 생성된 분석 리포트를 포함하고 있습니다. 내용 중 사실과 다르거나 보완이 필요한 정보를 발견하시면 댓글을 통해 소중한 의견 부탁드립니다. 여러분의 피드백은 더 정확한 보안 정보 공유에 큰 도움이 됩니다.
댓글 (0)
댓글을 작성하려면 로그인이 필요합니다.
로그인아직 댓글이 없습니다.
첫 번째 댓글을 작성해보세요!