
Outil d'accès initial et de post-exploitation pour Entra ID et M365 avec une interface graphique basée sur navigateur
________ _________
/ / by RedByte1337 __ / /
/ _____/___________ ______ | |__ / _____/_____ ______
/ \ __\_ __ \__ \ \____ \| | \ \_____ \\____ \ | |
\ \_\ \ | \/ __ \| |_> | \ \/ \ |_> \___ |
\______ /__| |____ | __/|___| /_______ / ___/ ____|
\/ \/|__| \/ \/|__| \/
Ce qui suit décrit le processus d'installation recommandé avec pipx afin d'éviter tout conflit de dépendances.
GraphSpy est conçu pour fonctionner sur tous les systèmes d'exploitation, bien qu'il ait été principalement testé sur Linux et Windows.
Pour d'autres options d'installation et des instructions détaillées, consultez la page d'installation sur le wiki.
# Install pipx (skip this if you already have it)
apt install pipx
pipx ensurepath
# Install the latest version of GraphSpy from pypi
pipx install graphspy
Après l'installation, l'application peut être lancée à l'aide de la commande graphspy depuis n'importe quel emplacement du système.
Lancer GraphSpy sans argument en ligne de commande démarre GraphSpy et le rend disponible sur http://127.0.0.1:5000 par défaut.
graphspy
Ouvrez simplement http://127.0.0.1:5000 dans votre navigateur préféré pour commencer !
Utilisez les arguments -i et -p pour modifier l'interface et le port d'écoute.
# Run GraphSpy on http://192.168.0.10
graphspy -i 192.168.0.10 -p 80
# Run GraphSpy on port 8080 on all interfaces
graphspy -i 0.0.0.0 -p 8080
Pour des instructions détaillées et les autres arguments en ligne de commande, veuillez vous référer à la page d'exécution sur le wiki.
Veuillez consulter le wiki GitHub pour tous les détails d'utilisation.
Pour un aperçu rapide des fonctionnalités, consultez le billet de blog officiel de la version.
Si vous contribuez à GraphSpy ou modifiez l'implémentation interne, commencez ici :
Stockez vos jetons d'accès et d'actualisation pour plusieurs utilisateurs et portées (scopes) au même endroit.


Basculez facilement entre eux ou demandez de nouveaux jetons d'accès depuis n'importe quelle page.

Créez et interrogez facilement plusieurs codes d'appareil à la fois. Si un utilisateur s'est authentifié avec le code d'appareil, GraphSpy stockera automatiquement le jeton d'accès et d'actualisation dans sa base de données.

Configurez des actions automatiques à exécuter instantanément après une authentification réussie par code d'appareil.

Affichez, modifiez et créez des méthodes MFA liées au compte de l'utilisateur.

Les méthodes MFA suivantes peuvent être ajoutées depuis GraphSpy pour mettre en place une persistance :

Demandez, importez ou utilisez des Primary Refresh Tokens depuis GraphSpy.
Ces PRT sont bien plus puissants que les refresh tokens classiques, car ils ne sont pas liés à une application spécifique, mais peuvent être utilisés pour obtenir des jetons d'accès pour N'IMPORTE QUELLE application/portée en tant qu'utilisateur (aussi bien FOCI que non-FOCI).

De plus, ces jetons PRT peuvent être utilisés pour générer des cookies PRT, qui peuvent être importés directement dans un navigateur pour fournir un accès interactif complet à toute application web intégrée à l'authentification unique (SSO) d'Entra ID.

Enregistrez des clés Windows Hello For Business (whfb) dans GraphSpy pour une combinaison utilisateur et appareil, ou importez-les depuis un autre outil ou un appareil compromis.
Ces clés WinHello peuvent être utilisées pour générer de nouveaux Primary Refresh Tokens pour l'utilisateur, même après des réinitialisations de mot de passe, ce qui en fait une persistance de compte très puissante !

Parcourez les fichiers et dossiers dans le OneDrive de l'utilisateur ou dans tout site SharePoint accessible via une interface intuitive d'explorateur de fichiers.
Bien sûr, les fichiers peuvent également être téléchargés directement, ou de nouveaux fichiers peuvent être importés.

En outre, listez les fichiers récemment consultés par l'utilisateur ou les fichiers qui lui ont été partagés.

Ouvrez la messagerie web Outlook de l'utilisateur en un seul clic en utilisant simplement un jeton d'accès Outlook (FOCI) !


Ou utilisez le module Outlook Graph pour lister, lire, rechercher, supprimer, répondre ou envoyer des e-mails avec simplement un jeton d'accès pour l'API MS Graph !

Composez des e-mails entièrement formatés en HTML directement dans GraphSpy et incluez des images et des pièces jointes.

Lisez et envoyez des messages à l'aide du module Microsoft Teams avec un jeton d'accès FOCI de l'API skype (https://api.spaces.skype.com/).

Recherchez des mots-clés dans toutes les applications Microsoft 365 à l'aide de l'API Microsoft Search.
Par exemple, utilisez cette fonctionnalité pour rechercher des fichiers ou des e-mails contenant des mots-clés tels que « password », « secret », ...

Effectuez des requêtes API personnalisées vers n'importe quel point de terminaison en utilisant les jetons d'accès stockés dans GraphSpy.

Des modèles de requêtes personnalisées avec variables peuvent être stockés dans la base de données pour permettre une réutilisation facile des requêtes API personnalisées courantes.

Listez tous les utilisateurs Entra ID et leurs propriétés à l'aide de l'API Microsoft Graph.

Affichez des détails supplémentaires pour un utilisateur, tels que ses appartenances aux groupes, ses attributions de rôles, ses appareils, ses rôles d'application et ses autorisations API.

GraphSpy prend en charge plusieurs bases de données. Cela est utile lorsque vous travaillez sur plusieurs évaluations à la fois pour garder vos jetons et codes d'appareil organisés.

Utilisez le mode sombre par défaut, ou passez en mode clair.
Reportez-vous à la page Notes de version sur le wiki GitHub
Vous ou votre organisation souhaitez figurer ici comme sponsor clé de ce projet, ou même être mentionné dans GraphSpy lui-même ? Ou aimez-vous simplement GraphSpy et souhaitez-vous soutenir mon travail ?
Consultez ma page de sponsor.
Si vous n'avez pas les moyens de sponsoriser, mais que vous souhaitez tout de même montrer votre gratitude, n'hésitez pas à ajouter une étoile à la place. ⭐
La principale motivation pour créer GraphSpy était le manque d'un moyen facile à utiliser pour effectuer des activités de post-compromission ciblant les applications Office365 (telles qu'Outlook, Microsoft Teams, OneDrive, SharePoint, ...) avec simplement un jeton d'accès.
Bien que plusieurs outils en ligne de commande dotés de fonctionnalités de base aient existé, aucun ne se rapprochait de l'expérience interactive intuitive qu'offrent les applications d'origine (comme l'interface de type explorateur de fichiers d'OneDrive et de SharePoint).
Cependant, de nombreuses recherches antérieures ont été menées par d'innombrables autres personnes (notamment concernant le Device Code Phishing, qui a conduit à l'exigence initiale d'un tel outil).