
morphHTA - Transformation de l'evil.HTA de Cobalt Strike
Comme d'habitude, ce code et cet outil ne doivent pas être utilisés à des fins malveillantes.
Écrit par Vincent Yiu de l'équipe ActiveBreach de MDSec Consulting. La modification du code est autorisée avec mention de l'auteur.
Les recherches sur les monikers COM Explorer et SWBemLocator sont d'@enigma0x3
Utilisation :
usage: morph-hta.py [-h] [--in <input_file>] [--out <output_file>]
[--maxstrlen <default: 1000>] [--maxvarlen <default: 40>]
[--maxnumsplit <default: 10>]
optional arguments:
-h, --help show this help message and exit
--in <input_file> File to input Cobalt Strike PowerShell HTA
--out <output_file> File to output the morphed HTA to
--maxstrlen <default: 1000>
Max length of randomly generated strings
--maxvarlen <default: 40>
Max length of randomly generated variable names
--maxnumsplit <default: 10>
Max number of times values should be split in chr
obfuscation
/morphHTA# python morph-hta.py
███╗ ███╗ ██████╗ ██████╗ ██████╗ ██╗ ██╗ ██╗ ██╗████████╗ █████╗
████╗ ████║██╔═══██╗██╔══██╗██╔══██╗██║ ██║ ██║ ██║╚══██╔══╝██╔══██╗
██╔████╔██║██║ ██║██████╔╝██████╔╝███████║█████╗███████║ ██║ ███████║
██║╚██╔╝██║██║ ██║██╔══██╗██╔═══╝ ██╔══██║╚════╝██╔══██║ ██║ ██╔══██║
██║ ╚═╝ ██║╚██████╔╝██║ ██║██║ ██║ ██║ ██║ ██║ ██║ ██║ ██║
╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝
Morphing Evil.HTA from Cobalt Strike
Author: Vincent Yiu (@vysec, @vysecurity)
[*] morphHTA initiated
[+] Writing payload to morph.hta
[+] Payload written
Longueur maximale des noms de variables et des chaînes générées aléatoirement réduite pour diminuer la taille globale de la sortie HTA :
/morphHTA# python morph-hta.py --maxstrlen 4 --maxvarlen 4
Division maximale dans l'obfuscation chr(), ce qui réduit le nombre d'additions pour diminuer la longueur :
/morphHTA# python morph-hta.py --maxnumsplit 4
Modifier les fichiers d'entrée et de sortie :
/morphHTA# python morph-hta.py --in advert.hta --out advert-morph.hta
Je suggère de ne pas télécharger sur VT :

