
Azure AD/Entraの攻撃的および防御的なセキュリティ目的のためのツールコレクション
(Rogue Office 365 および Azure (アクティブ) Directory ツール)
ROADtools は Azure AD と対話するためのフレームワークです。共通コンポーネントからなるライブラリ (roadlib)、Azure AD 探索ツール ROADrecon、および ROADtools Token eXchange (roadtx) ツールで構成されています。
ROADlib は、Azure AD での認証や、ROADrecon データを含むデータベースと統合するツールの構築に使用できるライブラリです。ROADlib のデータベースモデルは、Azure AD 内部 API のメタデータ定義に基づいて自動生成されます。ROADlib は ROADtools 名前空間に存在するため、スクリプトでインポートするには from roadtools.roadlib import X を使用します。
ROADrecon は、Red Team と Blue Team の両方の観点から Azure AD の情報を探索するためのツールです。簡単に言うと、以下のことを行います。
ROADrecon は async Python 機能を使用しており、Python 3.10 以降でのみ互換性があります(開発は Python 3.11 で行われ、テストは Python 3.14 までのバージョンで実行されます)。
ROADrecon をインストールするには複数の方法があります。
PyPi 上の公開バージョンを使用する
安定版は pip install roadrecon でインストールできます。これにより、roadrecon コマンドが自動的に PATH に追加されます。
GitHub 上のバージョンを使用する
master へのすべてのコミットは、Azure Pipelines でリリースバージョンに自動的にビルドされます。これにより、npm とそのすべての依存関係をインストールしなくても、GUI の最新バージョンをインストールできます。roadlib と roadrecon のビルドファイルは、Azure Pipelines の成果物 からダウンロードできます("1 Published" ボタンをクリック)。ビルド出力ファイルは ROADtools.zip に格納されています。.whl または .tar.gz ファイルを pip で直接インストールするか、両方を解凍して正しい順序でフォルダをインストールできます(roadlib が先):
pip install roadlib/
pip install roadrecon/
また、pip install -e roadlib/ で開発モードでインストールすることもできます。
フロントエンドの開発
Angular フロントエンドに変更を加えたい場合は、node と npm がインストールされている必要があります。次に、git からコンポーネントをインストールします。
git clone https://github.com/dirkjanm/roadtools.git
pip install -e roadlib/
pip install -e roadrecon/
cd roadrecon/frontend/
npm install
Angular フロントエンドは、roadrecon/frontend/ ディレクトリから Angular CLI を使用して npm start または ng serve で実行できます。JavaScript ファイルを ROADrecon の dist_gui ディレクトリにビルドするには、npm run build を実行します。
開始方法については、この Wiki ページ を参照してください。
roadtx は、Azure AD によって発行されたさまざまな種類のトークンを交換および使用するためのツールです。多くの異なる認証フロー、デバイス登録、PRT 関連の操作をサポートしています。ツールの概要については、roadtx Wiki を参照してください。
roadtx をインストールするには複数の方法があります。roadtx には Python 3.10 以降が必要であることに注意してください。
PyPi 上の公開バージョンを使用する
安定版は pip install roadtx でインストールできます。これにより、roadtx コマンドが自動的に PATH に追加されます。
GitHub 上のバージョンを使用する
このリポジトリをクローンし、roadlib をインストールしてから roadtx をインストールすることで、ツールとライブラリの両方の最新バージョンを確実に入手できます。
pip install roadlib/
pip install roadtx/
また、pip install -e roadtx/ で開発モードでインストールすることもできます。