av Bhabesh Raj Rai, Security Research

Den 27 maj 2022 belyste en säkerhetsforskare ett ett skadligt dokument som skickats till VirusTotal från Belarus. Dokumentet använde fjärrmallsfunktionen i Microsoft Office för att ladda ner en HTML-fil på distans och sedan läsa in den, vilket exekverade en PowerShell-nyttolast via Microsoft Support Diagnostic Tool (MSDT). Angripare som framgångsrikt utnyttjar sårbarheten kan exekvera godtycklig kod med behörigheterna från den anropande applikationen. Microsoft var redan informerad om användningen av sårbarheten i april, men ansåg att sårbarheten inte var ett säkerhetsproblem.

Analys av det skadliga dokumentet avslöjade en ”zero-day”-sårbarhet med smeknamnet Follina i Windows MSDT URL-protokollet. Office-program kan virtuellt exekvera PowerShell-kod via proxy via URL-schemat ms-msdt. Ett URL-schema är en specifikation som länkar URL:er till specifika applikationer. En användare som klickar på ett URL-schema (t.ex. slack://) öppnar till exempel motsvarande program (Slack).

Tre dagar senare publicerade Microsoft sårbarheten CVE-2022-30190, med CVSS-poäng på 7,8 av 10 och publicerade motsvarande rekommenderade åtgärder. Sårbarheten liknar en annan RCE zero-day-sårbarhet (CVE-2021-40444) i Microsoft MSHTML. Säkerhetsforskare har funnit att sårbarheten har utnyttjats aktivt sedan april.

Administratörer bör observera att denna sårbarhet inte är beroende av makron, vilket innebär att dess utnyttjande inte beror på om makron är inaktiverade eller inte.

Sårbarheten anses vara mycket farlig eftersom en angripare helt enkelt kan använda ett RTF-dokument för att kringgå Protected View och Application Guard för Office eftersom Windows automatiskt öppnar RTF-filen via förhandsgranskningsfunktionen i Explorer.

Flera fungerande PoC:er finns tillgängliga publikt. Säkerhetsforskare har funnit att RTF-versioner fungerar även på den senaste versionen av Office 365. I ett fall använde angriparen Follina för att ladda ner en Cobalt Strike nyttolast.

Snabbfakta om Follina

  • Microsoft har inte släppt någon patch för att åtgärda zero-day-sårbarheten
  • Microsoft Support Diagnostic Tool (MSDT) finns på varje standardinstallation av Windows
  • Bristen ligger i MSDT och det finns andra metoderför att utnyttja den än genom Microsoft Office
  • RTF-filer kringgår Protected View och Application Guard för Office
  • En av de bästa förebyggande metoderna är att inaktivera förhandsgranskningsrutan i Windows Explorer (Utforskaren)

Loggkällor som krävs

  • Windows

Identifiering av intrång med Logpoint

Analytiker måste söka efter generering av MSDT-processen från Office-applikationer. För att minska antalet falska larm (om sådana förekommer) kan vi fortsätta att söka efter användningen av schemat ms-msdt enligt nedan.

label="Process" label=Create
parent_process IN ["*\winword.exe", "*\excel.exe", "*\outlook.exe"]
"process"="*\msdt.exe" command IN ["* ms-msdt:/id *", "* ms-msdt:-id *"] command="*IT_RebrowseForFile=*IT_BrowseForFile=*"
| chart count() by host, user, parent_process, "process", command, parent_command

LP - Searching for Follina artifacts in process creation events

Söka efter artefakter från Follina i processkapande händelser

Microsoft Defender har en ASR-regel (Attack Surface Reduction) som hindrar Office-program från att generera underordnade processer. Om administratörer har aktiverat ASR-regeln kan de leta efter utlösare för den specifika ASR-regeln.

norm_id=WinServer label=Attack label=Surface label=Reduce
involved_file="*IT_RebrowseForFile=*IT_BrowseForFile=*"
rule_id IN ["D4F940AB-401B-4EFC-AADC-AD5F3C50688A", "26190899-1602-49e8-8b27-eb1d0a1ce869"]
| process eval("rule=if(rule_id == 'D4F940AB-401B-4EFC-AADC-AD5F3C50688A')
{ return 'Block all Office applications from creating child processes'}")
| process eval("rule=if(rule_id == '26190899-1602-49E8-8B27-EB1D0A1CE869')
{ return 'Block Office communication application from creating child processes'}")
| chart count() by host, user, rule, "process", involved_file, path

Searching for Follina artifacts in Microsoft Defender’s ASR trigger events

Söka efter artefakter från Follina i Microsoft Defenders ASR-utlösande händelser

Microsoft har släppt signaturer för Defender för detektering av Follina. Administratörer måste säkerställa att de vidarebefordrar Defenders händelser (Microsoft-Windows-Windows Defender/Operational) till Logpoint.

norm_id=WinServer label=Threat label=Detect
threat IN "Trojan:Win32/Mesdetty.A", "Trojan:Win32/Mesdetty.B", "Behavior:Win32/MesdettyLaunch.A", "Behavior:Win32/MesdettyLaunch.B", "Behavior:Win32/MesdettyLaunch.C"

MSDT använder sdiagnhost.exe (Scripted Diagnostics Native Host) för att kanalisera exekveringar. Vi råder analytiker att övervaka misstänkta underordnade processer från sdiagnhost.exe. För att minska antalet falska larm kan de behöva lägga till några legitima processer i listan över tillåtna processer.

label="Process" label=Create parent_process="*\sdiagnhost.exe"
"process" IN ["*\cmd.exe", "*\powershell.exe", "*\powershell_ise.exe", "*\wscript.exe", "*\cscript.exe", "*\rundll32.exe", "*\regsvr32.exe"]
| chart count() by host, user, "process", parent_command, command

Searching for suspicious child processes of sdiagnhost.exe

Söka efter misstänkta underordnade processer från sdiagnhost.exe

På nätverkssidan kan analytiker söka efter hämtning av HTML-filer i Office-program genom att söka efter deras användaragent i nätverkshändelser.

device_category IN [Firewall, ProxyServer, IDS] url="*.html"
user_agent="*; ms-office; *" request_method=GET

LP - Searching for Office application’s user-agents in HTTP events

Söka efter Office-applikationers användaragenter i HTTP-händelser

Åtgärder för att förhindra intrång med Follina

Eftersom det inte finns någon patch rekommenderar vi starkt att administratörer undersöker och genomför följande åtgärder för att förhindra att Follina används.

  • Inaktivera MSDT URL-protokollet via registret
  • Inaktivera förhandsgranskning i Windows Explorer (Utforskaren)
  • Konfigurera ASR-regeln för att förhindra att kontorsapplikationer genererar processer
  • Inaktivera Windows felsökningsguider via GPO

MSDT skapar filen PCW.debugreport.xml i katalogerna %LOCALAPPDATA%\Diagnostics och %LOCALAPPDATA%\ElevatedDiagnostics när användaren stänger felsökningsfönstret. Filen innehåller Follina-artefakter som kan hjälpa till vid incidenthantering.

Hittills är Microsoft meddelat någon tidslinje för patchen. Vi har sett att många företag fortfarande använder äldre versioner av Microsoft Office. Nu är det dags för administratörer att kontrollera vilka versioner av Office som används i verksamheten och skapa en patchningsprocess. Även om skyddsfunktionerna i Office – Protected View och Application Guard för Office – inte helt blockerar användningen av Follina, rekommenderar vi att administratörer säkerställer att de är aktiverade och inte helt förlitar sig på dem.

Detecting Follina blog visual

Contact Logpoint

Contact us and learn why
industry-leading companies
choose Logpoint:

Contact Logpoint