Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2022-30190 | Kitploit
Strumenti/GitHubGitHub/gyaansastra/cve-2022-30190
Gestione degli Indicatori di Compromissione (IOC)Analisi delle VulnerabilitàExploitInformatica ForenseAnalisi MalwareThreat IntelligenceApprendimento e FormazioneRisposta agli Incidenti
GitHubgyaansastra/cve-2022-30190

CVE-2022-30190

Vedi Repository
224 anni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2022-30190

Questo repository tratta di Follina MSDT dalla prospettiva di Defender

Indice

  • Informazioni
  • Cronologia
  • Capire l'exploit
  • Elenco degli IOC
  • Strategia di rilevamento
  • Test e ricerca
  • Piani di mitigazione
  • Riferimenti

Informazioni

Il bug è una vulnerabilità di esecuzione remota di codice nello Strumento di diagnostica supporto Microsoft (MSDT), segnalata da crazyman del Shadow Chaser Group. Microsoft la sta ora monitorando come CVE-2022-30190. Il difetto interessa tutte le versioni di Windows che ricevono ancora aggiornamenti di sicurezza (Windows 7+ e Server 2008+).

Come scoperto dal ricercatore di sicurezza nao_sec, viene sfruttato da attori malintenzionati per eseguire comandi PowerShell dannosi tramite MSDT in quelli che Redmond descrive come attacchi di esecuzione di codice arbitrario (ACE) all'apertura o in anteprima di documenti Word.

"Un utente malintenzionato che sfrutta con successo questa vulnerabilità può eseguire codice arbitrario con i privilegi dell'applicazione chiamante", spiega Microsoft.

Cronologia

  • 12 aprile 2022 — Prima segnalazione a Microsoft MSRC, da parte del leader di Shadowchasing1, un gruppo di caccia alle APT. Questo documento è un exploit reale, "in the wild", mirato alla Russia, camuffato da colloquio di lavoro russo.
  • 21 aprile 2022 — Microsoft MSRC ha chiuso il ticket affermando che non si trattava di un problema di sicurezza (per la cronaca, l'esecuzione di msdt con le macro disabilitate è un problema)
  • Maggio ?? 2022 — Microsoft potrebbe aver provato a risolvere il problema o averlo corretto per caso nel canale Office 365 Insider, senza documentare una CVE o scriverlo da nessuna parte. Gli altri prodotti restano vulnerabili.
  • 27 maggio 2022 — Il vendor di sicurezza Nao twitta un documento caricato dalla Bielorussia, anch'esso un attacco "in the wild".
  • 27 maggio 2022 — Nuova segnalazione a MSRC.
  • 29 maggio 2022 — Andy Ful ha identificato pubblicamente che si tratta di una zero day, poiché funziona ancora contro il canale Office 365 Semi-Annual, e le versioni Office "on prem" e i prodotti EDR non riescono a rilevarla.

Capire l'exploit

  • Puoi fare riferimento al blog di Huntress QUI per comprendere tutti i dettagli del principio di funzionamento di questo exploit.
  • Guarda questo VIDEO per capire l'exploit e la sua correzione.

Elenco degli IOC

  • Oggetto principale - 05-2022-0438.doc
    • sha256 4a24048f81afbe9fb62e7a6a49adbd1faf41f266b5f9feecdceb567aec096784
    • sha1 06727ffda60359236a8029e0b3e8a0fd11c23313
    • md5 52945af1def85b171870b31fa4782e52
  • File eseguibile rilasciato
    • sha256 C:\Users\admin\AppData\Local\Temp\SDIAG_ecb8c0a2-7a1e-4b6c-8ae0-2245f03bcc15\DiagPackage.dll 3218488d62cb0858101d2ec63ec73a032bc9787f5f87cb46abbea4477c97b16f
    • sha256 C:\Users\admin\AppData\Local\Temp\SDIAG_ecb8c0a2-7a1e-4b6c-8ae0-2245f03bcc15\en-US\DiagPackage.dll.mui c6d837ec0850e22c83b400fcded1791a2f4f99f0c56d6fc7d93e92a8b72c098d
    • sha256 C:\Users\admin\AppData\Local\Temp\r5qxr4ie.dll aa967ae9f6d80bdbd0f315defa17aaee0e756e7e2ad0e5261d8254bc0af1cc02
    • sha256 C:\Users\admin\AppData\Local\Temp\t52wyhbe.dll daf716cbe8810085251e6ef1e39869a9e61d929fac12ea5684c3b2caf993666b
    • sha256 C:\Users\admin\AppData\Local\Temp\qtwoghs1.dll f5361b6c9db8ac25433ae21f9a7b6490cc372ce2b1f802e2b06d5b904ce97109
  • Richieste DNS
    • dominio www[.]xmlformats[.]com
  • Connessioni
    • ip 141.105.65.149
    • ip 20.42.65.85
    • ip 13.107.42.16
  • Richieste HTTP/HTTPS
    • url hxxps://www[.]xmlformats[.]com/office/word/2022/wordprocessingDrawing/
    • url hxxps://www[.]xmlformats[.]com/office/word/2022/
    • url hxxps://www[.]xmlformats[.]com/office/word/2022/wordprocessingDrawing/RDF842l[.]html

Strategia di rilevamento

  • Per fare threat hunting puoi trovare la Sigma Rule QUI

  • Di seguito le regole di rilevamento che possono essere ulteriormente ottimizzate. Un ringraziamento a Bala Ganesh. L'articolo completo è disponibile QUI

  • Microsoft Defender:

root@kitploit:~
DeviceProcessEvents | where ((ProcessCommandLine contains "WINWORD.EXE") and (ProcessCommandLine contains "msdt.exe") and (ProcessCommandLine contains "sdiagnhost.exe" or ProcessCommandLine contains "csc.exe" or ProcessCommandLine contains "PCWDiagnostic" or ProcessCommandLine contains "IT_ReBrowserForFile" or ProcessCommandLine contains "IT_BrowserForFile" or ProcessCommandLine contains "conhost.exe"))
  • Splunk:
root@kitploit:~
[Doc Malware]
alert.severity = 2
description = Detection (Rule ID: 74566a6a66aaasdq2ed)
cron_schedule = 0 * * * *
disabled = 1
is_scheduled = 1
is_visible = 1
dispatch.earliest_time = -60m@m
dispatch.latest_time = now
search = (source="WinEventLog:*" AND (CommandLine="*WINWORD.EXE*") AND (CommandLine="*msdt.exe*") AND (CommandLine="*sdiagnhost.exe*" OR CommandLine="*csc.exe*" OR CommandLine="*PCWDiagnostic*" OR CommandLine="*IT_ReBrowserForFile*" OR CommandLine="*IT_BrowserForFile*" OR CommandLine="*conhost.exe*"))
alert.suppress = 0
alert.track = 1
  • Qradar:
root@kitploit:~
SELECT UTF8(payload) from events where LOGSOURCETYPENAME(devicetype)='Microsoft Windows Security Event Log' and ("Process CommandLine" ilike '%WINWORD.EXE%') and ("Process CommandLine" ilike '%msdt.exe%') and ("Process CommandLine" ilike '%sdiagnhost.exe%' or "Process CommandLine" ilike '%csc.exe%' or "Process CommandLine" ilike '%PCWDiagnostic%' or "Process CommandLine" ilike '%IT_ReBrowserForFile%' or "Process CommandLine" ilike '%IT_BrowserForFile%' or "Process CommandLine" ilike '%conhost.exe%')
  • GrayLog
root@kitploit:~
(CommandLine.keyword:*WINWORD.EXE* AND CommandLine.keyword:*msdt.exe* AND CommandLine.keyword:(*sdiagnhost.exe* *csc.exe* *PCWDiagnostic* *IT_ReBrowserForFile* *IT_BrowserForFile* *conhost.exe*))
Sumologic
(_sourceCategory=*windows* AND (CommandLine = "*WINWORD.EXE*") AND (CommandLine = "*msdt.exe*") AND (CommandLine = "*sdiagnhost.exe*" OR CommandLine = "*csc.exe*" OR CommandLine = "*PCWDiagnostic*" OR CommandLine = "*IT_ReBrowserForFile*" OR CommandLine = "*IT_BrowserForFile*" OR CommandLine = "*conhost.exe*"))
  • Elastic KQL:
root@kitploit:~
(process.command_line:*WINWORD.EXE* AND process.command_line:*msdt.exe* AND process.command_line:(*sdiagnhost.exe* OR *csc.exe* OR *PCWDiagnostic* OR *IT_ReBrowserForFile* OR *IT_BrowserForFile* OR *conhost.exe*))

Di seguito è riportata anche la query descritta da Brent Murphy QUI

root@kitploit:~
process where event.type in ("start" , "process_created") and (process.pe.original_file_name : "msdt.exe" or process.name : "msdt.exe") and (process.parent.pe.original_file_name : ("winword.exe", "excel.exe", "outlook.exe", "powerpnt.exe") or process.parent.name : ("winword.exe", "excel.exe", "outlook.exe", "powerpnt.exe"))
  • Puoi cercare questo attacco usando XQL Search in Cortex XDR: scopri di più QUI
root@kitploit:~
# office processes spawning msdt.exe

config case_sensitive = false timeframe = 30d
| dataset = xdr_data
| filter event_type = ENUM.PROCESS and action_process_image_command_line contains "msdt.exe" and actor_process_image_name in ("winword.exe", "powerpnt.exe", "excel.exe", "msaccess.exe","visio.exe","onenote.exe","powershell.exe")
| fields agent_hostname , action_process_image_command_line , action_process_image_path , actor_process_command_line , actor_process_image_path , causality_actor_process_image_path

# msdt.exe execution with suspicious argument

config case_sensitive = false timeframe = 30d
| dataset = xdr_data
| filter event_type = ENUM.PROCESS and action_process_image_command_line contains "msdt.exe" and
action_process_image_command_line contains "it_browseforfile"
| fields agent_hostname , action_process_image_command_line , action_process_image_path , actor_process_command_line , actor_process_image_path , causality_actor_process_image_path
  • Oltre alla caccia basata sul comportamento, sarebbe utile interrogare su larga scala la chiave di registro HKEY_USERS*SID\SOFTWARE\Microsoft\Office\16.0\Common\Internet\Server Cache* e analizzare i risultati! Fai riferimento al post completo QUI
  • Velociraptor ha creato una logica di rilevamento QUI per identificare le chiavi e i valori di registro di Return Office Internet Server Cache al fine di individuare possibili URL C2 provenienti da documenti Office dannosi aperti.
  • Una regola YARA sviluppata da Joe Security può essere trovata QUI
  • La query CrowdStrike può essere eseguita come segue:
root@kitploit:~
index=main (ProcessRollup2 OR SyntheticProcessRollup2 OR ProcessBlocked*) ParentBaseFileName IN ("OUTLOOK.EXE","WINWORD.EXE","EXCEL.EXE") CommandLine="*msdt.exe*"
| table ComputerName ParentBaseFileName CommandLine FileName
  • Il file "PCW.debugreport.xml" dentro %localappdata%\Diagnostics e %localappdata%\ElevatedDiagnostics (per le istanze elevate) viene generato quando lo si esegue e contiene il payload. Controllalo QUI
  • Le attuali iterazioni della proof of concept richiamano msdt.exe da un'applicazione Microsoft Office. Una query di hunting generalizzata per CrowdStrike Falcon può essere trovata qui:
root@kitploit:~
index=main sourcetype=ProcessRollup* event_simpleName=ProcessRollup2
| search ParentBaseFileName IN (winword.exe, excel.exe, powerpnt.exe, outlook.exe) 
| search FileName=msdt.exe
| table _time, aid, ComputerName, UserName, UserSid_readable, ParentBaseFileName, FileName, CommandLine
| lookup local=true aid_master aid OUTPUT AgentVersion, Version, MachineDomain, OU, SiteName
  • Per profilare ulteriormente e creare una baseline dell'uso normale di msdt.exe nel tuo ambiente, puoi usare la seguente query su CrowdStrike Falcon:
root@kitploit:~
index=main sourcetype=ProcessRollup* event_simpleName=ProcessRollup2
| search FileName=msdt.exe
| eval FileName=lower(FileName)
| eval ParentBaseFileName=lower(ParentBaseFileName)
| stats dc(aid) as endpointCount, count(aid) as executionCount by FileName, ParentBaseFileName
| sort -executionCount
  • Elastic Security Team ha aggiornato le regole esistenti per il SIEM e ne ha aggiunta una nuova per msdt.exe come lolbin. Dai un'occhiata alla Regola1 e alla Regola2
  • Se stai usando Microsoft Sentinel, puoi usare quanto segue:
root@kitploit:~
#Detects the exploitation of Follina Microsoft Code Execution vulnerability

SecurityEvent 
| where EventID==4688 
| where ParentProcessName has_any ('winword.exe','excel.exe','outlook.exe') 
| where NewProcessName contains "msdt.exe" or CommandLine contains "msdt.exe"
| project TimeGenerated, NewProcessId, NewProcessName, ParentProcessName, CommandLine, EventID, Activity, Computer

#The below query could return false-positives please verify the output and modify the query according to your environment.

SecurityEvent 
| where EventID==4688 
| where ParentProcessName has_any ('sdiagnhost.exe', 'msdt.exe')
//| where NewProcessName contains "powershell" or NewProcessname contains "cmd.exe"  //optional: you can include this line for directly finding powershell or cmd process spawns
| project TimeGenerated, NewProcessId, NewProcessName, ParentProcessName, CommandLine, EventID, Activity, Computer

Test e ricerca

⚠⚠UTILIZZA QUANTO SEGUE SOLO PER SCOPI DI RICERCA E APPRENDIMENTO

  • Usa i CAMPIONI allegati
  • Sfrutta i fantastici codici e la piattaforma creati da John Hammond QUI
  • La versione weaponizzata di CVE-2021-40444 può essere trovata QUI
  • Sfrutta questo POC creato da Cas van Cooten QUI

Piani di mitigazione

  • Rimuovere il gestore di protocollo per ms-msdt è probabilmente il vettore di mitigazione più sicuro finché non ci sarà una risposta ufficiale da parte di Microsoft. Non abbiamo testato questo metodo in grandi aziende, quindi potrebbero esserci alcuni effetti secondari nella disabilitazione su larga scala del gestore di protocollo. Tuttavia, considerando le implicazioni di uno sfruttamento riuscito (esecuzione di codice arbitrario), sembra un approccio ragionevole basato sul rischio (almeno su tutti i sistemi in cui vengono aperti documenti Office). Rimuovere il gestore di protocollo è semplice come eseguire il seguente comando in un prompt dei comandi con privilegi elevati:
root@kitploit:~
reg delete HKEY_CLASSES_ROOT\ms-msdt /f

***Nota: dovresti eseguire il backup del contenuto di questa chiave prima di eliminarlo, così potrà essere reimportato nel registro quando sarà disponibile una patch.

  • Puoi usare il seguente script PS per ottenere la modifica del registro. Credito a Kelvin Tegelaar
root@kitploit:~
$ENV:ActivateWorkaround = "Yes"
if($ENV:ActivateWorkaround -eq "Yes") {
    New-PSDrive -PSProvider registry -Root HKEY_CLASSES_ROOT -Name HKCR
    Set-Item -Path "HKCR:\ms-msdt" -Value "URL:ms-msdt_bak"
    Rename-Item -Path "HKCR:\ms-msdt" -newName "ms-msdt_bak"
} else {
    New-PSDrive -PSProvider registry -Root HKEY_CLASSES_ROOT -Name HKCR
    Rename-Item -Path "HKCR:\ms-msdt_bak" -newName "ms-msdt"

    Set-Item -Path "HKCR:\ms-msdt" -Value "URL:ms-msdt"
}

  • Forma i tuoi utenti: segnalare SEMPRE qualsiasi email con allegati e NON APRIRLA. Questa vulnerabilità può essere sfruttata anche solo passando il mouse sopra. Gli utenti finali DEVONO QUINDI ESSERE CAUTI.
  • Se utilizzi le regole di Attack Surface Reduction (ASR) di Microsoft Defender nel tuo ambiente, l'attivazione della regola "Blocca tutte le applicazioni Office dalla creazione di processi figli" in modalità Blocco impedirà lo sfruttamento di questa vulnerabilità. Tuttavia, se non stai ancora usando ASR, potresti voler eseguire prima la regola in modalità Audit e monitorare i risultati per assicurarti che non ci siano impatti negativi sugli utenti finali.

Riferimenti

  • https://thehackernews.com/2022/05/watch-out-researchers-spot-new.html
  • https://reaqta.com/2022/05/threat-analysis-msdt-exploit-with-maldocs/
  • https://www.joesandbox.com/analysis/636202/0/html
  • https://www.bleepingcomputer.com/news/microsoft/microsoft-shares-mitigation-for-office-zero-day-exploited-in-attacks/
  • https://nakedsecurity.sophos.com/2022/05/31/mysterious-follina-zero-day-hole-in-office-what-to-do/
  • https://www.theregister.com/2022/05/30/follina_microsoft_office_vulnerability/
  • https://msrc-blog.microsoft.com/2022/05/30/guidance-for-cve-2022-30190-microsoft-support-diagnostic-tool-vulnerability/
  • https://unit42.paloaltonetworks.com/cve-2022-30190-msdt-code-execution-vulnerability/
Scarica lo strumento