
Collection de BOF de beacon écrit pour apprendre Windows et Cobaltstrike
Collection de BOF pour beacon.
Un PoC rapide qui utilise DCOM (ShellWindows) via des fichiers objet beacon pour le mouvement latéral. Vous pouvez soit spécifier des identifiants, soit utiliser l'utilisateur actuel. Pour utiliser l'utilisateur actuel, laissez simplement le domaine, le nom d'utilisateur et le mot de passe vides. Un court article sur l'utilisation des objets COM en C peut être trouvé ici.
Concepts similaires au précédent, mais une expérience d'apprentissage intéressante. Code adapté de CIA Vault 8. Cette méthode utilise la classe Win32_Process.
Celui-ci utilise les événements WMI pour le mouvement latéral. La majeure partie du travail a été réalisée par wumb0in
Il s'agit d'une implémentation d'un C2 à la demande utilisant dotnet BOF. Le beacon entrera dans un état de sommeil jusqu'à ce qu'un email contenant un mot donné (dans le sujet ou le corps) soit fourni. Ainsi, votre beacon ne se manifestera QUE lorsque vous voudrez qu'il se manifeste. Lorsque le beacon se manifeste, il le fait avec le temps de sommeil configuré dans le profil malleable. Une fois terminé, vous pouvez exécuter à nouveau le BOF et le beacon dormira jusqu'à ce que vous envoyiez un autre email. De plus, l'email contenant le mot donné sera supprimé avant que l'utilisateur n'en soit notifié.
1 ) Téléchargez le projet BOF .NET (merci à CCob pour son travail brillant !) et suivez le guide de CCob ici pour charger la dll dans le beacon.
2 ) Exécutez-le avec la commande suivante : bofnet_execute On_Demand_C2_BOF.OnDemandC2Class subject COVlD-19*
3 ) Maintenant, pour obtenir un callback de votre beacon, vous pouvez envoyer un email comme [SUSPECTED SPAM] The new COVlD-19 update
L'email sera directement redirigé vers les éléments supprimés et le beacon se manifestera à nouveau !
*Ceci est un COVLD-19 avec un petit L pour garantir l'unicité.
Vous pouvez également spécifier l'option body comme suit : bofnet_execute On_Demand_C2_BOF.OnDemandC2Class body "it can also be a sentence!"
Si vous faites cela, l'application ne se déclenchera que si le corps d'un email contient "it can also be a sentence!". Cependant, cette méthode provoquera l'invite "a program is trying to access email address information" à chaque réception d'email, donc je recommande de l'utiliser UNIQUEMENT SI vous savez que cette fonctionnalité est désactivée (il est assez courant de la voir désactivée dans les entreprises, mais une OPSEC supplémentaire ne fait jamais de mal).
J'ai porté ces techniques vers BOF afin d'en apprendre davantage sur Windows, CobaltStrike et le mouvement latéral. J'ai une curiosité qui me pousse à trouver que le copier-coller de commandes PowerShell est limitant.
Le mouvement latéral DCOM a pris du temps à comprendre, et je ne l'ai pas trouvé réalisé dans d'autres projets/repos. Cependant, les parties de mouvement latéral WMI sont principalement l'œuvre d'autres personnes. Ce que j'ai fait a été des modifications mineures et le portage vers BOF.
Je ne suis pas encore un développeur expérimenté, donc utilisez avec précaution. Avant de pousser ces scripts sur GIT, ils ont été testés dans un environnement d'entreprise où un service MDR réseau est fourni, et aucune alerte n'a été déclenchée. Cependant, il va sans dire que vous devez modifier et tester les scripts avant de les utiliser dans vos engagements. Si vous avez besoin d'aide, n'hésitez pas à me contacter. Aussi, si vous êtes intéressé par avoir des scripts aggressor pour ces BOF, faites-le moi savoir !
Oui, avec une étoile, un retweet, ou en m'invitant dans votre Red Team après avoir obtenu mon diplôme universitaire.
Un grand merci à rsmudge pour son soutien continu et sa réactivité aux questions. Les articles de domchell ont servi d'excellente introduction et ont aidé à façonner mes priorités.