ROADTools is a powerful framework designed for exploring and interacting with Microsoft Azure Active Directory (Azure AD). It is widely used by both Red Team and Blue Team security professionals to assess, analyze, and secure Azure AD environments. ROADTools consists of two main components: ROADlib and ROADrecon.
ROADlib: The Core Library for Azure AD Integration
ROADlib is the foundational library of ROADTools. It allows you to:
- Authenticate securely with Azure AD.
- Access and manipulate Azure AD data.
- Build custom security tools integrated with ROADrecon databases.
The database model in ROADlib is automatically generated based on the Azure AD internal API metadata, ensuring accurate and up-to-date mappings of Azure AD objects. ROADlib can be easily imported in Python using:
from roadtools.roadlib import X
This library is fully compatible with Python 3.9 and above, leveraging modern asynchronous features for fast and efficient data processing.
ROADrecon: Exploring Azure AD Like a Pro
ROADrecon is a dedicated tool for in-depth exploration of Azure AD environments. It provides insights that are valuable for both offensive security testing (Red Team) and defensive monitoring (Blue Team).
Key features:
- Offline Database Creation: Automatically generates an SQLAlchemy-backed database using Azure AD metadata.
- Asynchronous Data Collection: Uses async HTTP requests to gather comprehensive Azure AD information efficiently.
- Plugin System: Query the database and output results in multiple formats.
- Web-Based Analysis Interface: Built with Angular, the interface allows intuitive exploration and visualization of Azure AD data offline.
- Modern Compatibility: Supports Python 3.9+ with full async capabilities for faster execution and better stability.
Installation
1. Installing via PyPI
The easiest method is using pip:
pip install roadrecon
This command also adds the roadrecon
CLI tool to your PATH, enabling quick command-line access.
2. Installing via GitHub
For the latest development versions:
git clone https://github.com/dirkjanm/ROADtools.git
pip install -e roadlib/
pip install -e roadrecon/
This approach allows you to stay up-to-date with the latest features and fixes.
Front-End Development (Optional)
To customize the Angular front-end:
- Ensure Node.js and npm are installed.
- Navigate to the front-end folder and install dependencies:
cd roadrecon/frontend/
npm install
- Run the Angular app locally:
npm start
- Build production-ready JavaScript files:
npm run build
Resources & Download
You can access ROADTools directly from its official GitHub repository, where you’ll find the latest versions, documentation, and installation instructions: