
Exécute un shellcode indépendant de la position à partir d'un zip chiffré.
Exécute un shellcode indépendant de la position à partir d'une archive zip chiffrée. Obtenez du code PIC depuis votre assembly en utilisant le format RAW de Donut, Metasploit ou CobaltStrike.
Compressez le fichier .bin et chiffrez-le avec un mot de passe. Cet assembly déchiffre l'entrée zip en mémoire et l'exécute via l'API d'injection D/Invoke.
Capable d'injecter dans un processus en cours d'exécution, ou de créer d'abord un nouveau processus puis d'injecter dans ce nouveau processus. L'injection en elle-même devrait théoriquement être possible, mais provoque des plantages. Comme injecter dans soi-même n'était pas vraiment ce que je voulais accomplir ici, je n'ai pas vraiment essayé de corriger ce problème.
Testé en déposant l'archive zip chiffrée sur le disque, mais pourrait probablement aussi fonctionner entièrement en mémoire avec quelques modifications. Ne prend en charge que les charges utiles PIC. J'ai essayé de créer une variante de RunPE mais j'ai échoué lamentablement :)
___ _ ____ _ ___
/ __>| |_ ___ _ _ ___ |_ /<_> ___ | . \ _ _ ._ _ ._ _ ___ _ _
\__ \| . |<_> || '_>| . \ / / | || . \| /| | || ' || ' |/ ._>| '_>
<___/|_|_|<___||_| | _//___||_|| _/|_\_\`___||_|_||_|_|\___.|_|
|_| |_|
Une archive zip chiffrée sur votre ordinateur ? Qu'est-ce qui pourrait mal tourner ?
Usage:
-z, --zip-file=VALUE The path on disk to the encrypted zip
-e, --entry=VALUE The specific zip entry to put in mem (optional),
if not provided assumes only one zip entry is
present
-p, --password=VALUE The password of the encrypted zip
-i, --process=VALUE The process to inject into (if not used will
inject into self (not recommended)
-c, --create Create a new process, and injects into that
process (requires the process argument)
-h, --help shows this menu