Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
o365spray — Outil d'énumération de noms d'utilisateur et de pulvérisation de mots de passe ciblant Microsoft O365. | Kitploit
Outils/GitHubGitHub/0xzdh/o365spray
Attaques de Mots de PasseCollecte d'InformationsTests d'IntrusionSécurité CloudAuthentification
GitHub0xzdh/o365spray

o365spray

Outil d'énumération de noms d'utilisateur et de pulvérisation de mots de passe ciblant Microsoft O365.

Voir le dépôt
1.0k121il y a 1 anVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

o365spray

o365spray est un outil d'énumération d'utilisateurs et de pulvérisation de mots de passe ciblant Microsoft Office 365 (O365). Cet outil réimplémente une série de techniques d'énumération et de pulvérisation recherchées et identifiées par les personnes mentionnées dans Remerciements.

À des fins éducatives, autorisées et/ou de recherche uniquement.

ATTENTION : Les modules d'énumération d'utilisateurs Autologon, oAuth2 et RST fonctionnent en soumettant une seule tentative d'authentification par utilisateur. Si les modules sont exécutés conjointement avec la pulvérisation de mots de passe en une seule exécution, o365spray réinitialisera automatiquement le minuteur de verrouillage avant d'effectuer la pulvérisation -- si l'énumération est exécutée seule, l'utilisateur doit être conscient du nombre et du moment de chaque tentative d'authentification et réinitialiser manuellement le minuteur de verrouillage avant d'effectuer toute pulvérisation de mots de passe.

Table des matières

  • Utilisation
  • Modules
    • Validation
    • Énumération
    • Pulvérisation
  • URLs de base FireProx
    • Énumération
    • Pulvérisation
  • Randomisation de l'User-Agent
  • Remerciements
  • Bugs
  • Versions précédentes

Utilisation

o365spray

Valider qu'un domaine utilise O365 :
o365spray --validate --domain test.com

Effectuer une énumération d'utilisateurs pour un domaine donné :
o365spray --enum -U usernames.txt --domain test.com

Effectuer une pulvérisation de mots de passe pour un domaine donné :
o365spray --spray -U usernames.txt -P passwords.txt --count 2 --lockout 5 --domain test.com

root@kitploit:~
usage: o365spray [flags]

o365spray | Microsoft O365 User Enumerator and Password Sprayer -- v3.0.4

options:
  -h, --help            show this help message and exit

Target:
  -d DOMAIN, --domain DOMAIN
                        Target domain for validation, user enumeration, and/or
                        password spraying.

Actions:
  --validate            Run domain validation only.

  --enum                Run username enumeration.

  --spray               Run password spraying.

Credentials:
  -u USERNAME, --username USERNAME
                        Username(s) delimited using commas.

  -p PASSWORD, --password PASSWORD
                        Password(s) delimited using commas.

  -U USERFILE, --userfile USERFILE
                        File containing list of usernames.

  -P PASSFILE, --passfile PASSFILE
                        File containing list of passwords.

  --paired PAIRED       File containing list of credentials in username:password
                        format.

Password Spraying Configuration:
  -c COUNT, --count COUNT
                        Number of password attempts to run per user before resetting
                        the lockout account timer.
                        Default: 1

  -l LOCKOUT, --lockout LOCKOUT
                        Lockout policy's reset time (in minutes).
                        Default: 15 minutes

Module Configuration:
  --validate-module VALIDATE_MODULE
                        Specify which validation module to run.
                        Default: getuserrealm

  --enum-module ENUM_MODULE
                        Specify which enumeration module to run.
                        Default: office

  --spray-module SPRAY_MODULE
                        Specify which password spraying module to run.
                        Default: oauth2

  --adfs-url ADFS_URL   AuthURL of the target domain's ADFS login page for password
                        spraying.

Scan Configuration:
  --sleep [-1, 0-120]   Throttle HTTP requests every `N` seconds. This can be randomized
                        by passing the value `-1` (between 1 sec and 2 mins).
                        Default: 0

  --jitter [0-100]      Jitter extends --sleep period by percentage given (0-100).
                        Default: 0

  --rate RATE           Number of concurrent connections (attempts) during
                        enumeration and spraying.
                        Default: 10

  --poolsize POOLSIZE   Maximum size of the ThreadPoolExecutor.
                        Default: 10000

  --safe SAFE           Terminate password spraying run if `N` locked accounts
                        are observed.
                        Default: 10

HTTP Configuration:
  --useragents USERAGENTS
                        File containing list of user agents for randomization.

  --timeout TIMEOUT     HTTP request timeout in seconds. Default: 25

  --proxy PROXY         HTTP/S proxy to pass traffic through
                        (e.g. http://127.0.0.1:8080).

  --proxy-url PROXY_URL
                        FireProx API URL.

Output Configuration:
  --output OUTPUT       Output directory for results and test case files.
                        Default: current directory

Debug:
  -v, --version         Print the tool version.

  --debug               Enable debug output.

Modules

Validation

  • getuserrealm (par défaut)

Énumération

  • autologon
  • oauth2 (par défaut)
  • office
  • onedrive
  • rst

Le module onedrive dépend du fait que le(s) utilisateur(s) cible(s) se sont déjà connectés à OneDrive. Si un utilisateur valide n'a pas encore utilisé OneDrive, son compte sera considéré comme 'invalide'.

Pulvérisation

  • activesync
  • adfs
  • autodiscover
  • autologon
  • oauth2 (par défaut)
  • reporting
  • rst

Le module oAuth2 peut être utilisé pour la pulvérisation fédérée, mais il convient de noter que cela fonctionnera UNIQUEMENT si le locataire cible a activé la synchronisation des mots de passe - sinon l'authentification échouera toujours. Le mécanisme par défaut consiste à utiliser le module 'adfs' lorsque la fédération est identifiée.

URLs de base FireProx

Microsoft a rendu plus difficile la pulvérisation de mots de passe, donc l'utilisation d'outils comme FireProx aide à contourner les limitations de débit basées sur les adresses IP.

Pour utiliser FireProx avec o365spray, créez une URL proxy pour le module o365spray donné en vous basant sur les tableaux d'URL de base ci-dessous. L'URL proxy peut ensuite être transmise via --proxy-url.

REMARQUE : Assurez-vous d'utiliser le bon indicateur --enum-module ou --spray-module avec l'URL de base utilisée pour créer l'URL FireProx.

Énumération

La valeur 'tenant' dans l'URL OneDrive est la valeur du nom de domaine fournie via l'indicateur --domain.

Pulvérisation

Randomisation de l'User-Agent

La randomisation de l'User-Agent est maintenant prise en charge et peut être réalisée en fournissant un fichier d'User-Agents à l'indicateur --useragents. o365spray inclut un fichier d'exemple avec plus de 4 800 agents via resc/user-agents.txt.

Les agents dans l'ensemble de données d'exemple ont été collectés à partir des sources suivantes :

  • https://github.com/sqlmapproject/sqlmap/blob/master/data/txt/user-agents.txt
  • https://www.useragentstring.com/pages/useragentstring.php?name=

Omnispray

Le cadre o365spray a été porté vers un nouvel outil : Omnispray. Cet outil vise à modulariser le cadre d'énumération et de pulvérisation original pour permettre un ciblage générique, pas seulement O365. Omnispray inclut des modules modèles pour l'énumération et la pulvérisation qui peuvent être modifiés et utilisés pour n'importe quelle cible.

Remerciements

Bugs

Si des bugs/erreurs sont rencontrés, veuillez ouvrir un Issue avec les détails (ou une Pull Request avec la correction proposée). Voir la section ci-dessous pour plus d'informations sur l'utilisation des versions précédentes.

Utilisation des versions précédentes

Si des problèmes surviennent, essayez de revenir aux versions antérieures avant les réécritures de code :

root@kitploit:~
# v1.3.7
git checkout e235abdcebad61dbd2cde80974aca21ddb188704

# v2.0.4
git checkout a585432f269a8f527d61f064822bb08880c887ef
Télécharger l’outil
ModuleURL de base
autodiscoverhttps://outlook.office365.com/
autologonhttps://autologon.microsoftazuread-sso.com/
oauth2https://login.microsoftonline.com/
officehttps://login.microsoftonline.com/
rsthttps://login.microsoftonline.com/
onedrivehttps://<tenant>-my.sharepoint.com/
ModuleURL de base
activesynchttps://outlook.office365.com/
adfsActuellement non implémenté
autodiscoverhttps://autodiscover-s.outlook.com/
autologonhttps://autologon.microsoftazuread-sso.com/
oauth2https://login.microsoftonline.com/
reportinghttps://reports.office365.com/
rsthttps://login.microsoftonline.com/
AuteurOutil/RechercheLien
gremwello365enum : Énumération d'utilisateurs via office.com sans authentificationo365enum
grimhackeroffice365userenum : Recherche et découverte d'énumération d'utilisateurs ActiveSync.office365userenum / article de blog
RaikiaUhOh365 : Énumération d'utilisateurs via Autodiscover sans authentification.UhOh365
dafthackMSOLSpray : Pulvérisation de mots de passe via MSOLMSOLSpray
byt3bl33d3rMSOLSpray : Réimplémentation en PythonGist
nyxgeekonedrive_user_enum : Énumération d'utilisateurs OneDriveonedrive_user_enum / article de blog
Mr-Un1k0d3radfs-spray : Pulvérisation de mots de passe ADFSadfs-spray
Nestori SyynimaaAADInternals : Modules oAuth2 et autologonAADInternals
Daniel Chronlund / xFreed0mInvoke-AzureAdPasswordSprayAttack / ADFSpray : Pulvérisation de mots de passe via l'API de reporting Office 365Invoke-AzureAdPasswordSprayAttack / ADFSpray
Optiv (Plusieurs auteurs)Go365 : Module d'énumération d'utilisateurs RST et de pulvérisation de mots de passeGo365
byt3bl33d3rSprayingToolkit : Références de codeSprayingToolkit
sensepostruler : Références de codeRuler