資産インベントリを使用してリソースのセキュリティ態勢を管理する

Microsoft Defender for Cloud の [資産インベントリ] ページでは、Microsoft Defender for Cloud に接続したリソースのセキュリティ対策を表示するための1ページが提供されています。

Defender for Cloud は、サブスクリプションに接続されているリソースのセキュリティの状態を定期的に分析して、潜在的なセキュリティの脆弱性を特定します。 その後、これらの脆弱性を修正する方法に関する推奨事項が提供されます。

いずれかのリソースに未処理のレコメンデーションがある場合は、インベントリに表示されます。

このビューとそのフィルターを使用して、次のような質問に対処できます。

  • 強化されたセキュリティ機能が有効になっているサブスクリプションのうち、推奨されるものはありますか?
  • 「Production」というタグが付いているマシンのうち、Log Analytics エージェントがないものはどれか
  • 特定のタグが付いているマシンのうち、未処理の推奨事項があるマシンは何台か
  • (CVE 番号を使用して) 既知の脆弱性を持つ特定のリソース グループ内のマシンは何ですか?

このツールによる資産管理には大きな可能性があり、その範囲は拡大し続けています。

ヒント

資産インベントリ ページのセキュリティに関する推奨事項は、推奨事項に関するページのセキュリティに関する推奨事項と同じですが、ここでは影響を受けるリソースに応じて示しています。 推奨事項を解決する方法の詳細については、「 Microsoft Defender For Cloud でのセキュリティに関する推奨事項の実装」を参照してください。

可用性

側面 詳細
リリース状態: 一般公開 (GA)
価格: Free*
* インベントリ ページの一部の機能 (ソフトウェア インベントリなど) には、有料のソリューションを用意する必要があります
必要なロールとアクセス許可: すべてのユーザー
クラウド: 商用クラウド
各国 (Azure Government、Azure China 21Vianet)

資産インベントリの主な機能

インベントリ ページには次のツールが含まれています。

Main features of the asset inventory page in Microsoft Defender for Cloud.

1 - 概要

フィルターを定義する前に、インベントリ ビューの上部に以下の値のストリップが目立つように表示されます。

  • リソースの合計: クラウドの Defender に接続されているリソースの合計数。
  • 異常なリソース:アクティブなセキュリティのレコメンデーションがあるリソース。 セキュリティのレコメンデーションの詳細については、こちらをご覧ください。
  • 監視されていないリソース:エージェントの監視に関して問題があるリソースです。Log Analytics エージェントがデプロイされていますが、エージェントがデータを送信していないか、正常性に関する他の問題が発生しています。
  • 登録されていないサブスクリプション: 選択したスコープ内のサブスクリプションのうち、Microsoft Defender for Cloud にまだ接続されていないものがあります。

2 - フィルター

ページの上部にある複数のフィルターを使用すると、質問に回答しようとすることによって、リソースの一覧をすばやく絞り込むことができます。 たとえば、" 'Production' というタグが付いているマシンのうち、Log Analytics エージェントがないものはどれですか? " という質問に回答する場合は、 [エージェント監視] フィルターと [タグ] フィルターを組み合わせることができます。

フィルターを適用すると、すぐに概要の値がクエリ結果に関連付けて更新されます。

3 - エクスポートと資産管理ツール

エクスポート オプション - インベントリには、選択したフィルター オプションの結果を CSV ファイルにエクスポートするオプションが含まれます。 クエリ自体を Azure Resource Graph エクスプローラーにエクスポートして、Kusto クエリ言語 (KQL) クエリを絞り込んだり、保存や変更を行ったりすることもできます。

ヒント

KQL のドキュメントでは、いくつかのサンプル データと単純なクエリを組み合わせたデータベースを使用して、この言語の「感触」をつかむことができます。 詳しくは、KQL のチュートリアルをご覧ください。

資産管理オプション - クエリに一致するリソースが見つかると、インベントリに次のような操作のショートカットが表示されます。

  • フィルター処理されたリソースにタグを割り当てる - タグを付けるリソースの横にあるチェック ボックスをオンにします。
  • クラウドの Defender に新しいサーバーを追加する- [Azure 以外のサーバーの追加] ツールバーボタンを使用します。
  • Azure Logic Apps を使用してワークロードを自動化する - [ロジック アプリのトリガー] ボタンを使用して、1 つ以上のリソースでロジック アプリを実行します。 ロジック アプリを事前に準備し、関連するトリガーの種類 (HTTP 要求) を受け入れる必要があります。 Logic Apps の詳細をご覧ください

資産インベントリのしくみ

資産インベントリでは、 azure Resource Graph (ARG)を利用しています。これは、複数のサブスクリプションでクラウドのセキュリティ体制データを Defender に照会する機能を提供する azure サービスです。

ARG は、大規模なクエリの実行機能によってリソースを効率的に探索できるように設計されています。

Kusto クエリ言語 (KQL)を使用すると、資産インベントリは、他のリソースプロパティを使用してクラウドデータに対して相互参照 Defender を使用することによって、詳細な洞察を迅速に生み出すことができます。

資産インベントリの使用方法

  1. Defender for Cloud のサイドバーから、 [インベントリ] を選択します。

  2. [名前でフィルター] ボックスを使用して特定のリソースを表示するか、下記のようにフィルターを使用します。

  3. フィルターの関連するオプションを選択して、実行する特定のクエリを作成します。

    既定では、リソースはアクティブなセキュリティのレコメンデーションの数によって並べ替えられます。

    重要

    各フィルターのオプションは、現在選択されているサブスクリプション内のリソースおよび他のフィルターで選択した項目に固有のものです。

    たとえば、サブスクリプションを 1 つだけ選択していて、そのサブスクリプションに、修復すべき未処理のセキュリティの推奨事項があるリソースがない場合 (異常なリソースが 0 の場合)、 [推奨事項] フィルターにオプションは表示されません。

    Using the filter options in Microsoft Defender for Cloud's asset inventory to filter resources to production resources that aren't monitored

  4. [セキュリティの調査結果に含まれる内容] フィルターを使用するには、脆弱性の検出結果の ID、セキュリティ チェック、または CVE 名からフリー テキストを入力して、影響を受けるリソースをフィルター処理します。

    ヒント

    [セキュリティの調査結果に含まれる内容][タグ] フィルターには、1 つの値のみ指定できます。 複数のフィルターを使用してフィルター処理を行うには [フィルターの追加] を使用します。

  5. Defender for Cloud フィルターを使用するには、1 つ以上のオプション (オフ、オン、一部) を選択します。

    • オフ -Microsoft Defender プランによって保護されていないリソース。 これらのいずれかを右クリックしてアップグレードできます。

      Upgrade a resource to be protected by the relevant Microsoft Defender plan via right-click.

    • Microsoft Defender プランによって保護されているリソース

    • Partial -一部の Microsoft Defender プランが無効になっている サブスクリプション に適用されます。 たとえば、次のサブスクリプションでは、7つの Microsoft Defender プランが無効になっています。

      Subscription partially protected by Microsoft Defender plans.

  6. クエリの結果をさらに調べるには、該当するリソースを選択します。

  7. 現在選択されているフィルター オプションを、Resource Graph エクスプローラーでクエリとして表示するには、 [クエリを開く] を選択します。

    Inventory query in ARG.

  8. 一部のフィルターを定義し、ページを開いたままにした場合、Defender for Cloud は結果を自動的に更新しません。 ページを手動で再読み込みするか、 [更新] を選択しない限り、リソースを変更しても表示される結果には影響しません。

ソフトウェア インベントリにアクセスする

Microsoft Defender for Endpoint との統合を有効にし、Microsoft Defender for Servers を有効にした場合は、ソフトウェア インベントリにアクセスできます。

If you've enabled the threat and vulnerability solution, Defender for Cloud's asset inventory offers a filter to select resources by their installed software.

注意

[空白] オプションを使用すると、Microsoft Defender for Endpoint がない (または、Microsoft Defender for Servers がない) コンピューターが表示されます。

資産インベントリ ページのフィルターと同様に、Azure Resource Graph エクスプローラーからソフトウェア インベントリ データを探索することができます。

Azure Resource Graph エクスプローラーを使用してソフトウェア インベントリ データにアクセスし、探索する例:

  1. Azure Resource Graph エクスプローラーを開きます。

    Launching Azure Resource Graph Explorer** recommendation page

  2. 次のサブスクリプション スコープを選択します: securityresources/softwareinventories

  3. 次のいずれかのクエリを入力し (または、それらをカスタマイズしたり、独自に作成して)、 [クエリの実行] を選択します。

    • インストールされているソフトウェアの基本的な一覧を生成するには:

      securityresources
      | where type == "microsoft.security/softwareinventories"
      | project id, Vendor=properties.vendor, Software=properties.softwareName, Version=properties.version
      
    • バージョン番号でフィルター処理するには:

      securityresources
      | where type == "microsoft.security/softwareinventories"
      | project id, Vendor=properties.vendor, Software=properties.softwareName, Version=tostring(properties.    version)
      | where Software=="windows_server_2019" and parse_version(Version)<=parse_version("10.0.17763.1999")
      
    • ソフトウェア製品の組み合わせでコンピューターを検索するには:

      securityresources
      | where type == "microsoft.security/softwareinventories"
      | extend vmId = properties.azureVmId
      | where properties.softwareName == "apache_http_server" or properties.softwareName == "mysql"
      | summarize count() by tostring(vmId)
      | where count_ > 1
      
    • ソフトウェア製品と別のセキュリティ推奨事項の組み合わせ:

      (この例では、MySQL がインストールされ、管理ポートが公開されているコンピューター)

      securityresources
      | where type == "microsoft.security/softwareinventories"
      | extend vmId = tolower(properties.azureVmId)
      | where properties.softwareName == "mysql"
      | join (
      securityresources
      | where type == "microsoft.security/assessments"
      | where properties.displayName == "Management ports should be closed on your virtual machines" and properties.status.code == "Unhealthy"
      | extend vmId = tolower(properties.resourceDetails.Id)
      ) on vmId
      

FAQ - インベントリ

一部のサブスクリプション、マシン、ストレージ アカウントなどが表示されないのはなぜですか。

[インベントリ] ビューには、クラウドに接続されているリソースの Defender がクラウドセキュリティ対策管理 (CSPM) の観点から一覧表示されます。 フィルター処理によって返されるのは、環境内のすべてのリソースではなく、未処理の (または「アクティブな」) レコメンデーションを含むリソースだけです。

たとえば、次のスクリーンショットは、8 つのサブスクリプションにアクセスできるユーザーを示していますが、現在推奨事項を持っているのは 7 人のみです。 そのため、リソースの種類 = サブスクリプションでフィルター処理すると、アクティブな推奨事項を持つ 7 つのサブスクリプションだけがインベントリに表示されます。

Not all subs returned when there are no active recommendations.

一部のリソースで Defender for Cloud または監視エージェントの列に空白の値が表示される理由

すべての Defender for Cloud で監視されるリソースにエージェントがあるというのではありません。 たとえば、Azure Storage、ディスク、Logic Apps、Data Lake Analysis、Event Hub などの PaaS リソースを使用する場合、Defender for Cloud でエージェントを監視する必要はありません。

価格やエージェントの監視がリソースに関係しない場合、インベントリのこれらの列には何も表示されません。

Some resources show blank info in the monitoring agent or Defender for Cloud columns.

次の手順

この記事では、Microsoft Defender for Cloud の資産インベントリ ページについて説明しました。

関連するツールの詳細については、以下のページをご覧ください。