defender-for-apis について
Azure API Management で公開済みの API を Microsoft Defender for APIs で保護するワークフロー向けスキルです。セキュリティチームによるリスク評価と実行時の脅威検知を支援し、修復には APIM ポリシーを使用します。
主な機能
- 01公開状況とリスクによる API の優先順位付け
- 02Defender for Cloud 経由の API オンボーディング
- 03ポスチャの検出結果と脅威アラートの確認
- 04APIM ポリシーによる問題の修復
- 05検知結果のセキュリティ運用への連携
活用シーン
- 01公開 API の修復優先度の決定
- 02機密データ露出の検出結果の確認
- 03API の不正利用を検知して SOC に通知
- 04新規オンボード API 一覧のトリアージ
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ vinayaklatthe/ microsoft-security-skills --skill defender-for-apisインストール後、Claude Code で/defender-for-apisを入力して読み込まれたか確認します。
詳細
Microsoft Defender for APIs
Defender for APIs は、Azure API Management で公開されている API のセキュリティ態勢を可視化し、リスクに基づいて優先順位を付け、進行中の脅威や不正利用を検出する Microsoft Defender for Cloud のプランです。これは検出とセキュリティ態勢の管理を目的としたもので、WAF や API ゲートウェイではありません。
使用する場面
Azure API Management を通じてすでに公開されている API を保護する際に、リスクに基づく優先順位付けとランタイムの脅威検出が必要な場合に、このスキルを使用します。
このスキルは使用しないでください:
- API セキュリティをゼロから設計する場合(OWASP API Top 10 については
api-security-designを使用してください) - Application Gateway / Front Door の背後にあり、APIM を使用していない API(現時点では対象外です)
- WAF のチューニングやレート制限の設計(Defender ではなく APIM ポリシーで対応します)
最初に保護する API のトリアージ
Defender for APIs は、デフォルトですべての APIM の API をオンボードします。必要なのは優先順位付けです。 この表を使って、インベントリの優先順位を決めてください。
| リスクシグナル | 優先度 | 最初に対処すべき理由 |
|---|---|---|
| 外部公開+認証なし | P0 - 今週 | すでに攻撃対象領域になっており、インターネットからの不正なリクエストが 1 件あるだけでも危険です |
| 外部公開+機密データ(PII、決済、医療)を処理 | P0 - 今週 | 機密データの漏えい(OWASP API3)と BOLA のリスクがあります |
| 外部公開+認証あり | P1 - 今月 | 認証のバイパスやトークンの不正利用のリスクがあります |
| 内部向け+機密データを処理 | P2 - 今四半期 | 内部関係者によるリスクや、ラテラルムーブメントのシナリオがあります |
| 90 日を超えて非アクティブまたは未使用 | 廃止 | 攻撃対象領域を手間なく削減できます |
| 内部向け+機密情報を含まない | P3 - 監視のみ | 直ちに対処すべきリスクは低いです |
経験則: 1 日目に Defender for APIs から 50 件を超える検出結果が表示されても、すべてを修正しようとしないでください。まず、外部公開+機密データで絞り込みます。通常、該当するのは 5~15 件の API で、実際のリスクの 80% を占めます。
アプローチ
- サブスクリプションのスコープでプランを有効にする — Defender for APIs は、Defender for Cloud 内の API ごとの料金が設定されたプランです(API 呼び出し 100 万件ごとに課金されます)。APIM インスタンスを含むサブスクリプションで有効にします。評価用として最初の 30 日間は無料です。 確認方法:Defender for Cloud → Environment settings → Defender plans に「APIs: On」と表示されていることを確認します。
- API をプランにオンボードする — Defender for Cloud → Workload protections → Defender for APIs → Onboard から、APIM インスタンスを選択します。オンボードのために API を再デプロイする必要はありません。 確認方法:約 1 時間以内に API インベントリが表示され、各 API にリスクスコアと検出結果が表示されることを確認します。
- 上記のリスク表に基づいてトリアージする — インベントリを External + Unauthenticated および External + Sensitive data の検出結果で絞り込みます。これらは P0 として扱います。
- APIM レイヤーで修正する — Defender は修正を行いません。APIM ポリシーを使用します。
- 認証なし →
<validate-jwt>またはサブスクリプションキーのポリシーを追加します - 機密データの漏えい →
set-body/応答マスキングのポリシーを確認します - 過剰な列挙 →
<rate-limit-by-key>ポリシーを追加します - 非アクティブな API → 非推奨にするか、製品の公開範囲から除外します 確認方法:APIM ポリシーの公開後 24 時間以内に再スキャンが行われ、検出結果が解消されることを確認します。
- 認証なし →
- 検出結果を SOC に連携する — Defender のアラートは、Microsoft Defender XDR コネクタを介して Defender for Cloud、Defender XDR、Sentinel に送信されます。認証なしのアクセス急増やクレデンシャルスタッフィングのパターンに対する自動化ルールを作成します。 確認方法:テスト用の悪意あるリクエスト(例:1 つの IP から短時間に集中して行われる列挙)によって、Defender XDR ポータルで 15 分以内にアラートが生成されることを確認します。
- 毎月見直す — 新しい API が追加され、古い API は非アクティブになります。リスクの優先順位を最新に保つため、毎月リスク表に基づいてトリアージをやり直します。
ガードレール
- APIM のみが対象です。 Defender for APIs は、Azure API Management を経由する API のみを検出します。Application Gateway、Front Door、または App Service の直接公開を通じて公開されている API は検出できません。APIM 経由にするか、別の制御を使用してください。
- 検出は保護ではありません。 Defender は問題を検出し、APIM ポリシーが修正します。Defender はセキュリティ境界ではなく、優先順位付けエンジンとして扱ってください。
- 料金は呼び出し数に応じて増加します。 トラフィックの多い API(月間数億回の呼び出し)では、Defender for APIs のコストが大きくなる可能性があります。規模を拡大する前に、Azure 料金計算ツールを使用してください。
- 機密データの検出はサンプリングされます。 Defender は API 応答の一部を検査します。完全な DLP 制御として頼らず、既知の機密フィールドには応答マスキングの APIM ポリシーを併用してください。
- オンボーディングによって API は変更されません。 コード変更は不要で、パフォーマンスへの影響もありません。Defender は APIM のテレメトリを読み取ります。本番環境でも安全に有効化できます。
よくあるアンチパターン
- 「すべての検出結果を修正する。」 初日から検出結果が大量に発生し、チームはリスクの低い内部 API のトリアージに疲弊します。優先順位テーブルを使用してください。
- 「Defender for APIs を WAF として扱う。」 そうではありません。WAF は Front Door/Application Gateway/APIM Premium にあります。Defender は検出とセキュリティ態勢の把握を担います。
- 「APIM を省略して Defender for APIs を呼び出す。」 できません。APIM が前提条件です。
- 「非アクティブな API を公開したままにする。」 Defender はそれらを警告しますが、無視すると、廃止したエンドポイントが攻撃対象領域として残り続けます。
- 「オンボーディングしたら、そのまま放置する。」 毎月のトリアージを行わないと、新しい API が監視されないまま追加され、検出結果の把握もずれていきます。
プロンプトの例
API Management の API を Microsoft Defender for APIs にオンボーディングしてください。Defender for APIs で、最初に保護すべき API はどれですか?API の不正使用や機密データの露出を検出するにはどうすればよいですか?API のセキュリティ態勢を確認し、検出結果に優先順位を付けてください。Sentinel で API 攻撃の検出とアラートを設定してください。月間 5 億回の呼び出しに対する Defender for APIs のコストを見積もってください。
Microsoft Learn
- 概要:https://learn.microsoft.com/azure/defender-for-cloud/defender-for-apis-introduction
- デプロイとオンボーディング:https://learn.microsoft.com/azure/defender-for-cloud/defender-for-apis-deploy
- 検出結果の調査(セキュリティ態勢):https://learn.microsoft.com/azure/defender-for-cloud/defender-for-apis-posture
- API Management - バックエンドの保護:https://learn.microsoft.com/azure/api-management/api-management-howto-protect-backend-with-aad
- API Management - レート制限ポリシー:https://learn.microsoft.com/azure/api-management/rate-limit-by-key-policy
- Defender for APIs の料金:https://learn.microsoft.com/azure/defender-for-cloud/defender-for-apis-deploy#prerequisites
コメント
Markdown 対応