標的型攻撃に備える。検知する。

MobiControl v14 Manual


シグネチャベース
(パターンファイル照合等)による
ウィルス/マルウェア対策の限界
既知のマルウェアでの攻撃は、
全体の4%

Microsoftの調査では、
攻撃の96%は、
未知のマルウェアによる

とのことです

攻撃を受ける前からの備え

Microsoft
正常性構成証明書
による脆弱点の診断
脆弱点が見つかれば
MobiControlが
アラート発報
仮想セキュアモードを構成してないPCを検出

攻撃を受けたときの迅速な検出と対応

MobiControl パッケージの配布により
Microsoft Defender for Endpointへの
リモート・オンボーディング
Microsoft Defender for Endpoint が、
攻撃を検知。当該エンドポイントのレジストリに結果を記述。
MobiControlによるアラート発報と
該当エンドポイントの自動隔離
Microsoft Defender for Endpoint は、
MicrosoftのEDR (Endpoint Detection and Response)
ソリューションです。

A. シグネチャーベースのウィルス/マルウェア対策の限界

シグネチャーベースのウィルス/マルウェア対策とは、 既知のウィルス/マルウェアの内的特徴(シグネチャ)と、デバイス内の新規の ファイル/アプリのそれを、照合して、攻撃を検出する対策です。

しかし、殆どの攻撃者は、既知のウィルス/マルウェアを使っての攻撃をしてこないことが、広く知られています。 Microsoftの調査では、「 攻撃の96%は、未知のマルウェアによる」とのことです。従って、シグネチャーベースでのウィルス/マルウェア対策の効果には 限界があります

E. 標的型攻撃の手口の例」を参照ください。

B. 攻撃を受ける前からの備え

B-1. MobiControlサーバは、正常性構成証明書を取り寄せる

(図1)

コンソールの端末一覧で、Windows Modern エンドポイントの「端末の名前」を、クリックすると、当該エンドポイントの「端末の詳細」タブの画面が現れます。 その右下部分には、(図1)のようなデバイス正常性構成証明書が表示されています。

Windows Modern エンドポイントが、起動したら、そのセキュリティ面での脆弱ポイントに関するデータを、Microsoft DHA(Device Health Attestation)サーバに、送ります。 (DHAサーバに送るデータは、PCのハードウェアに関するデータで、HDDなどのストレージ内のデータは送りません。)

Windows Modern エンドポイントが、MobiControlサーバにチェックインすることをトリガーとして、MobiControlサーバは、 Microsoft DHAにアクセスして、デバイス正常性構成証明書を取得します。

Microsoft DHAが、セキュリティ面での脆弱性があると、判断した項目には、 が付いています。

各項目が示す内容は、「D. デバイス正常性構成証明書の各項目の意味」を参照ください。

B-2. セキュリティ深刻度が重大な項目を指定する

(図1)の の「全体的なデバイス正常性」の値には、次の3種類があります。

(表1)

(1)端末が準拠しています = コンプラインスに適合正常
(図1)に、が付いた 項目がない
(2)端末が準拠していません = コンプラインスに非適合異常
(図1)の中に、貴社の判断として、セキュリティ深刻度が重大と指定した項目があり、それに、 が付いた
(3)端末が準拠しています(警告あり) = 警告があるが、一応、コンプライアンスに適合しているとみなす見かけ上、正常
(図1)の中に、が付いた 項目があるが、これらは、貴社の判断として、セキュリティ深刻度が重大として、指定した項目ではなかった

  • (図1)の項目の中のいくつかを、「セキュリティ深刻度が重大」と指定してください。その方法は、 「デバイス正常性構成証明書の項目を種別する」を参照ください。
  • デフォルトでは、貴社は、どの項目も、「セキュリティ深刻度が重大」として指定していません。 従って、(表1)の(3)のケースになっています。

(図2)


(図2)は、コンソールの端末一覧で、端末モードが、「Active」となっているWindows Modernのみを表示した例です。
この中に、端末モードが、「Active」となっていても、びっくりマーク が付いている エンドポイントがあります。
これは、(表1)の (2) のケースのエンドポイントです。 コンソール管理者は、セキュリティ面で脆弱性があるエンドポイントを、すぐに気付くことができます。
が付いている エンドポイントの問題点の解決をすることになります。

デバイス正常性構成証明書とMDMについては、Microsoftの文書である 「正常でない Windows 10 ベースのデバイスの検出」 を参照ください。

B-3. 仮想セキュアモード

標的型攻撃の怖い点の1つは、1台の社内PCが捕まえられることで、そのPC内に保存してある会社サーバへの認証情報(ログイン名とパスワード)が盗まれることです。 会社として利用するクラウドサーバの認証情報も盗まれます。 これを盗むことで、攻撃者は、会社サーバに不法アクセスしてきます。

会社サーバへのアクセス認証は、AD_DS(Active Directory Domain Service)などのディレクトリサービス、若しくは、 Azure IdP や OKTA等のIDプロバイダにより行います。
サーバへの認証情報は暗号化して保存されています。 仮想セキュアモードであるマシンと、ないマシンでは、(表2)のような違いがあります。

(表2)

仮想セキュアモードか否か 会社サーバへの認証情報の保存場所認証情報の復号化鍵の保存場所
仮想セキュアモードであるOSの管理領域 OSの管理領域外安全
仮想セキュアモードでないOSの管理領域 OSの管理領域危険

攻撃者は、OSの管理領域内のデータなら、簡単に盗みます。そして、会社サーバに、色々なルートからアクセスします。
OSの管理領域外には、誰もが、直接的にはアクセスできません。

仮想セキュアモードは、泥棒が、留守の家に侵入しても、金庫の中は盗めないようになっている居宅に似ています。 仮想セキュアモードでない場合は、机の上に、現金を放置している居宅に似ています。

下記に、ご興味がある方は、下記の「E. 仮想セキュアモード」を、ご一読ください。
  • 仮想セキュアモードのOS管理領域外とは何か?
  • マシン利用者は、どのようにして、OS管理領域外にアクセスするか?
  • 攻撃者は、なぜ、OS管理領域外にアクセスできないのか?

(図1)の 正常性構成証明書の診断項目には、エンドポイントが、仮想セキュアモードになっているか否かの項目も、含まれています。

C. 攻撃を受けたときの迅速な検出と対応

C-1. Microsoft Defender for Endpointとは

Microsoft Defender for Endpointは、Microsoft のEDR(Endpoint Detection and Response) ソリューションです。 未知の手口での攻撃に対処します

(図3)

  • エンドポイントの挙動収集センサー
    Windows 10 には、デフォルトで組み込まれているセンサーがあります。これを利用しない手はありません。 このセンサーは、OSの挙動(動作シグナル)情報を収集します。 不審な挙動を見つけると、Microsoft Defender for Endpoint クラウドの中の、エンドポイント別に隔離された領域に、その挙動情報を送ります。
  • クラウドでのセキュリティ分析
    Microsoft Defender for Endpointのクラウドは、エンドポイントから送られてきた挙動情報を捉えて、分析をし、レスポンスを返します。 レスポンスは、PC内のレジストリハイブに書き込まれます。
    Microsoftには、世界中の10億台を超えるWindowsデバイスからのオンライン異常報告や 2兆5,000億のインデックス化されたWeb URL、 分析済みの100万件以上の不審なファイルなどがあります。
    Windowsに関係する各社のアプリ、ミドルウェア、ハードウェア、サービスなどから成り立つ協業体(エコシステム)があります。 Office365などのクラウドサーバやオンライン資源があります。
    これらの膨大なビッグデータと、ファシリティ基盤から得られた情報を基に、AI分析を行い、高度な脅威の実体を、看破し、レスポンスをエンドポイントに返します。
  • 脅威に対する知見
    Microsoft社内のハンター、セキュリティチーム、及びパートナーからの、脅威に関する多くの知見が、集積しています。 攻撃者の攻撃ツール、手口、手順に関する知見です。 Microsoft Defender for EndpointのAI判断には、これらの知見も、組み込まれています。

Microsoft Defender for Endpointのライセンス要件は、Microfostの文書 「 Microsoft Defender for Endpoint 最小要件」を参照ください。
Microsoft Defender for Endpointには、無料試用版があります。Microsoft Defender for Endpointは、2020年10月まで、Microsoft Defender ATP が、その名称でした。

C-2. Microsoft Defender for Endpoint のオンボーディングをリモート設定

エンドポイントPCをMicrosoft Defender for Endpointに参加させることを、オンボーディングと呼びます。
リモートPCを一斉にオンボーディングさせるには、2つの方法があります。
  1. グループポリシーを使用する
    詳しくは、Microsoftの文書 「 グループ ポリシーを使ったコンピューターのオンボーディング」を参照ください。
  2. MDMを使ってオンボーディングさせる
    MobiControlを使って、オンボーディングさせるには、「Microsoft Defender for Endpointをリモート設定」を参照ください。 MobiControlのパッケージ・スタジオを使って、パッケージを作成します。そのパッケージを構成プロファイルに積み込んで、指定する端末グループの エンドポイントに送ります。パッケージを受け取ったエンドポイントは自動的に、Microsoft Defender for Endpointにオンボーディングします。

C-3. MobiControlによるアラート発出と隔離

Microsoft Defender for Endpoint クラウドが、該当エンドポイントの異常を検知すると、当該エンドポイントのレジストリハイブ、「HKEY_LOCAL_MACHINE」に その旨を書き込みます。 エンドポイントは、MobiControlサーバに、レジストリバイブの値を通知します。その通知タイミングは、次の2つのどちらかを選択設定できます。
  • データ収集ルール独自のスケジュール(例: 10分毎)
  • チェックインスケジュール (デフォルトでは、2時間毎)
通知を受信したMobiControlサーバは、その監視データの値が異常値であれば、 社内のCSIRT関係者にメールを自動発信します。
CSIRT = Computer Security Incident Response Team。 組織内の情報セキュリティ問題を専門に扱う、インシデント対応チーム。
攻撃の検知から、アラート発出までのスキームを説明します。 次の「Microsoft Defender for Endpointで検知された攻撃に対処」をクリックしてください。

Microsoft Defender for Endpointで検知された攻撃に対処

  • MobiControlでは、次の準備をしておきます。
    1. 該当のレジストリハイブのデータを、監視データとして、登録します。
      監視データの指定」を参照して、監視データとして登録してください。
      監視データには、任意の名前をつけます。(図4)では、サンプルとして、監視データの名前として、Defender_for_Endpoint を登録しました。

      (図4)

    2. データ収集ルールを作成します。
      (図4)で、監視データを設定すると、データ収集ルールの作成画面である (図5)の左コラムに、その監視データの名前が挿入されます。右向き矢印を押すと、それが、右コラムに移動します。 これで、その監視データが、データ収集ルールの対象データとなります。 データ収集ルール作成により、MobiControlサーバは、その監視データを、受信できる体制ができます。

      (図5)

      (図5)の設定が終わると、監視データとして指定した、レジストリハイブの値を、エンドポイントは、MobiControlサーバに通知するようになります。 データ収集ルールの実行タイミングは、次の2段階になっています。
      1. データ収集ルール独自のスケジュール
        エンドポイントのMobiControlエージェントが、 レジストリハイブからデータを収集し、MobiControlエージェント内に保存。
      2. チェックイン・スケジュール (デフォルトでは、2時間毎。変更可能。)
        MobiControlエージェントが、MobiControlサーバに送信。
      仮に、a.が20分毎で、b.が2時間毎とします。そうすると、b.の実行では、異なる時刻の6つの値を、まとめて送ってきます。
    3. アラートルールを作成します。
      (図5)のように、データ収集ルールの作成が完了すると、 アラートルール作成画面の アラート項目に、監視データの名前が掲示されます。(図6)の例では、「Defender for Endpoint」がイベント名の列に現れています。 この「Defender for Endpoint」は、上記a.項で、名前を付けた監視データです。

      (図6)

      監視データの値が正常でない場合には、アラートを発出するように、(図6)に、値を入力します。
      アラートルールの作成オプションとして、次の2項を設定できます。

      • アラートメールを送るメールアドレス
        社内のCSIRT関係者のメールアドレスを指定します。 MobiControlサーバは、非正常な値を持つ監視データを受信したら、すぐに、自動メールを発信します。
      • 当該エンドポイントの、移動先となる端末グループ。
        移動先の端末グループは、エンドポイントの隔離用の端末グループです。 MobiControlサーバは、このエンドポイントを隔離用の端末グループに移動させることで、エンドポイントの機能を抑止します。 この端末グループには、 VPN設定プロファイルやアプリカタログルールなどを適用しておきません。従って、 VPN経由での社内資源にはアクセスできなくなります。アプリカタログルールやパッケージで、インストーラを送った会社指定アプリは、アンインストールされます。
    4. 監視データの値(正常、or 非正常)の端末台数分布をグラフ表示できます。
      グラフが示す端末プロパティの変更 」を参考にして、グラフが図示する端末プロパティとして、 監視データの名前、例えば、Defender for Endpointを選択してください。コンソールの初期画面の上部に掲示されるグラフを一見するだけでも、異常端末の出現を知ることができます。
    5. 端末一覧でのコラム
      端末一覧のコラムの1つして、「監視データの名前」例えば、「Defender for Endpoint」という コラムタイトルを、掲示することができます。「端末一覧の端末プロパティの入れ替え」を参照ください。 どのエンドポイントが異常かを、端末一覧で見つけやすくなります。
    6. 「端末の詳細」タブに、表示
      端末一覧で該当エンドポイントの名前をクリックすると、「端末の詳細」タブが現れます。

      (図7)

    Microsoft Defender for Endpoint が検知した脅威を、MobiControlを利用することにより、迅速に知ることができます。 どのエンドポイントが攻撃を受けたかを把握できます。対象のエンドポイントを隔離できます。

    Windows Defender for Endpointに関して、詳しく知りたい場合は、Microsoftの次の文書を参照ください。

D. 標的型攻撃の手口の例

(図8)

  1. 暗号化したマルウェア
    業務を装ったメールに、マルウェアファイルを暗号化して添付してきます。 (拡張子 .zip .zi_ .pdf .docx など)
    暗号化されたファイルだと、マルウェア対策ソフトは検疫できません。ウィルスパターン(シグネチャ)を検出できないからです。
    攻撃者は、別のメールの本文で、復号化パスワードを 送ってきます。巧妙に業務を装ったメールなので、添付ファイルを開けたとしても、そのPCユーザを責めるだけでは対策となりません。 1回目のメール添付は、正常な業務関係文書で安心させます。後日送る2回目のメール添付が、暗号化されたマルウェアというケースもあります。
    PCユーザに復号化パスワードを送らず、暗号化されたままで、PC内に潜伏するケースもあります。
  2. ファイルレス攻撃
    ファイルレス攻撃はメモリにのみ悪性コードが展開され、HDD/SSDにはマルウェアファイルがありません。 従って、マルウェア対策ソフトではスキャン検疫できません。
    ファイルレス攻撃の手口は多くあります。例えば、C\Windows\System32\傘下のWindows正規exeファイルになり替わり、 これが起動するとメモリ展開されます。メモリ展開もsvchost.exeのメモリ空間に潜りこむ場合もあります。
  3. 暗号化されたままで潜伏
    マルウェアファイルが、暗号化されたままで 潜伏し続ける場合もあります。暗号化されているので、マルウェア対策ソフトではスキャン検疫できません。 一方、攻撃者は正規のアプリの起動に伴い起動されるDLLファイルを、悪いファイルにすり替えておきます。 そのDLLファイルが、暗号化されたマルウェアを復号化するようになっています。正規アプリが起動すると、悪いDLLファイルも起動し、悪性コードがメモリ空間に展開されます。
  4. マルウェア対策ソフトの無効化やPC内Firewallを無効化
    攻撃者は、マルウェア対策ソフトの無効化やPC内Firewallの無効化を行います。 そして、PsExecなどのWindows正規ツールを使ってリモート操作をします。
    これらの無効化を実施するコードは、裏サイトで公開されており、攻撃者は簡単に手に入れることができます。
  5. 既知のマルウェアでの攻撃は、全体の4%
    Microsoftの調査では、攻撃の96%は、未知のマルウェアによるとのことです。 つまり、既知のマルウェアによる攻撃は、攻撃全体の4%しかありません。従って、既知のマルウェアのウィルスパターン(シグネチャ) では、攻撃の4%しか、食い止められないことになります。
攻撃者は、シグネチャベースのマルウェア対策ソフトをすり抜けてくる新しい手法を、次々と発案し、侵入してきます。
シグネチャベースの マルウェア対策ソフトをすり抜けてくる標的型攻撃が、必ず、襲ってくるという前提で、備えておく必要があります。
OSの不審な挙動で、攻撃を検知する方法が、これからのセキュリティ対策です。

E. 仮想セキュアモード

侵入したマルウェアは、PCのメモリに残っている会社サーバへの認証情報(ログイン名とパスワード)を盗みます。 そして、会社サーバにアクセスし、機密情報をダウンロードします。
認証情報は、ハッシュ化して保存されていますが、それでも、侵入者は、Pass-the-Hash 手法で、管理者権限を奪います。 これは、認証情報が、OSの管理下にあることに、遠因があります。

VBS(Virtual Based Security)構成の概要
(図9)

Windows10 Enterprise またはWindows10 Educationでは、仮想化技術を使って、 一般のアプリが動作するWindows OSの環境と、認証情報を保護する環境を分離することができるように なりました。この構成を、VBS(Virtual Based Security)構成と呼びます。

仮想化ソフト(ハイパーバイザー)の上に、2つの仮想マシンが稼働します。
1つは、Windows OS。もう1つは、仮想セキュアモード(VSM=Virtual Secure Mode)。
仮想セキュアモードは、Windows OSとは独立した環境です。

会社サーバへのアクセス認証は、AD_DS(Active Directory Domain Service)などのディレクトリサービス、若しくは、 Azure IdP や OKTA等のIDプロバイダにより行います。
それらの認証情報自体は、Windows OS側に保存されます。 しかし、その認証情報は暗号化され、 復号に必要な復号鍵は、仮想セキュアモード側に保存されます。
認証情報の復号や、それに基づく処理も、仮想セキュアモード側で実行します。

(図10)

ローカル管理者権限(アドミン権限)を持っていても、仮想セキュアモードには、直接アクセスができません。 仮に、マルウェアが、 ローカル管理者権限(アドミン権限)を盗み、Windows OSを操作するようになったと仮定します。 それでも、仮想セキュアモードには侵入できません。

Windows OSと仮想セキュアモードの間は、RPC(Remote Procedure Call)で通信します。 仮想セキュアモードにアクセスできるのは、SLAT(Second Level Address Translation)で マッピングされたメモリからのみとなります。 SLATは、ゲストOSの仮想メモリとホストOSの物理メモリのアドレス変換を、ハードウェアで実施する仮想化支援機能です。 IntelとAMDで、その仕組みが若干異なります。 VBS構成を実現するには、CPUがx64アーキテクチャになっている必要があります。 このハードウェアの動きを、ソフトウェア側からはトレースできません。
変換するメモリアドレスは、物理的アドレスで、ハードウェアが管理しています。OSを含むソフトウェア側からは、知ることはできません。
このメモリアドレスは、固定ではありません。常に変わります。

マルウェアは、ソフトウェアですから、SLATを利用しての通信ができません。従って、仮想セキュアモードにはアクセスできません。

Windows OS側にある暗号化された認証情報を盗んでも、暗号化されているので、会社サーバにはログインできません。

VBSが保護する認証情報は、AD_DS または IDプロバイダに対する認証情報です。これ以外の認証情報、例えば、任意のログインIDとパスワードを、VBSは、保護しません。
オンプレミスであれ、クラウドであれ、企業が使う機密サーバへのログインには、AD_DS または IDプロバイダによる 認証を経るようにしておかなければなりません。
ローカルPCに対するアドミン権限パスワードも、VBSは、保護しません。
PCへのログインには、AD_DSまたはIDプロバイダによる認証とするのが、望ましいでしょう。
用語を整理しておきます。
  • VBS=Virtual Based Security
    2つの仮想マシンを構成し、セキュリティ強度を高める構成のことを指す。 Windows OSを1つの仮想マシンで稼働させ、仮想セキュアモードをもう1つの仮想マシンで稼働させる。
  • 仮想セキュアモード(VSM=Virtual Secure Mode)
    VBS構成での2つの仮想マシンの1つ。 復号鍵と復号化された認証情報を格納し、認証情報の処理を実行する。
  • Credential Guard
    VBSを構成することで、認証情報を保護するWindows10の機能

仮想セキュアモードは、Active Directoryのグループポリシーで、設定します
その方法は、Microsoftの下記の文書の中の「Credential Guardの管理」セクション以下に記述されています。
Credential Guard によるドメインの派生資格情報の保護

F. Windows Defenderの設定

シグニチャ・ベースのマルウェア対策として、MicrosoftのWindows Defenderがあります。 Windows Defenderは、無償で、Windows10なら、Editionを問わず適用ができます。
MobiControlは、エンドポイントPCに、Windows Defenderを強制設定できます。
Windows Defenderの設定」を参照ください。 ウィルススキャンをするPC内の対象ドライブ、スキャン対象外とするパス(フォルダ)、クィックスキャン及びフルスキャンの時間間隔、シグネチャ(ウィルスパターン)の更新間隔、 スキャンをするときのCPU最大使用率などを設定できます。