Windows Defender Application Guard を試してみたかった:ハードウェア分離型セキュリティの実態
賢いソフトウェア、つまり哲学的なレベルで正しく設計されたツールには目がありません。戦術的な些細な不満を解消するのではなく、戦略的な問題を解決するようなツールです。Windowsにおけるこの種の設計の好例が、EMETとExploit Mitigationです。これらは「設定して忘れる」タイプのセキュリティ概念であり、悪質なソフトウェアを除外するという時代遅れのブラックリストモデルを採用していません。代わりに、不正なメモリ命令をフィルタリングするという哲学的なアプローチを取っています。アプリが何であろうと、異常な動作をすれば即座に停止させられるのです。
そんな私だからこそ、Microsoftが発表した「Windows Defender Application Guard」というソリューションに強い興味を抱きました。これはハードウェア分離を活用して脅威をブロックする仕組みです。まさに私好みのツールに聞こえます。シグネチャもなければ、いたちごっこもありません。代わりに分離されたブラウジングインスタンスを提供し、その中で何が起きても外部には漏れません。まるでラスベガスのように。さっそくテストを始めました。
Application Guard のセットアップ
しかし、早速希望を打ち砕かれることになりました。Application Guardは他の2つのセキュリティソリューションと同様にエンタープライズ向けに設計されており、少なくともWindows 10 Proが必要です。ところが私のテストマシンにはそれがありませんでした。失敗すると分かりきっていましたが、それでもテストを完了させて記事にしたかったのです。ここから学べる重要な教訓があるからです。この記事の最後に幸せな結末はないかもしれませんが、少なくとも中身のないネット記事を読むことにはならないはずです。
もちろん、いくらか恥ずかしげもない自己宣伝の要素もあります(私自身ではなく)。Application Guardは、基盤となる分離エンジンとしてMicrosoft Edgeを使用します(バックグラウンドではHyper-Vが動作)。そのため、FirefoxとChrome向けのブラウザ拡張機能として提供されているのです。そう、お読み間違いではありませんよ。Edgeを使って分離タブを起動できる拡張機能をインストールするわけです。昔はFirefoxにIETabというものがありましたね。よく似ていますが、基盤技術が異なり、互換性ではなくセキュリティに焦点が置かれています。
まずFirefox拡張機能をインストールしました。すると、もう1ステップ必要だと通知するタブが開き、本体となるApplication Guardアプリをストアから入手するよう促されました。この設計には多くの理由から、大きな疑問を持ちました。

第一に、私の記憶が正しければ、Windows Enterpriseでは通常ストアを使いません。第二に、Windows Phoneの悲しい終焉により、ストアという発想自体がほぼ無意味になっており、ユーザーをそこに誘導しても価値がありません。第三に、App Guardコンポーネントはコントロールパネルからインストールする必要があります――4年経った今でも、設定アプリよりこちらの方が有用で実用的です。第四に、ストアにアクセスすると当然オンラインアカウントの使用を促されますが、ローカルアカウントやエンタープライズログオンを使っている環境では、これは完全に的外れです。

この時点で、自分の運用環境への影響も確認することになりました。ストアとWindows Updateの設定を変更し、関連サービスを無効化していたため、Windowsはコンパニオンアプリをインストールできなかったのです。そこでサービスを一時的に有効化し、アプリをインストールしてから再度無効化しました。簡単な作業です。
ところが、アプリのセットアップ中に、なんとFirefoxでのブラウジングがブロックされました! そうです、App Guard拡張機能がインターネット接続を妨げていたのです。繰り返しますが、これは悪しき設計です。ユーザーにセットアップの即時完了を強いる一方で、セットアップ中に必要な情報や回答を調べるためのWebアクセスまで奪ってしまうからです。

App Guard拡張機能を無効化すれば回避はできますが、それにしても……。もっとエレガントなやり方はいくらでもあったはずです。例えば、4つの異なる経路に散在したセットアップをひとつのバンドルとして提供するとか、断片的な手順をやめて一括で進めるとか。

このステップが完了すると、今度はFirefox拡張機能の画面に別の不足項目が表示されました! そしてこれが、私にはどうにもできないものでした――Homeエディションだからです。しかし、なぜ最初からこれを表示しなかったのでしょうか? この方式では、結局のところストアへ誘導してアプリをインストールさせることだけが目的だったように感じられます。

本当に苛立ちを覚えました。システムがHomeエディションでこの技術を利用できないにもかかわらず、コンパニオンアプリのインストールを求める理由がないからです。しかし、Microsoftは同じ過ちを繰り返しているようです。GWXによる強引なマーケティングがあり、強制アップデートがあり、そして今度はこれです。プロフェッショナルとは言えません。
そもそも、このソフトウェアが真剣な業務用途を想定したものなら、対象ユーザーがストアで右往左往することはありません。ほぼ終わったプラットフォームとなったストアを使うこともないでしょう(私のLumia 950よ、嘆かわしい限りです)。ローカルアカウントを使っている可能性も高く、エンタープライズ環境ではまったく別のルールが適用されるのです。
Microsoftは本来、Hyper-VやApplication GuardといったWindowsオプション機能の追加からシステム構成までをすべて行う、単一のMSIまたはEXEファイルを提供し、ブラウザユーザーには拡張機能の設定だけを任せる、という形にできたはずです。それだけの話です。しかし、どこかに「ストア」というチェックボックスがあり、そこにチェックを入れる必要があったようです。さらに細かい注意書きを読むと、診断データの収集についての言及まであります。はあ。学習することはないのでしょうか?
そして、すべてが正常に動作する環境が整えば、次は実際の構成フェーズに進むことになります。
セキュリティ上のメリット
Application Guardを実際にテストできるようになるまで、評価は保留にします――私の不完全な試みよりも詳しく掘り下げたghacksの記事を読んでみるのも良いでしょう。ただし、私には数多くの疑問があります。もしEMETやExploit Mitigationと同じ理にかなった哲学で作られているなら、卓越した製品になるはずです。しかし、そうだとしたら……。まず、現在のEdgeはChromeと同じエンジンを使用しており、セキュリティやサンドボックスの考え方は似通っています。その場合、Application Guardがもたらす追加のメリットとは何なのでしょうか?
また、Application GuardはExploit Mitigationとどう共存するのでしょうか? 私は各種プログラムに対して緩和策を有効にしていますが、Edgeについては無効です。使っていないからです。ということは、ブラウザ自体のベースラインセキュリティとは無関係に、脆弱性対策を施した私のFirefoxの方が、対策なしのEdgeよりも安全だということになるのでしょうか?
Firefoxといえば、AdblockやNoScriptを使っていれば、ノイズやゴミの大部分を除去しているはずで、それは偶然にもセキュリティリスクと重なるものです。Application Guardは、こうした対策ではカバーされない追加の利点を提供してくれるのでしょうか?
最も重要な疑問
Homeエディションのユーザーは、この優れた機能を利用できません。しかし、もし本当に優れたものなら――読めた範囲の情報に基づく推測で、実際のテストはまだですが――次のような問いが浮かびます。
もしApplication Guardがそれほど重要で効果的なら、なぜHomeエディションのユーザーは保護されないまま放置されているのか? 逆に、Homeエディションのユーザーが既に十分なセキュリティを備えているなら、Application Guardに本当の実用価値はあるのか?
まとめ
Application Guardは非常に魅力的な技術に聞こえます。しかし現時点の実装は荒削りです。まず、Homeエディションユーザーが除外されていますが、まあ理解できます。セットアップはぎこちなく、ブラウザ拡張機能の画面で段階的にチェックボックスを操作させる理由はありません。システムが非対応なら、ストアのステップは不要なのです。そしてどのみち不要です。ポストモバイル時代のMicrosoftにおいて、ストアは実行可能な配布手段とは言えず、ProやEnterpriseの典型的な運用形態ともうまく整合しません。加えて、セキュリティ面での実効性や、分離環境で使われるブラウザとしてのEdgeの価値についても、実務的な疑問が残ります。
どうしてもこう感じずにはいられません。これは単なる優れたセキュリティ機能以上の何かである、と。約15年にわたってMicrosoft製ブラウザのシェアが低下し続けた後、何とかして人々にEdgeを使わせようとする試みに見えるのです。コンテナ+分離という全体のアイデア自体は非常に興味深いものです。新鮮で、革新的で、私の好きな種類のお楽しみです。しかし、それが本当の問題、すなわち人々がブラウザで愚かな行動を取るという問題を解決してくれるのでしょうか? そして、いわゆるドライブバイ型の攻撃は、現代のFirefoxやChromeにおいてまだ現実的な脅威なのか? 分かりません。あるかもしれません。
いつの日か、実用的な答えを見出したいものです。もしApplication GuardがEMETたちと同等の堅牢性と柔軟性を備えているなら、ブラウザエンジンのことはさておき、価値あるツールになるかもしれません。現時点では懐疑的です。最初の体験がかなり不満足なものだったからです。まあ、良いでしょう。続報にご期待ください。
それでは。
-
Windowsログオンアプリケーション(winlogon.exe)とは?主な役割と安全性の確認方法
Windowsでは、パソコンの操作中に常に多数のプロセスがバックグラウンドで動作しています。Runtime BrokerやSystem Interrupts、DWM(デスクトップ ウィンドウ マネージャー)といったプロセス名を目にしたことがある方も多いでしょう。これらのプロセスはそれぞれ重要な役割を担い、Windowsの正常な動作を支えています。 その中でも特に知っておくべき重要なプロセスの一つが「Windowsログオンアプリケーション」、すなわちwinlogon.exeです。 今回は、Windowsログオンアプリケーションとは何か、なぜ重要なのかについて詳しく解説していきます。 Window
-
Microsoft Defender Application Guardを有効にする方法【コントロールパネル・PowerShell対応】
Microsoft Defender Application Guardは、Hyper-V上で動作する軽量仮想マシンであり、その主な役割はMicrosoft Edgeを独立したコンテナ内で実行することです。この分離環境の中で閲覧したスパイウェアサイトが、メインのPCへ影響を及ぼすことはありません。さらに、Edgeブラウザは空の状態で起動するため、ユーザーのデータは一切含まれていません。そのため、たとえ攻撃者が侵入したとしても、あなたに対して情報を悪用することはできません。 Microsoft Defender Application Guardを有効にするには? Microsoft Defen