<최종 수정일 : 3월18일>
□ 개요
o Microsoft Exchange Server 취약점에 대한 즉각적인 보안 업데이트가 불가능한 상황인 경우 아래의 해결 방안에 따라 임시 조치가
가능하나, 일부 기능이 동작하지 않을 수 있으며 단기간 임시로만 적용하고 완전한 조치를 위해 반드시 보안 업데이트 권고
□ IIS Re-Write Rule 적용(CVE-2021-26855 예방)
o CVE-2021-26855에서 사용되는 https 요청을 필터링, Exchange Server가 업그레이드 된 후에는 제거되므로 보안 패치가 적용이 안된 경우에는 업그레이드 후 재적용 필요
o Powershell 스크립트를 이용해 MSI 파일을 적용(아래 예시 참조)
※ URL Re-Write모듈(https://www.iis.net/downloads/microsoft/url-rewrite)과 BackendCookieMitigation.ps1(https://github.com/microsoft/CSS-Exchange/tree/main/Security) 파일 필요
.\BackendCookieMitigation.ps1 –FullPathToMSI “FullLocalPathToMSI” - WebSiteNames “Default Web Site” -Verbose |
o IIS Re-Write 모듈을 설치하지 않고 IIS Re-Write Rule을 생성하는 경우의 Powershell 명령 예시
.\BackendCookieMitigation.ps1 –WebSiteNames “Default Web Site” -Verbose |
o 변경 사항을 되돌리려는 경우
.\BackendCookieMitigation.ps1 –WebSiteNames “Default Web Site” -RollBackMitigation -Verbose |
o Re-Write Rule 상태 확인
- C:\inetpub\wwwroot\web.config 혹은 Default Web Site의 IIS UI에서 Re-Write Rule 확인
□ UM 서비스 비활성화(CVE-2021-26857 예방)
o Exchange 관리 쉘(shell)을 이용, 아래 명령 실행
Set-ServerComponentState –Component UMCallRouter –Identity “ComputerName” - Requester Maintenance –State Inactive Stop-Service MSExchangeUM Set-Service MSExchangeUM –StartupType Disabled Stop-Service MSExchangeUMCR Set-Service MSExchangeUMCR –StartupType Disabled |
o Exchange 관리 쉘(shell)을 이용, UM 서비스 상태 확인
Get-Service MSExchangeUM Get-Service MSExchangeUMCR Get-ServerComponentState –Identity “ComputerName” -Component UMCallRouter | fl |
□ ECP Application Pool 비활성화(CVE-2021-27065 예방)
o Exchange 관리 쉘(shell)을 이용, 아래 명령 실행
Set-ServerComponentState –Component EcpProxy –Identity “ComputerName” - Requester Maintenance –State Inactive Import-module WebAdministration $AppPoolName = “MSExchangeECPAppPool” $AppPool = Get – Item IIS:\AppPools\$AppPoolName $AppPool.startMode = “OnDemand” $AppPool | Set-Item – Verbose Stop-WebAppPool –Name $AppPoolName |
o ECP Application Pool 상태 확인
- IIS에서 App Pool이 정지되었는지 확인, 아래 명령 실행으로 정지 가능
※ Get-WebAppPoolState –Name “MSExchangeECPAppPool”
- Server Component State EcpProxy가 Inactive 상태인지 확인
※ Get-ServerComponentState –Component EcpProxy –Identity “ComputerName” | fl
- Exchange Server의 https://127.0.0.1/ecp에 접속하여 서비스 중지 확인
□ OAB(Offline Address Books) Application Pool 비활성화(CVE-2021-26858 예방)
o Exchange 관리 쉘(shell)을 이용, 아래 명령 실행
Set-ServerComponentState –Component OabProxy –Identity “ComputerName” - Requester Maintenance –State Inactive Import-module WebAdministration $AppPoolName = “MSExchangeOABAppPool” $AppPool = Get – Item IIS:\AppPools\$AppPoolName $AppPool.startMode = “OnDemand” $AppPool | Set – Item –Verbose Stop-WebAppPool –Name MSExchangeOABAppPool |
o OAB Application Pool 상태 확인
- IIS App Pool이 정지 되었는지 확인, 아래 명령 실행을 확인 가능
※ Get-WebAppPoolState –Name “MSExchangeOABAppPool”
- Server Component State OabProxy가 Inactive 상태인지 확인
※ Get-ServerComponentState –Component OabProxy –Identity “ComputerName” | fl
□ 임시조치 도구(CVE-2021-26855)
- https://msrc-blog.microsoft.com/2021/03/15/one-click-microsoft-exchange-on-premises-mitigation-tool-march-2021/
□ 취약점 정보 및 대응 가이드
- https://msrc-blog.microsoft.com/2021/03/16/guidance-for-responders-investigating-and-remediating-on-premises-exchange-server-vulnerabilities/
□ 패치 및 업데이트 방법
- https://support.microsoft.com/en-us/topic/description-of-the-security-update-for-microsoft-exchange-server-2019-2016-and-2013-march-2-2021-kb5000871-9800a6bb-0a21-4ee7-b9da-fa85b3e1d23b
- https://techcommunity.microsoft.com/t5/exchange-team-blog/march-2021-exchange-server-security-updates-for-older-cumulative/ba-p/2192020
[참고사이트]
[1] https://www.microsoft.com/security/blog/2021/03/02/hafnium-targeting-exchange-servers/
[2] https://msrc-blog.microsoft.com/2021/03/05/microsoft-exchange-server-vulnerabilities-mitigations-march-2021/
□ 작성 : 침해사고분석단 취약점분석팀