[단독공격] 분석 — CVE-2019-0604
CVE-2019-0604 enables remote code execution on any vulnerable SharePoint server via a malicious application package and must be patched immediately.
📋 요약
- 심각도 critical · CVSS 9.8 · EPSS 0.99825 · 악용난이도 easy · KEV
🔍 공격 기법
- 트리거 조건: 인증 없이 HTTP POST로
.wsp(SharePoint Solution Package) 파일을 업로드·배포하는 엔드포인트(/_catalogs/solutions/,/_layouts/15/uploadsolution.aspx등)에 악의적인 마크업이 포함된 경우, 서버는 해당 마크업을 검증하지 않고 실행한다. - 정찰: 공격자는 공개된 SharePoint 사이트에서
/sites/<site>/구조와 솔루션 갤러리 존재 여부를 확인하고,/_vti_bin/client.svc/ProcessQuery등을 통해 파일 업로드 권한이 제한 없는지 탐색한다. - 초기 접근: 네트워크 차단이 없고 UI가 인증 없이 열려 있다면(예: 익명 사용자가 솔루션 갤러리에 접근 가능) 바로
.wsp를 전송한다. 이 단계는 CVSS 벡터AV:N/AC:L/PR:N/UI:N와 직접 대응된다. - 실행·권한 획득: 패키지 내부에
<Assembly>태그가 원격 URL을 가리키면, SharePoint은 해당 어셈블리를 로드하고 서버 프로세스(w3wp.exe) 내에서 임의 코드를 실행한다. 이때 공격자는 SYSTEM 권한 수준으로 쉘을 획득한다. - 지속: 악성 어셈블리를 영구 솔루션으로 등록하거나, 웹 파트로 배포해 재부팅 후에도 자동 실행되게 만든다.
- 영향: 전체 SharePoint 팜에 대한 원격 코드 실행이 가능하므로 데이터 탈취·랜섬웨어·내부망 이동이 즉시 이루어진다.
악용 가능성: 이 취약점은 네트워크를 통해 직접 접근할 수 있는 SharePoint 웹 서비스(예: /_vti_bin/… 엔드포인트)에서 악성 애플리케이션 패키지를 업로드하면 발생합니다. CVSS 벡터 AV:N·AC:L·PR:N·UI:N는 공격자가 별도의 권한이나 사용자 동작 없이 네트워크만 연결되면 충분히 이용 가능함을 의미하며, 실제로는 HTTP POST 요청에 포함된 마크업 소스만 조작하면 원격 코드 실행이 트리거됩니다. EPSS 0.99825라는 높은 실측값은 현재 전 세계적으로 이 취약점이 활발히 악용되고 있음을 수치적으로 입증하고, KEV 리스트 등재는 이미 실제 공격 사례가 보고된 사실을 확인시켜 줍니다. 따라서 공격 난이도는 “easy” 수준으로 평가되며, 초기 정찰 단계에서 SharePoint 사이트 URL만 알면 바로 시도할 수 있습니다. 노출되는 주요 파라미터는 패키지 파일 자체와 해당 파일에 포함된 마크업 경로이며, 이들만 조작하면 서버 측 검증을 우회해 임의 코드를 실행할 수 있습니다. 결과적으로 네트워크 접근 권한만 있으면 별도의 사전 준비 없이도 원격 코드 실행이 가능하므로, 방어자는 해당 엔드포인트와 업로드 로직을 가장 먼저 점검해야 합니다.
💥 영향 분석
- 서버 측에서 임의 명령어가 실행되어 SYSTEM 권한을 획득함.
- 모든 SharePoint 사이트 컬렉션, 문서 라이브러리, 사용자 프로필 등에 무제한 접근 가능.
- 악성 코드를 통해 내부 네트워크로 피벗하거나 데이터베이스(
SQL Server)에 직접 연결해 민감 정보를 탈취할 수 있음.
🔗 관련 취약점·체이닝
- 패키지 검증 부재(CWE‑20: 입력 검증 오류) → 악성 어셈블리 로드 → RCE.
- 동일 SharePoint 환경에 존재하는 XML 외부 엔티티(XXE) 취약점이나 디렉터리 탐색 결함과 연계하면, 초기 파일 업로드 없이도 원격 URL을 통한 코드 다운로드가 가능해진다(
추정:). - 공격자는 CVE-2019-0594와 같은 다른 SharePoint RCE 취약점을 활용해 권한 상승 후 이 패키지를 배포하는 방식으로 체인을 구성할 수 있다(공식 문서에 명시된 연관성은 없음하지만, 동일 공격 표면을 공유함).
🔎 탐지
- 웹 서버 로그에서
.wsp파일 업로드 시도(POST /_catalogs/solutions/... .wsp)와 비정상적인Content-Type: application/octet-stream헤더가 기록되는 경우. - SharePoint 이벤트 로그에 “Solution deployment failed” 혹은 “Assembly load error” 메시지가 반복적으로 나타나는지 모니터링.
- 프로세스 감시에서
w3wp.exe가 비정상적인 경로(C:\Windows\Temp\, 사용자 지정 폴더)에서 DLL/EXE를 로드하는 이벤트(ETW, Sysmon) 탐지.
🛡️ 완화 방안
- 즉시: Microsoft가 제공한 최신 누적 업데이트(CU)·보안 패치를 적용하여 CVE-2019-0604를 차단한다.
- 솔루션 갤러리 접근을 인증된 관리자에게만 제한하고, 익명 업로드 기능을 비활성화한다.
- SharePoint 관리 센터에서 “Allow custom script” 옵션을 끄고, 신뢰할 수 없는
.wsp파일의 배포를 금지한다. - 애플리케이션 레벨 방화벽(WAF)으로
.wsp업로드 요청에 대한 검증 규칙을 추가하고, 의심스러운 외부 URL 참조를 차단한다.
⚖️ 위험도 / 우선순위
- 조치: immediate (지금 즉시(24h 내))
- 근거: CVSS=9.8 · KEV · EPSS=0.99825 · exploit=easy · in_scope=None