[IT 알아보기]/보안 이슈

[보안 이슈] MS Exchange Server 취약점 임시 조치 방안 권고

이호스트ICT 2021. 3. 11. 11:19

□ 개요
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




[참고사이트]
- https://www.microsoft.com/security/blog/2021/03/02/hafnium-targeting-exchange-servers/
- https://msrc-blog.microsoft.com/2021/03/05/microsoft-exchange-server-vulnerabilities-mitigations-march-2021/

 


□ 작성 : 침해사고분석단 취약점분석팀