Offensive VBA 0x4 - Reverse Shell Macro with Powercat

Offensive VBA 0x4 - Reverse Shell Macro with Powercat

VBA 0x4 offensif - Macro Shell inversée avec Powercat

🎙 HackerSploit 👥 1.0M 📅 3 février 2025 ⏱ 11 min 👁 8K 📄 tutoriel 🧭 2026-10-09
Disponible en : Français (actuel) English

Mots-clés

Powercatmacro VBAreverse shellIEXDocument_Open

Résumé

Cette vidéo clôt une série consacrée au développement de macros VBA offensives, avant un retour à l’émulation d’adversaire et au pentest Active Directory. L’auteur présente Powercat, script PowerShell décrit comme un équivalent de Netcat pour Windows, capable de fonctionner en écoute (bind) comme en connexion sortante (reverse). Le dépôt GitHub de l’auteur du script est consulté à l’écran et sert de référence unique. La démonstration se déroule dans un environnement de laboratoire : une machine Windows avec Word, une machine Kali Linux hébergeant le script sur un serveur web en port 8080 et un listener Netcat sur le port 1337. Dans Word, un document .docm est créé avec une macro nommée powercat, appelée depuis deux routines déclenchées à l’ouverture du document (AutoOpen et Document_Open), afin de garantir l’exécution. La macro déclare deux variables de type chaîne : l’URL du script hébergé et la commande PowerShell à exécuter. Cette commande utilise Invoke-Expression combiné à un objet System.Net.WebClient et à sa méthode DownloadString pour récupérer Powercat en mémoire, puis l’invoque en mode connexion vers l’adresse du listener avec exécution d’un shell de commandes. L’appel final passe par powershell.exe avec les options d’exécution en contournement de politique et de fenêtre masquée. À l’ouverture du document et après activation des macros, le serveur web enregistre la requête et le listener reçoit un shell inverse. L’auteur souligne l’absence d’écriture sur disque, l’exécution intégralement en mémoire, puis confirme l’accès par systeminfo et whoami. La séquence est brève, sans dépannage ni discussion des mécanismes de détection.

249 mots

Évaluation critique

Valeur des informations & solidité de l’argumentation

La valeur informative réside dans la complétude du chaînage opérationnel : de la préparation de l’infrastructure d’attaque (serveur web, listener) jusqu’à l’obtention effective du shell, chaque étape est montrée et commentée en temps réel. L’articulation entre les deux routines d’ouverture de document est un détail utile, souvent omis, qui illustre une logique de redondance visant à maximiser les chances de déclenchement. Le recours à Invoke-Expression et à WebClient pour un chargement en mémoire est correctement identifié comme l’élément clé expliquant l’absence d’artefact sur disque, ce qui constitue le principal enseignement technique de la séquence. L’argumentation reste toutefois essentiellement démonstrative : elle repose sur l’observation d’un résultat obtenu dans un environnement maîtrisé, sans hypothèse testée ni variable contrôlée. Aucune discussion n’aborde les conditions d’échec — blocage des macros par les paramètres de sécurité Office, interférence de l’AMSI ou d’un EDR, journalisation PowerShell, filtrage réseau sortant. Le choix du port et de l’adressage relève de la commodité du laboratoire et n’est pas discuté. La comparaison avec Netcat est pertinente mais reste analogique et succincte, sans exploration des modes d’utilisation alternatifs pourtant évoqués. Enfin, la portée est strictement procédurale : la vidéo transmet un savoir-faire reproductible, mais n’apporte ni analyse comparative des techniques équivalentes, ni évaluation de la robustesse de la méthode face aux défenses modernes.

Rigueur scientifique, qualité des sources, adéquation du titre

La rigueur technique est satisfaisante pour un tutoriel : les commandes sont exécutées devant la caméra, le résultat est vérifié par des commandes de reconnaissance élémentaires, et l’auteur attribue explicitement le script à son auteur d’origine en renvoyant vers le dépôt GitHub. Aucune affirmation n’est avancée sans démonstration correspondante. La qualité des sources se limite cependant à une source primaire unique, le dépôt Powercat, utilisée comme documentation de référence et comme artefact à déployer. Aucune documentation Microsoft sur le modèle objet VBA, aucune publication sur les techniques de chargement en mémoire, aucune référence aux cadres de connaissance adversariale ne vient étayer ou situer la technique. Le propos reste donc auto-référencé. L’adéquation entre le titre et le contenu est exacte : la vidéo traite bien de la construction d’une macro VBA de reverse shell reposant sur Powercat, sans digression significative. Une séquence de promotion d’une plateforme de laboratoire est présente en début de vidéo, d’une durée approximative de trente secondes, sans incidence sur l’évaluation du contenu technique.

394 mots

Adéquation titre / contenu

Le titre annonce une macro VBA de reverse shell via Powercat : le contenu y répond exactement, sans écart ni promesse non tenue.

Qualité & fiabilité

6/10

Démonstration technique reproductible et cohérente avec l'outil cité (Powercat, dépôt GitHub officiel de l'auteur). Le contenu est exact sur le plan opérationnel : téléchargement en mémoire via IEX/WebClient, exécution de Powercat en mode connexion sortante, obtention d'un shell. Aucune source externe, étude ou donnée chiffrée n'est mobilisée ; il s'agit d'un savoir-faire de red team présenté sans validation croisée ni discussion des limites (détection EDR, AMSI, macros bloquées par défaut dans les versions récentes d'Office). Fiabilité factuelle élevée, mais profondeur analytique et contextualisation défensive faibles.

Moments clés

Sources citées

Sources concordantes

Références externes

Apport & nouveautés

L’apport de cette vidéo ne réside pas dans l’invention d’une technique — le chargement en mémoire d’un script PowerShell depuis une macro VBA est documenté de longue date dans la littérature red team — mais dans la mise en évidence d’un enchaînement minimal et fonctionnel : deux routines d’ouverture redondantes, une variable d’URL, une commande Invoke-Expression avec WebClient, et un appel powershell.exe masqué. L’intérêt pédagogique tient à la sobriété de la construction et à la vérification du résultat en direct, ce qui rend la chaîne reproductible sans dépendance lourde. La vidéo ne propose en revanche aucune analyse des contre-mesures, ce qui limite sa portée au seul versant offensif.

Pour aller plus loin :

209 mots

Profil radar

Le profil est celui d'un tutoriel technique dense et opérationnel : niveau technique et fiabilité factuelle élevés, mais quantité d'information et qualité analytique modérées, faute de contextualisation défensive et de sources multiples. Le radar traduit un contenu précis dans son exécution, limité dans sa portée explicative.

Fiabilité 6/10