
Una raccolta di strumenti per Azure AD/Entra per scopi di sicurezza offensiva e difensiva
(Rogue Office 365 e Azure (attivo) Directory)
ROADtools è un framework per interagire con Azure AD. Consiste in una libreria (roadlib) con componenti comuni, lo strumento di esplorazione di Azure AD ROADrecon e lo strumento ROADtools Token eXchange (roadtx).
ROADlib è una libreria che può essere utilizzata per autenticarsi con Azure AD o per costruire strumenti che si integrano con un database contenente dati di ROADrecon. Il modello di database in ROADlib viene generato automaticamente in base alla definizione dei metadati dell'API interna di Azure AD. ROADlib risiede nel namespace ROADtools, quindi per importarlo nei tuoi script usa from roadtools.roadlib import X
ROADrecon è uno strumento per esplorare le informazioni in Azure AD sia dal punto di vista del Red Team che del Blue Team. In breve, ecco cosa fa:
ROADrecon utilizza funzionalità Python async ed è compatibile solo con Python 3.10 e successivi (lo sviluppo è fatto con Python 3.11, i test vengono eseguiti con versioni fino a Python 3.14).
Ci sono diversi modi per installare ROADrecon:
Utilizzando una versione pubblicata su PyPi
Le versioni stabili possono essere installate con pip install roadrecon. Questo aggiungerà automaticamente il comando roadrecon al tuo PATH.
Utilizzando una versione da GitHub
Ogni commit su master viene automaticamente compilato in una versione rilasciata con Azure Pipelines. Questo assicura che tu possa installare l'ultima versione della GUI senza dover installare npm e tutte le sue dipendenze. Puoi scaricare i file di build di roadlib e roadrecon dagli artefatti di Azure Pipelines (clicca sul pulsante "1 Pubblicato". I file di output della build sono archiviati in ROADtools.zip. Puoi installare direttamente i file .whl o .tar.gz usando pip oppure decomprimere entrambi e installare le cartelle nell'ordine corretto (roadlib per primo):
pip install roadlib/
pip install roadrecon/
Puoi anche installarli in modalità sviluppo con pip install -e roadlib/.
Sviluppare il front-end
Se vuoi apportare modifiche al front-end Angular, devi avere node e npm installati. Poi installa i componenti da git:
git clone https://github.com/dirkjanm/roadtools.git
pip install -e roadlib/
pip install -e roadrecon/
cd roadrecon/frontend/
npm install
Puoi eseguire il frontend Angular con npm start o ng serve usando Angular CLI dalla directory roadrecon/frontend/. Per compilare i file JavaScript nella directory dist_gui di ROADrecon, esegui npm run build.
Vedi questa pagina Wiki su come iniziare.
roadtx è uno strumento per scambiare e utilizzare diversi tipi di token emessi da Azure AD. Supporta molti diversi flussi di autenticazione, registrazione dei dispositivi e operazioni relative a PRT. Per una panoramica dello strumento, consulta il wiki di roadtx.
Ci sono diversi modi per installare roadtx. Nota che roadtx richiede Python 3.10 o successivo.
Utilizzando una versione pubblicata su PyPi
Le versioni stabili possono essere installate con pip install roadtx. Questo aggiungerà automaticamente il comando roadtx al tuo PATH.
Utilizzando una versione da GitHub
Puoi clonare questo repository e installare roadlib e poi roadtx per assicurarti di avere le ultime versioni sia dello strumento che della libreria:
pip install roadlib/
pip install roadtx/
Puoi anche installarli in modalità sviluppo con pip install -e roadtx/.
Vedi il Wiki su come usare roadtx. Vedi anche il blog di rilascio.