Azure Resource Graph (ARG) API に対してクエリを実行することで、攻撃パス データをプログラムで使用できます。 API 応答には、広範なシナリオではなく、実際の脅威に焦点を当てた外部主導の悪用可能な攻撃パスのみが含まれます。
ARG API に対してクエリを実行する方法について説明します。
API を使用して攻撃パスデータを自動的に処理する
次の例は、実行できる ARG クエリの例を示しています。
サブスクリプション 'X' のすべての攻撃パスを取得します。
securityresources
| where type == "microsoft.security/attackpaths"
| where subscriptionId == <SUBSCRIPTION_ID>
特定の攻撃パスのすべてのインスタンスを取得します (たとえば、 Internet exposed VM with high severity vulnerabilities and read permission to a Key Vault)。
securityresources
| where type == "microsoft.security/attackpaths"
| where subscriptionId == "<Subscription ID>"
| extend AttackPathDisplayName = tostring(properties["displayName"])
| where AttackPathDisplayName == "<DISPLAY_NAME>"
API 応答スキーマ
次の表に、API 応答から返されるデータ フィールドを示します。
| フィールド | Description |
|---|---|
| ID | 攻撃パス インスタンスの Azure リソース ID |
| 名前 | 攻撃パスインスタンスの一意の識別子 |
| タイプ | Azure リソースの種類 (常に等しい) microsoft.security/attackpaths |
| テナント ID | 攻撃パス インスタンスのテナント ID |
| ロケーション | 攻撃パスの場所 |
| サブスクリプション ID | 攻撃パスのサブスクリプション |
| Properties.description | 攻撃パスの説明 |
| Properties.displayName | 攻撃パスの表示名 |
| Properties.attackPathType | 攻撃パスの種類 |
| プロパティ.手動補正の手順 | 攻撃パスの手動修復手順 |
| プロパティ.リフレッシュ間隔 | 攻撃パスの更新間隔 |
| プロパティ.潜在的影響 | 攻撃パスが侵害される可能性がある影響 |
| Properties.riskCategories | 攻撃パスのリスクのカテゴリ |
| Properties.entryPointEntityInternalID | 攻撃経路の開始地点のエンティティ内部ID |
| Properties.targetEntityInternalID | 攻撃パスのターゲット エンティティの内部 ID |
| Properties.assessments | エンティティの内部 ID と、そのエンティティのセキュリティ評価のマッピング |
| Properties.graphComponent | 攻撃パスを表すグラフ コンポーネントの一覧 |
| Properties.graphComponent.insights | 攻撃パスに関連する分析情報グラフ コンポーネントの一覧 |
| Properties.graphComponent.entities | 攻撃パスに関連するエンティティ グラフ コンポーネントの一覧 |
| Properties.graphComponent.connections | 攻撃パスに関連する接続グラフ コンポーネントの一覧 |
| Properties.AttackPathID | 攻撃パス インスタンスの一意識別子 |