ROADtools is a framework to interact with Azure AD. It currently consists of a library (roadlib) and the ROADrecon Azure AD exploration tool.
ROADlib is a library that can be used to authenticate with Azure AD or to build tools that integrate with a database containing ROADrecon data. The database model in ROADlib is automatically generated based on the metadata definition of the Azure AD internal API. ROADlib lives in the ROADtools namespace, so to import it in your scripts use
from roadtools.roadlib import X
ROADrecon is a tool for exploring information in Azure AD from both a Red Team and Blue Team perspective. In short, this is what it does:
- Uses an automatically generated metadata model to create an SQLAlchemy backed database on disk.
- Use asynchronous HTTP calls in Python to dump all available information in the Azure AD graph to this database.
- Provide plugins to query this database and output it to a useful format.
- Provide an extensive interface built-in Angular that queries the offline database directly for its analysis.
async Python features and is only compatible with Python 3.6-3.8 (development is done with Python 3.8).
There are multiple ways to install ROADrecon:
Using a published version on PyPi
Stable versions can be installed with
pip install roadrecon. This will automatically add the
roadrecon command to your PATH.
Using a version from GitHub
Every commit to master is automatically built into a release version with Azure Pipelines. This ensures that you can install the latest version of the GUI without having to install
npm and all it's dependencies. Simply download the
roadrecon zip files from the Azure Pipelines artifacts, then unzip both and install them in the correct order (
pip install roadlib/ pip install roadrecon/
You can also install them in development mode with
pip install -e roadlib/.
Developing the front-end
If you want to make changes to the Angular front-end, you will need to have
npm installed. Then install the components from git:
git clone https://github.com/dirkjanm/roadtools.git pip install -e roadlib/ pip install -e roadrecon/ cd roadrecon/frontend/ npm install
You can run the Angular frontend with
npm start or
ng serve using the Angular CLI from the
dist_gui directory, run
See this README for more info.
- Hakin9 is a monthly magazine dedicated to hacking and cybersecurity. In every edition, we try to focus on different approaches to show various techniques - defensive and offensive. This knowledge will help you understand how most popular attacks are performed and how to protect your data from them. Our tutorials, case studies and online courses will prepare you for the upcoming, potential threats in the cyber security world. We collaborate with many individuals and universities and public institutions, but also with companies such as Xento Systems, CATO Networks, EY, CIPHER Intelligence LAB, redBorder, TSG, and others.
- Blog2022.12.13What are the Common Security Weaknesses of Cloud Based Networks?
- Blog2022.10.12Vulnerability management with Wazuh open source XDR
- Blog2022.08.29Deception Technologies: Improving Incident Detection and Response by Alex Vakulov
- Blog2022.08.25Exploring the Heightened Importance of Cybersecurity in Mobile App Development by Jeff Kalwerisky