
Un BOF pour automatiser les tâches courantes de persistance pour les red teamers
Un outil pour aider à automatiser les mécanismes de persistance courants. Prend actuellement en charge Print Monitor (SYSTEM), Time Provider (Network Service), détournement de raccourci du dossier de démarrage (User), dossier de jonction (User), complément XLL (User).
Clonez, exécutez make, ajoutez .cna au client Cobalt Strike.
Exécutez : help persist-ice dans la console CS
Syntaxe :
Toutes ces techniques reposent sur un fichier DLL placé séparément sur le disque. Il n'est intentionnellement pas inclus dans le BOF.
Créez une DLL avec l'export xlAutoOpen(). Renommez .dll en .xll et placez-la dans %appdata%\Microsoft\Addins. Elle sera chargée à chaque ouverture d'Excel sans notification. Écrit une clé de registre dans HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\{numéro de version}\Excel\Options, fournissez le numéro de version correct car il peut y en avoir plusieurs.
Exemple :
La DLL DOIT être sur le disque et dans un emplacement dans PATH (ordre de recherche des DLL) AVANT d'exécuter le BOF. Sinon, cela échouera. La DLL sera immédiatement chargée par spoolsv.exe en tant que SYSTEM. Cela peut être utilisé pour élever les privilèges d'administrateur à SYSTEM ainsi que pour la persistance. S'exécute au démarrage du système. Doit être exécuté avec élévation de privilèges.
Exemple :
Chargée par svchost.exe en tant que NETWORK SERVICE (préparez vos potatoes !) au démarrage après exécution du BOF. Doit être exécuté avec élévation de privilèges.
Exemple :
Même technique que celle démontrée dans les fuites Vault 7. Exécutée à la connexion de l'utilisateur. Non élevée. La DLL sera chargée dans explorer.exe.
REMARQUE : Cela doit être une DLL de serveur COM pour fonctionner correctement. Vous pouvez exécuter du code à partir de DllRegisterServer, DllMain ou DllGetClassObject selon ce que vous essayez de faire. Assurez-vous d'implémenter les autres exports requis.
Exemple :
Créez un nouveau dossier accessible en écriture par l'utilisateur, copiez un binaire Windows détournable dans le dossier, puis créez un raccourci dans le dossier de démarrage. Exécuté à la connexion de l'utilisateur. Non élevé.
Exemple :
https://stmxcsr.com/persistence/print-monitor.html
https://stmxcsr.com/persistence/time-provider.html
https://pentestlab.blog/2019/10/28/persistence-port-monitors/
https://blog.f-secure.com/hunting-for-junction-folder-persistence/
https://attack.mitre.org/techniques/T1547/010/