- 会員限定
- 2023/09/14 掲載
Application Guardを解説、分離環境でMicrosoft EdgeとOfficeアプリの保護を可能に
山市良のマイクロソフトEYE
IT 専門誌、Web 媒体を中心に執筆活動を行っているテクニカルライター。システムインテグレーター、IT 専門誌の編集者、地方の中堅企業のシステム管理者を経て、2008年にフリーランスに。雑誌やWebメディアに多数の記事を寄稿するほか、ITベンダー数社の技術文書 (ホワイトペーパー) の制作やユーザー事例取材なども行う。2008年10月よりMicrosoft MVP - Cloud and Datacenter Management(旧カテゴリ:Hyper-V)を毎年受賞。岩手県花巻市在住。
主な著書・訳書
『インサイドWindows 第7版 上』(訳書、日経BP社、2018年)
『Windows Sysinternals徹底解説 改定新版』(訳書、日経BP社、2017年)
『Windows Server 2016テクノロジ入門 完全版』(日経BP社、2016年)
『Windows Server 2012 R2テクノロジ入門』(日経BP社、2014年)
『Windows Server 2012テクノロジ入門』(日経BP社、2012年)
『Windows Server仮想化テクノロジ入門』(日経BP社、2011年)
『Windows Server 2008 R2テクノロジ入門』(日経BP社、2009年)
など
Microsoft Defender Application Guardとは何か?
「Microsoft Defender Application Guard」(以下、Application Guard)と「Windows Sandbox」は、64ビット(x64)版のWindows 10、およびWindows 11のPro以上のエディションでサポートされる高度なセキュリティ機能です。この機能は、Windows Server 2016で初めてサポートされるようになったハイパーバイザー分離モードのコンテナ技術(WindowsコンテナをDockerエンジン上での実行するモードの1つ)を、Windows 10以降のセキュリティ機能に応用したものです。「Microsoft Defender System Guard」とも呼ばれる「仮想化ベースのセキュリティ(VBS)」が有効な環境で利用できます。
VBSが有効なシステムでは、通常のOSカーネルとは別に、ハイパーバイザーで分離された環境でセキュアカーネルが動作します。
その上で重要なシステムサービス(分離されたローカルセキュリティ機関(Isolated LSA)など)が動作し、「デバイスガード」(許可されていないドライバーのロードをブロック)や「資格情報ガード」(資格情報を読み取ろうとする試みをブロック)といったセキュリティ機能を提供します。
Application GuardとWindows Sandboxもまた、通常のOSとはハイパーバイザーで分離されたアプリケーションの実行環境を提供するものです(画面1、画面2)。
通常の仮想マシン(Hyper-V仮想マシンなど)でも、分離された実行環境を提供することができますが、Application GuardとWindows Sandboxは仮想マシンではなく、Dockerベースのコンテナアプリと同様に、アプリケーション実行環境を提供するのが、Hyper-V分離コンテナであるという点が異なります。
Hyper-V分離コンテナーと仮想マシンの違い
Hyper-V分離コンテナは、Application GuardやWindows Sandboxをホストから分離する別のカーネルを実行し、その上でWindowsサービスやアプリケーションが実行されます。OSのシステムファイルはホストのOSのものが利用されるため、仮想マシンのような大きな仮想ハードディスクをダウンロードする必要はありません。ネットワークはNATスイッチにより分離されますが、インターネットアクセスは可能です。ホストとのファイルシステムやレジストリの差分は、一時ファイル(sandbox.vhdx)に保存され、破棄可能です。
そして、仮想マシンとは異なり、カーネルスケジューラーの統合、メモリ共有、仮想GPUなどで、パフォーマンスが最適化され、仮想マシンで実装するよりも、少ないコンピューティングリソースとディスク領域で動作します(図1)。
画面3は、Microsoft Edge用Application GuardとWindows Sandboxのそれぞれが動作しているときのファイルI/OをProcess Monitor(Windows Sysinternalsのユーティリティ)で監視したものです。
vmmemMDAGとvmmSandBoxというプロセス名の違いはありますが、同じようなファイルI/Oを行っていることがわかるでしょう。
コンテナのシステムファイルのイメージは、「C:\ProgramData\Microsoft\Windows\Containers\BaseImages」の下に準備され(大部分はホストOSのC:\Windows内のファイルへのリンク)、変更差分が「C:\ProgramData\Microsoft\Windows\Containers\...\sandbox.vhdx」に書き込まれ、「sandbox.vhdx」は適切なタイミングで破棄されることになります。
【次ページ】Application GuardでOfficeアプリの保護も可能に
関連タグ
関連コンテンツ
PR
PR
PR