[방어] 분석 — CVE-2019-0604
Critical RCE in Microsoft SharePoint due to insecure deserialization of application packages requires immediate blocking of unauthenticated WSP uploads and deep inspection of existing package integrity.
📋 요약
- 심각도 critical · CVSS 9.8 · EPSS 0.99825 · 악용난이도 easy · KEV
🔍 공격 기법
- 진입 경로: 공격자는 인증되지 않은 상태에서 특수하게 조작된
.wsp(SharePoint Solution Package) 파일을 업로드하거나, 이미 배치된 패키지를 통해 취약점을 트리거합니다. - 취약점 원리: SharePoint가 애플리케이션 패키지의 소스 마크업을 검증하지 않고 처리하는 과정에서 발생합니다. 추정:
BinaryFormatter와 같은 역직렬화(Deserialization) 메커니즘을 통해System.Web.UI.Page객체나 임의의 .NET 객체를 조작하여 메모리 상에 로드합니다. - 실행 단계: 조작된 객체가 서버에서 역직렬화되는 순간, 공격자가 의도한 임의 코드가 시스템 권한으로 실행되어 RCE(Remote Code Execution)로 이어집니다.
악용 가능성: 본 취약점은 AV:N/AC:L/PR:N/UI:N 벡터가 나타내듯, 인증되지 않은 원격 공격자가 네트워크를 통해 특별한 사용자 상호작용 없이도 공격을 수행할 수 있어 진입 장벽이 매우 낮습니다. 공격 표면은 Microsoft SharePoint의 애플리케이션 패키지 소스 마크업 검증 로직에 있으며, 조작된 패키지를 업로드하거나 처리하게 만드는 엔드포인트가 주요 타겟이 됩니다. 특히 EPSS 점수가 0.99825로 극도로 높고 KEV(Known Exploited Vulnerabilities) 목록에 등재되었다는 점은, 이론적 위험을 넘어 이미 야생에서 공격 코드가 유통되고 실제 침해 사고가 빈번하게 발생하고 있음을 입증합니다. 트리거 조건이 단순한 마크업 검증 미비에 기인하므로, 공격자는 복잡한 페이로드 설계 없이도 RCE(Remote Code Execution)를 달성할 가능성이 큽니다. 따라서 방어자 관점에서 본 취약점의 악용 가능성은 최상위 수준이며, 외부로 노출된 SharePoint 서버는 즉각적인 타겟이 될 확률이 매우 높습니다.
💥 영향 분석
- 권한 탈취: SharePoint 서비스 계정 권한으로 쉘을 획득하여 서버 전체 제어권을 장악할 수 있습니다.
- 데이터 유출 및 파괴: 내부 문서 라이브러리, 사용자 정보, 설정 파일 등에 대한 무제한 접근 및 수정이 가능합니다.
- 측면 이동(Lateral Movement): 점령한 SharePoint 서버를 거점으로 내부망의 다른 자산으로 공격을 확장할 수 있습니다.
🔗 관련 취약점·체이닝
- 역직렬화 체이닝:
ysoserial.net과 같은 도구를 이용해 가용한 .NET 가젯(Gadget) 체인을 구성하여 페이로드를 생성하는 패턴과 연계됩니다. - 권한 상승: 초기 진입 후 로컬 권한 상승 취약점을 체이닝하여 SYSTEM 권한을 획득할 가능성이 높습니다.
🔎 탐지
본 취약점은 EPSS 0.99825로 실제 악용 예측치가 최고 수준이며, KEV(Known Exploited Vulnerabilities)에 등재된 실측 기반 위험입니다. 단순 로그 모니터링보다 파일 시스템과 네트워크 패턴의 복합 탐지가 필수적입니다.
1. 주요 탐지 지표 및 로그 위치
- IIS Logs:
/_layouts/15/경로로의 비정상적인 POST 요청, 특히.wsp확장자나 직렬화된 데이터가 포함된 요청 확인. - ULS(Unified Logging Service) Logs: 역직렬화 오류, 예상치 못한 타입 캐스팅 예외, 또는 패키지 설치 과정에서의 비정상적 스택 트레이스.
- 파일 시스템:
C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\TEMPLATE\LAYOUTS등 주요 경로에 생성된 생소한.wsp파일이나 웹쉘(.aspx).
2. 탐지 규칙 예시 (SIEM 의사코드)
- Rule 1: 비정상 WSP 업로드 시도 (Network/IIS)
SELECT source_ip, request_url FROM iis_logs WHERE (request_url LIKE '%/_layouts/15/%' AND request_method == 'POST') AND (http_request_body CONTAINS '.wsp' OR http_request_body CONTAINS 'BinaryFormatter') - Rule 2: 웹쉘 생성 및 실행 (EDR/File)
SELECT file_path, process_name FROM file_events WHERE (file_extension == '.aspx' OR file_extension == '.wsp') AND (parent_process == 'w3wp.exe') AND (file_path CONTAINS '/_layouts/15/') - Rule 3: 비정상 프로세스 생성 (EDR)
SELECT process_tree FROM process_events WHERE parent_process == 'w3wp.exe' AND child_process IN ('cmd.exe', 'powershell.exe', 'net.exe')
3. 오탐 튜닝 및 한계
- 오탐: 정기적인 SharePoint 솔루션 업데이트나 관리자의 정상적인 패키지 배포 활동이 탐지될 수 있습니다.
- 튜닝: 관리자 IP 화이트리스트를 적용하고, 변경 관리 시스템(Change Management)의 승인된 작업 시간대와 대조하여 필터링합니다.
🛡️ 완화 방안
다중 소스 교차검증 결과 신뢰도가 1.0으로 매우 높으며, CVSS 9.8 및 EPSS 수치를 근거로 'Immediate' 우선순위 대응이 필요합니다.
1. 즉시(긴급 차단) - 오늘 당장 적용할 조치
- 조치: WAF(Web Application Firewall)에서
/_layouts/15/경로로의.wsp파일 업로드 및 직렬화 페이로드 패턴(BinaryFormatter관련 시그니처)을 즉시 차단합니다. - 난이도: 낮음 / 운영 영향: 낮음 (정상적인 패키지 업데이트 일시 중단 가능성) / 검증: 외부망에서 더미
.wsp요청 전송 후 403/406 응답 확인.
2. 단기(완화) - 패치 전 리스크 감소
- 파일 시스템 전수 조사: 서버 내
/_layouts/15/및 관련 경로에 배치된 모든.wsp파일의 해시값을 추출하여 알려진 악성 샘플과 대조하고, 비정상적인 생성 일자의 파일을 격리합니다. - 인증 강화: SharePoint 관리자 계정에 대해 MFA(Multi-Factor Authentication)를 강제 적용하여 탈취된 계정을 통한 공격 경로를 차단합니다.
- 난이도: 중간 / 운영 영향: 중간 (전수 조사 시 I/O 부하 발생 가능) / 검증: 파일 무결성 검사 리포트 생성.
3. 근본(해결) - 완전 제거
- 조치: Microsoft에서 제공하는 최신 보안 업데이트를 적용하여 소스 마크업 검증 로직을 수정합니다.
- 절차: 테스트 환경에서 패치 적용 $\rightarrow$ 비즈니스 기능 영향도 평가 $\rightarrow$ 롤백 계획 수립 $\rightarrow$ 운영 환경 순차 배포.
- 난이도: 중간 / 운영 영향: 높음 (서비스 재시작 및 가용성 일시 중단) / 검증: 패치 후 버전 확인 및 취약점 스캐너를 통한 재검증.
잔여 리스크: 패치 후에도 이미 침투하여 백도어를 설치했거나, 다른 경로로 업로드된 악성 객체가 메모리에 상주하고 있을 수 있으므로 반드시 '단기 완화'의 파일 전수 조사가 병행되어야 합니다.
⚖️ 위험도 / 우선순위
- 조치: immediate (지금 즉시(24h 내))
- 근거: CVSS=9.8 · KEV · EPSS=0.99825 · exploit=easy · in_scope=None