Prva objava: 3. 3. 2021
Zadnji popravek: 31. 3. 2021
Povzetek
Microsoft je izdal popravke, s katerimi je zakrpal več 0-day kritičnih ranljivosti Microsoft Exchange strežnikov. Po podatkih Microsofta naj bi se pred izdajo popravkov ranljivosti že izkoriščale v posameznih napadih, po podatkih drugih odzivnih centrov pa naj bi bil obseg izkoriščanja ranljivosti precej večji, kot je bilo prvotno domnevano.
Opis
Izkoriščanje verige ranljivosti, opisane v CVE-2021-26855, CVE-2021-26857, CVE-2021-26858, CVE-2021-27065, napadalcem omogočajo dostop do predalov el. pošte in namestitev škodljive programske opreme na ranljivi MS Exchange strežnik.
Ranljive verzije:
- Exchange Server 2010
- Exchange Server 2013
- Exchange Server 2016
- Exchange Server 2019
Omenjene ranljivosti niso prisotne v Microsoft Exchange Online.
Začetni pogoj za uspešno izrabo verige ranljivosti je dostop do vrat TCP/443 na strežniku. V večini dosedaj znanih primerov so napadalci po izrabi ranljivosti na sistem namestili stranska vrata v obliki ene ali več webshell skript. Običajno gre za enostavne enovrstične skripte, ki izvedejo kodo, ki je podana v obliki HTTP parametra:
Preko takega izvajanja kode lahko napadalci izvajajo različne aktivnosti, med drugim tudi:
- dodajanje in odstranjevanje uporabnikov in exchange administratorjev
- zajem avtentikacijskih podatkov iz delovnega spomina
- povezovanje na oddaljen strežnik z možnostjo nadaljnjega izvajanja ukazov (reverse shell)
- zloraba AD strežnika
Preventivni ukrepi
1. Namestitev popravkov
Administratorje Microsoft Exchange strežnikov pozivamo, da čim prej namestijo popravke proizvajalca. Microsoft je izdal namensko aplikacijo Microsoft Exchange On-Premises Mitigation Tool, ki konfiguracijo strežnika spremeni tako, da ranljivosti CVE-2021-26855 ni mogoče več izkoristiti, hkrati pa odstrani posledice do sedaj znanih napadov izkoriščanja. Aplikacija je namenjena manj izkušenim skrbnikom strežnikov, kasneje pa je vseeno potrebna nadgradnja strežnika.
2. Pregled indikatorjev zlorabe
Ker so se ranljivosti aktivno izkoriščale že pred izdajo popravkov, je potrebno vse Exchange strežnike, ki so imeli odprt dostop do vrat TCP/443, obravnavati kot potencialno zlorabljene. Posledično to pomeni, da je take sisteme potrebno forenzično pregledati za prisotnostjo indikatorjev zlorabe.
Priporočamo uporabo Microsofovega orodja za preverjanje Test-ProxyLogon.ps1, ki poišče znake zlorab v dnevniških datotekah, ali Microsoft Safety Scanner. Prve zaznave izkoriščanja ranljivosti segajo v začetek januarja 2021, zato je pomembno, da so na voljo dnevniške datoteke vsaj za zadnje 3 mesece, še bolje pa vsaj za zadnjih 6 mesecev. Rezultate preverjanja je potrebno ustrezno interpretirati s pomočjo informacij v članku.
Npr. zaznava dogodkov v datoteki z imenom Cve-2021-26855.csv, kot v spodnjem izpisu, lahko kaže na uspešno zlorabo ranljivosti:
"DateTime","RequestId","ClientIpAddress","UrlHost","UrlStem","RoutingHint","UserAgent","AnchorMailbox","HttpStatus" "2021-03-03T04:28:40.185Z","[RequestId]","[ClientIpAddress]","[redacted].si","/ecp/y.js","X-BEResource-Cookie","ExchangeServicesClient/0.0.0.0","ServerInfo~a]@[redacted].si:444/autodiscover/autodiscover.xml?#","200"
V tem primeru je potrebno dodatno preveriti dnevniške datoteke v mapi %PROGRAMFILES%\Microsoft\Exchange Server\V15\Logging v času zaznave, da se ugotovi dostope do webshell skript in morebitne druge aktivnosti napadalcev.
Dodatno je potrebno preveriti odložene WebShell skripte, ki se običajno nahajajo v eni od spodnjih map:
inetpub\wwwroot\aspnet_client\ inetpub\wwwroot\aspnet_client\system_web\ %PROGRAMFILES%\Microsoft\Exchange Server\V15\FrontEnd\HttpProxy\owa\auth\ Exchange\FrontEnd\HttpProxy\owa\auth\
Imena skript so lahko naključna (npr. KGyIWEA.aspx, h7rlykkO.aspx ipd.) ali generična (npr. HttpProxy.aspx, shell.aspx, discover.aspx ipd.).
Za pomoč pri iskanju odloženih WebShell skript priporočamo uporabo orodja detect_webshells.ps1, ki so ga izdelali pri latvijskem CERTu.
Ukrepi po zaznani zlorabi
V primeru, da se na strežnikih identificira znake, ki bi lahko kazali na zlorabo, pošljite prijavo na SI-CERT. Prijavi priložite izpise skripte Test-ProxyLogon.ps1, zašifriran arhiv odloženih datotek (webshell skript), ter izvleček iz logov o dostopih do teh datotek (iz C:\inetpub\logs\logfiles\).
Priporočeni ukrepi po potrditvi zlorabe:
- restavriranje strežnika na stanje pred zlorabo
- ponastavitev gesel vseh uporabnikov (v primeru dokazane zaznave uporabe WebShell skript)
- opcijsko: zajem delovnega pomnilnika (full memory dump) in izdelava slike sistema (disk image) za namen morebitne forenzične analize
Povezave
https://www.microsoft.com/security/blog/2021/03/02/hafnium-targeting-exchange-servers/
https://us-cert.cisa.gov/ncas/alerts/aa21-062a
https://msrc-blog.microsoft.com/2021/03/02/multiple-security-updates-released-for-exchange-server/
https://github.com/cert-lv/exchange_webshell_detection
https://github.com/microsoft/CSS-Exchange/tree/main/Security