Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Invoke-Obfuscation — Obfuscateur PowerShell | Kitploit
Outils/GitHubGitHub/danielbohannon/invoke-obfuscation
Outils DéfensifsGénération de PayloadsApprentissage et ÉducationRed Teaming
GitHubdanielbohannon/invoke-obfuscation

Invoke-Obfuscation

Obfuscateur PowerShell

Voir le dépôt
4.3k81527il y a 7 ansVérifié par Kitploit

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

Invoke-Obfuscation v1.8

===============

Capture d'écran d'Invoke-Obfuscation

Introduction

Invoke-Obfuscation est un obfuscateur de commandes et scripts PowerShell compatible PowerShell v2.0+.

Contexte

À l'automne 2015, j'ai décidé de commencer à étudier la flexibilité du langage PowerShell et à cataloguer les différentes manières d'accomplir quelques techniques courantes que la plupart des attaquants utilisent régulièrement.

En me concentrant d'abord sur les syntaxes de commandes encodées et de berceaux de téléchargement à distance, j'ai découvert que divers caractères d'échappement qui n'entravaient pas l'exécution de la commande persistaient dans les arguments de la ligne de commande, à la fois dans le processus en cours et dans ce qui est consigné dans les journaux d'événements Security EID 4688 et Sysmon EID 1. Cela m'a conduit à explorer systématiquement les moyens d'obfusquer chaque type de « token » présent dans toute commande ou script PowerShell.

J'ai ensuite exploré des moyens plus obscurs d'effectuer une obfuscation au niveau des chaînes, diverses techniques d'encodage/chiffrement (comme ASCII/hex/octal/binaire et même SecureString), et enfin des techniques de lancement PowerShell pour abstraire les arguments de la ligne de commande de powershell.exe et les repousser vers le processus parent, voire grand-parent.

Objectif

Les attaquants et les malwares courants ont commencé à utiliser des techniques d'obfuscation extrêmement basiques pour cacher la majeure partie de la commande dans les arguments de la ligne de commande de powershell.exe. J'ai développé cet outil pour aider la Blue Team à simuler des commandes obfusquées basées sur ce que je sais actuellement être syntaxiquement possible dans PowerShell 2.0-5.0, afin qu'elle puisse tester ses capacités de détection de ces techniques.

Le seul but de l'outil est de briser toutes les hypothèses que nous, défenseurs, pourrions avoir sur la façon dont les commandes PowerShell peuvent apparaître sur la ligne de commande. J'espère qu'il encouragera la Blue Team à se concentrer sur la recherche d'indicateurs d'obfuscation sur la ligne de commande, en plus de mettre à jour la journalisation PowerShell pour inclure la journalisation des modules, ScriptBlock et Transcription, car ces sources simplifient la plupart des aspects des techniques d'obfuscation générées par cet outil.

Utilisation

Bien que toutes les couches d'obfuscation aient été développées dans des scripts séparés, la plupart des utilisateurs trouveront que la fonction Invoke-Obfuscation est le moyen le plus simple d'explorer et de visualiser les techniques d'obfuscation actuellement supportées par ce framework.

Installation

Le code source d'Invoke-Obfuscation est hébergé sur Github, et vous pouvez le télécharger, le forker et l'examiner à partir de ce dépôt (https://github.com/danielbohannon/Invoke-Obfuscation). Veuillez signaler les problèmes ou demandes de fonctionnalités via le traqueur de bugs Github associé à ce projet.

Pour installer :

Import-Module ./Invoke-Obfuscation.psd1
Invoke-Obfuscation

Licence

Invoke-Obfuscation est publié sous licence Apache 2.0.

Notes de version

v1.0 - 2016-09-25 DerbyCon 6.0 (Louisville, Kentucky, États-Unis) : Version publique d'Invoke-Obfuscation.

v1.1 - 2016-10-09 SANS DFIR Summit (Prague, République tchèque) : Ajout de la fonctionnalité de réorganisation de l'opérateur de format -f à toutes les fonctions d'obfuscation TOKEN applicables. Ajout également d'options de syntaxe supplémentaires pour la définition des valeurs de variables.

v1.2 - 2016-10-20 CODE BLUE (Tokyo, Japon) : Ajout de l'obfuscation de type TOKEN (cast de type direct avec options d'obfuscation de chaîne pour le nom du type).

v1.3 - 2016-10-22 Hacktivity (Budapest, Hongrie) : Ajout de deux nouveaux LAUNCHERs : CLIP+ et CLIP++. Ajout également d'une syntaxe de conversion de char en tableau supplémentaire (et plus simple) pour toutes les fonctions ENCODING qui ne nécessite pas For-EachObject/%.

v1.4 - 2016-10-28 BruCON (Gand, Belgique) : Ajout de la nouvelle fonction ENCODING BXOR. Amélioration également de la casse aléatoire pour tous les composants de toutes les fonctions ENCODING ainsi que pour les indicateurs d'exécution PowerShell pour tous les LAUNCHERs. Enfin, ajout de l'option abrégée -EP pour -ExecutionPolicy à tous les LAUNCHERs ainsi que la représentation entière optionnelle de l'indicateur d'exécution PowerShell -WindowStyle : Normal (0), Hidden (1), Minimized (2), Maximized (3).

v1.5 - 2016-11-04 Blue Hat (Redmond, Washington, États-Unis) : Ajout du LAUNCHER WMIC avec une certaine randomisation des arguments de ligne de commande WMIC.

Télécharger l’outil