Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
MSDT_CVE-2022-30190 — Ce dépôt traite de Follina MSDT du point de vue de Defender | Kitploit
Outils/GitHubGitHub/archanchoudhury/msdt_cve-2022-30190
Gestion des Indicateurs de Compromission (IOC)Analyse des VulnérabilitésAnalyse de MalwareRenseignement sur les MenacesApprentissage et ÉducationRéponse aux Incidents
GitHubarchanchoudhury/msdt_cve-2022-30190

MSDT_CVE-2022-30190

Ce dépôt traite de Follina MSDT du point de vue de Defender

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Voir le dépôt
371025il y a 4 ansVérifié par Kitploit
Partager

MSDT_CVE-2022-30190

Ce dépôt traite de la faille Follina MSDT du point de vue de Defender

Index

  • À propos
  • Chronologie
  • Comprendre l'exploit
  • Liste des IOC
  • Stratégie de détection
  • Tests et recherche
  • Plans d'atténuation
  • Références

À propos

Le bug est une vulnérabilité d'exécution de code à distance dans l'outil de diagnostic Microsoft Windows (MSDT) signalée par crazyman du Shadow Chaser Group. Microsoft le suit désormais sous la référence CVE-2022-30190. La faille affecte toutes les versions de Windows encore en phase de mises à jour de sécurité (Windows 7+ et Server 2008+).

Comme l'a découvert le chercheur en sécurité nao_sec, elle est utilisée par des acteurs malveillants pour exécuter des commandes PowerShell malveillantes via MSDT dans ce que Redmond décrit comme des attaques par exécution de code arbitraire (ACE) lors de l'ouverture ou de l'aperçu de documents Word.

« Un attaquant qui exploite avec succès cette vulnérabilité peut exécuter du code arbitraire avec les privilèges de l'application appelante », explique Microsoft.

Chronologie

  • 12 avril 2022 — Premier signalement à Microsoft MSRC, par le leader de Shadowchasing1, un groupe de chasse aux APT. Ce document est un véritable exploit in-the-wild ciblant la Russie, déguisé en entretien d'embauche russe.
  • 21 avril 2022 — Microsoft MSRC a fermé le ticket en déclarant qu'il ne s'agissait pas d'un problème de sécurité (pour mémoire, l'exécution de msdt avec les macros désactivées est un problème).
  • Mai ?? 2022 — Microsoft a peut-être tenté de corriger ce problème ou l'a accidentellement corrigé dans le canal Insider d'Office 365, sans documenter de CVE ni le consigner par écrit. Les autres produits restent vulnérables.
  • 27 mai 2022 — Le fournisseur de sécurité Nao tweete un document téléchargé depuis la Biélorussie, qui est également une attaque in-the-wild.
  • 27 mai 2022 — Signalé de nouveau à MSRC.
  • 29 mai 2022 — Andy Ful a identifié qu'il s'agissait d'un zero day public car il fonctionne toujours contre le canal Semi-Annual d'Office 365, et les versions « on-prem » d'Office ainsi que les produits EDR échouent à le détecter.

Comprendre l'exploit

  • Vous pouvez consulter le blog de Huntress ICI pour comprendre tous les détails du principe de fonctionnement de cet exploit.
  • Regardez cette VIDÉO pour comprendre l'exploit et sa correction.

Liste des IOC

  • Objet principal - 05-2022-0438.doc
    • sha256 4a24048f81afbe9fb62e7a6a49adbd1faf41f266b5f9feecdceb567aec096784
    • sha1 06727ffda60359236a8029e0b3e8a0fd11c23313
    • md5 52945af1def85b171870b31fa4782e52
  • Fichier exécutable déposé
    • 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
  • Requêtes DNS
    • domaine www[.]xmlformats[.]com
  • Connexions
    • ip 141.105.65.149
    • ip 20.42.65.85
    • ip 13.107.42.16
  • Requêtes 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

Stratégie de détection

  • Pour faire de la chasse aux menaces, vous pouvez trouver la règle Sigma ICI

  • Ci-dessous les règles de détection qui peuvent être affinées. Merci à Bala Ganesh. L'article complet se trouve ICI

  • MS 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*))

La requête ci-dessous décrite par Brent Murphy ICI peut également être appliquée

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"))
  • Vous pouvez chasser cette attaque à l'aide de la requête XQL dans Cortex XDR : En savoir plus ICI
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
  • En plus de la chasse au comportement, il serait également utile d'interroger la clé de registre HKEY_USERS*SID\SOFTWARE\Microsoft\Office\16.0\Common\Internet\Server Cache* à grande échelle et d'analyser les résultats ! Référez-vous au post complet ICI
  • Velociraptor a créé une logique de détection ICI pour identifier les clés et valeurs de registre Return Office Internet Server Cache afin de détecter d'éventuelles URL C2 provenant de documents Office malveillants ouverts.
  • Une règle YARA développée par Joe Security se trouve ICI
  • La requête Crowdstrike peut être effectuée comme ceci :
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
  • Le fichier "PCW.debugreport.xml" dans %localappdata%\Diagnostics et %localappdata%\ElevatedDiagnostics (pour les instances élevées) est généré lors de son exécution et contient la charge utile. Vérifiez-le ICI
  • Les itérations actuelles de la preuve de concept invoquent msdt.exe à partir d'une application Microsoft Office. Une requête de chasse généralisée pour Crowdstrike Falcon se trouve ici :
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
  • Pour profiler et établir une base de référence de l'utilisation normale de msdt.exe dans votre environnement, la requête suivante peut être utilisée sur 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
  • L'équipe Elastic Security a mis à jour les règles existantes pour le SIEM et en a ajouté une nouvelle pour msdt.exe en tant que lolbin. Consultez la Règle1 et la Règle2
  • Si vous utilisez MS Sentinel, vous pouvez utiliser ceci :
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

Tests et recherche

⚠⚠À UTILISER UNIQUEMENT À DES FINS DE RECHERCHE ET D'APPRENTISSAGE

  • Utilisez les ÉCHANTILLONS joints
  • Utilisez les excellents codes et la plateforme créés par John Hammond ICI
  • La version armée du CVE-2021-40444 se trouve ICI
  • Utilisez cette POC créée par Cas van Cooten ICI

Plans d'atténuation

  • La suppression du gestionnaire de protocole pour ms-msdt est probablement le vecteur d'atténuation le plus sûr jusqu'à ce qu'une réponse officielle de Microsoft soit fournie. Nous n'avons pas testé cette méthode dans de grandes entreprises, il pourrait donc y avoir des effets secondaires liés à la désactivation généralisée du gestionnaire de protocole. Cependant, compte tenu des implications d'une exploitation réussie (exécution de code arbitraire), cela semble une approche raisonnable basée sur le risque (au moins sur les systèmes où des documents Office sont ouverts). La suppression du gestionnaire de protocole est aussi simple que d'exécuter la commande suivante dans une invite de commandes élevée :
root@kitploit:~
reg delete HKEY_CLASSES_ROOT\ms-msdt /f

*Notez que vous devez sauvegarder le contenu de cette clé avant de supprimer son contenu afin de pouvoir le fusionner dans le registre une fois un correctif disponible.

  • Vous pouvez utiliser le script PS ci-dessous pour effectuer la modification du registre. Merci à 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"
}

  • Sensibilisez vos utilisateurs : SIGNALEZ TOUJOURS tout email contenant des pièces jointes et NE L'OUVREZ PAS. Cette vulnérabilité peut être exploitée même en survolant simplement. Les utilisateurs finaux DOIVENT ÊTRE PRUDENTS.
  • Si vous utilisez les règles Attack Surface Reduction (ASR) de Microsoft Defender dans votre environnement, l'activation de la règle « Bloquer toutes les applications Office lors de la création de processus enfants » en mode Bloc empêchera l'exploitation. Cependant, si vous n'utilisez pas encore ASR, vous pouvez d'abord exécuter la règle en mode Audit et surveiller le résultat pour vous assurer qu'il n'y a pas d'impact négatif sur les utilisateurs finaux.

Références

  • 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/
Télécharger l’outil