Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
Tools/GitHubGitHub/cnotin/m365_groups_enum
OSINT (Open Source Intelligence)ReconnaissanceInformation GatheringCloud Security
GitHubcnotin/m365_groups_enum

m365_groups_enum

Enumerate Microsoft 365 Groups in a tenant with their metadata

View Repository
55165 years agoReviewed by Kitploit

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share
m365_groups_enum — Enumerate Microsoft 365 Groups in a tenant with their metadata | Kitploit

Enumerate Microsoft 365 Groups in a tenant with their metadata

Description

The all_groups.py script allows to enumerate all Microsoft 365 Groups in a Azure AD tenant with their metadata:

  • name
  • visibility: public or private
  • description
  • email address
  • owners
  • members
  • Teams enabled?
  • SharePoint URL (e.g. for Teams shared files)

All of this, even for private Groups! Read more about this on my blog article "Risks of Microsoft Teams and Microsoft 365 Groups"

The reporting.py script will take the JSON output from all_groups.py and generates a CSV files allowing to quickly identify sensitive private or public groups.

Installation

Requirement: Python 3 only

  1. Download the repository
  2. Install requirements with
root@kitploit:~
pip install -r requirements.txt

Usage

You will need a valid account on the tenant. Different authentication methods are supported:

  • via login + password (MFA not supported)
root@kitploit:~
python all_groups.py -u [email protected] -p MyPassw0rd
  • via device authentication, which supports MFA via the browser. Launch then follow instructions
root@kitploit:~
python all_groups.py --device-code

Other methods are also offered. You can read the ROADTools documentation or run the script without any argument to get help.

root@kitploit:~
python all_groups.py

That's all, you don't need more options! The script output will be in all_groups.json in the current directory.

Then, if you want a nicer and more concise output from this JSON, use reporting.py to transform it:

root@kitploit:~
python reporting.py

It automatically takes all_groups.json in the current directory, and outputs to all_groups.csv in the same directory.

Acknowledgements

This project uses for authentication the very helpful roadlib from ROADTools by @dirkjanm

Download Tool