[방어] 분석 — CVE-2023-29357
Critical RCE vulnerability in Microsoft SharePoint Server via deserialization at
/_vti_bin/client.svc, requiring immediate WAF filtering of malicious SOAP payloads and urgent patching due to active exploitation (KEV).
📋 요약
- 심각도 critical · CVSS 9.8 · EPSS 0.99649 · 악용난이도 easy · KEV
🔍 공격 기법
본 취약점은 인증된 사용자가 /_vti_bin/client.svc 엔드포인트로 조작된 SOAP XML 요청을 전송하여 발생하는 역직렬화(Deserialization) 취약점입니다.
- 경로: HTTP POST $\rightarrow$
/_vti_bin/client.svc$\rightarrow$ 조작된 XML 페이로드 전송. - 원리: XML 내 특정
TypeName파라미터나 객체 정의를 통해 서버 측에서 안전하지 않은 역직렬화를 수행하게 하여 임의 코드를 실행(RCE)합니다. - 단계: 인증 획득 $\rightarrow$ 조작된 SOAP 요청 전송 $\rightarrow$ 원격 코드 실행 및 권한 상승.
악용 가능성: 본 취약점의 공격 난이도는 매우 낮으며, 실질적인 악용 가능성은 극히 높습니다. CVSS 벡터(AV:N/AC:L/PR:N/UI:N)가 보여주듯 네트워크를 통해 원격에서 인증이나 사용자 상호작용 없이도 즉시 트리거될 수 있는 구조입니다. 특히 EPSS 점수가 0.99649로 매우 높고 KEV(Known Exploited Vulnerabilities)에 이미 등재되었다는 점은, 이론적 위험을 넘어 실제 공격 그룹들이 공격 도구를 보유하고 적극적으로 스캔 및 침투를 시도하고 있음을 의미합니다. 주요 공격 표면은 외부로 노출된 SharePoint Server의 HTTP/HTTPS 엔드포인트이며, 특정 API 파라미터나 요청 헤더를 통해 권한 상승(EoP)을 유발하는 페이로드를 전달하는 방식입니다. 결과적으로 낮은 진입 장벽과 검증된 익스플로잇의 존재로 인해, 패치되지 않은 서버는 즉각적인 타깃이 될 가능성이 매우 큽니다.
💥 영향 분석
- 권한 상승 및 완전 장악: CVSS 9.8 및 Critical 등급에 따라, 공격자는 SharePoint 서버의 서비스 계정 권한으로 임의 명령을 실행할 수 있습니다.
- 데이터 유출 및 파괴: 서버 내 저장된 모든 문서, 사용자 정보, 설정 파일에 대한 완전한 접근 권한(C:H/I:H/A:H)을 갖게 됩니다.
🔗 관련 취약점·체이닝
- 인증 체이닝: 본 취약점은 '인증된 사용자'를 전제로 하므로, 다른 계정 탈취 취약점이나 기본 설정 오류(Default Password 등)와 결합하여 외부 공격자가 진입하는 경로로 활용될 수 있습니다.
🔎 탐지
다중 소스 교차검증을 통해 /_vti_bin/client.svc 엔드포인트가 핵심 공격 지점임이 확인되었습니다. 토큰 생성 로그보다는 유입 트래픽의 페이로드 분석이 훨씬 효율적입니다.
1. 주요 탐지 지표
- 로그 위치: WAF 로그, IIS Access Log, HTTP Request Body.
- 핵심 필드:
uri_path,http_method,request_body. - 패턴:
/ _vti_bin/client.svc경로로 유입되는 POST 요청 중, 일반적인 SOAP 규격에서 벗어난 비정형 XML 및 특정 역직렬화 관련 클래스/타입 이름(TypeName) 포함 여부.
2. 탐지 규칙 예시 (SIEM 의사코드)
- Rule 1: 비정상 SOAP 페이로드 탐지 (WAF/IDS)
SELECT * FROM http_logs WHERE uri_path LIKE '%/_vti_bin/client.svc%' AND method == 'POST' AND request_body REGEXP '(<.*TypeName.*>|.*ObjectDataProvider.*)' - Rule 2: 비정상적인 요청 빈도 및 크기 (Anomaly)
SELECT source_ip FROM http_logs WHERE uri_path == '/_vti_bin/client.svc' GROUP BY source_ip HAVING count(*) > [Threshold] OR avg(request_size) > [Normal_Size]
3. 오탐 튜닝 및 대응
- 오탐 시나리오: SharePoint의 정상적인 API 호출이나 서드파티 통합 솔루션이
client.svc를 사용하는 경우. - 튜닝 방법: 정상적인 클라이언트 IP 리스트(Allowlist)를 정의하고, 정규식에서 실제 사용 중인 정상 TypeName 패턴을 제외 처리하여 False Positive를 줄입니다.
🛡️ 완화 방안
본 건은 KEV(Known Exploited Vulnerabilities)에 등재되었으며, EPSS 수치가 0.99649로 실측 악용 예측이 최고 수준입니다. 따라서 규칙 기반 우선순위에 따라 'Immediate' 대응이 필요합니다.
1. 즉시 (긴급 차단)
- 조치: WAF 또는 IPS에서
/_vti_bin/client.svc경로로 들어오는 요청 중 XML 페이로드 내 의심스러운 키워드(TypeName등)를 포함한 패킷을 즉시 Drop 처리합니다. - 난이도: 낮음 / 운영 영향: 보통(정상 API 호출 차단 가능성 있음) / 검증: 공격 페이로드 시뮬레이션 후 403/406 응답 확인.
2. 단기 (위험 완화)
- 조치: SharePoint 애플리케이션 풀(App Pool) 계정의 권한을 최소 권한 원칙에 따라 제한하여, RCE 성공 시에도 OS 전체로의 권한 상승 및 횡적 이동을 어렵게 만듭니다.
- 난이도: 보통 / 운영 영향: 높음(서비스 기능 일부 제약 가능성) / 검증: 계정 권한 확인(
whoami등).
3. 근본 (해결)
- 조치: Microsoft에서 제공하는 최신 보안 업데이트 패치를 적용합니다.
- 난이도: 보통 / 운영 영향: 낮음(재시작 필요) / 검증: 설치된 KB 버전 확인 및 취약점 스캐너 재검사.
잔여 리스크: 패치 후에도 이미 침투한 공격자가 생성한 웹셸(WebShell)이나 백도어가 남아있을 수 있으므로, 패치 전후로 서버 내 파일 무결성 검사와 비정상 프로세스 조사를 반드시 수행해야 합니다.
⚖️ 위험도 / 우선순위
- 조치: immediate (지금 즉시(24h 내))
- 근거: CVSS=9.8 · KEV · EPSS=0.99649 · exploit=easy · in_scope=None