o365-attack-toolkit permet aux opérateurs d'effectuer des attaques de phishing oauth.
Nous avons décidé de passer de l'ancien modèle de définitions statiques à un compte entièrement « interactif » en temps réel.
Le point de terminaison de phishing est chargé de servir le fichier HTML qui effectue le phishing par jeton OAuth.
Ensuite, le jeton sera utilisé par les services backend pour effectuer les attaques définies.
L'interface de gestion peut être utilisée pour inspecter les informations extraites de l'API Microsoft Graph.
Les e-mails des utilisateurs sont accessibles en recherchant des mots-clés spécifiques à l'aide de l'interface de gestion. L'ancienne fonctionnalité de téléchargement d'e-mails avec mots-clés a été abandonnée.
La nouvelle version de cet outil vous permet d'envoyer des e-mails HTML/TXT, y compris des pièces jointes, à une adresse e-mail spécifique de la part de l'utilisateur compromis. Cette fonctionnalité est extrêmement utile car l’envoi d’un e-mail de spear phishing de la part de l’utilisateur est plus crédible.
L'API Microsoft Graph peut être utilisée pour accéder aux fichiers des bibliothèques de documents OneDrive, OneDrive Entreprise et SharePoint. Les fichiers utilisateur peuvent être recherchés et téléchargés de manière interactive à l'aide de l'interface de gestion. L'ancienne fonctionnalité de téléchargement de fichiers avec mots-clés a été abandonnée.
Le document des utilisateurs hébergé sur OneDrive/Sharepoint peut être modifié à l'aide de l'API Graph. Dans la version initiale de cette boîte à outils, les 10 derniers fichiers seraient détournés avec une macro prédéfinie. C'était risqué lors des opérations de l'équipe rouge, d'où son utilisation limitée. Pour cette raison, nous avons implémenté une fonctionnalité de remplacement manuel des fichiers pour avoir plus de contrôle sur l'attaque.
cd %GOPATH%
git clone https://github.com/mdsecactivebreach/o365-attack-toolkit
cd o365-attack-toolkit
dep ensure
go build
Un exemple de configuration comme ci-dessous :
[server]
host = 127.0.0.1
externalport = 30662
internalport = 8080
[oauth]
clientid = [REDACTED]
clientsecret = [REDACTED]
scope = "offline_access contacts.read user.read mail.read mail.send files.readWrite.all files.read files.read.all openid profile"
redirecturi = "http://localhost:30662/gettoken"
Avant de commencer à utiliser cette boîte à outils, vous devez créer une application sur le portail Azure. Accédez à Azure Active Directory -> Inscriptions d'applications -> Enregistrez une application.
Après avoir créé l'application, copiez l'ID de l'application dans le fichier de configuration.
Vous devez créer un secret client, ce qui peut être fait comme indiqué sur l'image suivante :
Mettez à jour le secret client sur le fichier de configuration.
L'interface de gestion permet à l'opérateur d'interagir avec les utilisateurs compromis.