ニュース

「Microsoft Edge」の「めっちゃすげえセキュリティモード」、CET/ACGの導入で鉄壁に

Mac(Intel/M1)、Linuxへの対応、WebAssembly対応のインタープリター開発も進行中

公式ブログ「Microsoft Browser Vulnerability Research」

 「Microsoft Edge 98」では、セキュリティ強化モード(enhanced security mode)の場合にレンダラープロセスで「CET」と「ACG」が有効となる。米Microsoftは2月16日(現地時間)、公式ブログ「Microsoft Browser Vulnerability Research」でその取り組みを解説している。

 セキュリティ強化モードは以前、弊紙で「めっちゃすげえセキュリティモード」として紹介したことのあるもの。レンダラープロセスに最新のセキュリティ技術を導入する上でJavaScriptの高速化技術「JIT」が障害となっていたことから、思い切ってこれを諦め、パフォーマンスよりセキュリティを重視したモードだ。

 セキュリティ強化モードは互換性に問題が出ることもあるため、初期設定では無効化されている。有効化するには、設定画面の[プライバシー、検索、サービス]セクション(edge://settings/privacy)で[Web でのセキュリティの強化]オプションをONにする必要がある。

セキュリティ強化モード

 これを有効化すると、「Edge 98」以降で下記の追加保護がレンダラープロセスに適用される。

  • Control-flow Enforcement Technology(CET):ハードウェアによって強制された新しいスタック保護機能
  • Arbitrary Code Guard(ACG):メモリの書き込み・実行権限を制限し、マルウェアに乗っ取られたプロセスから他のプロセスへ被害が拡大するのを抑止するエクスプロイト緩和機能

 セキュリティ強化モードには「バランス」と「厳格」という2つのセキュリティレベルが設けられている。「厳格」にセットするとすべてのWebサイトにセキュリティ強化を強制するが、「バランス」は信頼性の高いと判断されたWebサイトを例外リストに登録し、セキュリティ強化を適用しない。これにより、日常のタスクを妨げることなく、見慣れないWebサイトへ誘導されたときだけセキュリティレベルを引き上げることができる。現状の強化セキュリティはWebAssembly(WASM)をサポートしないため、それを利用するWebサイトを手動で例外リストへ登録できるようにするためでもある。

セキュリティ強化モードには「バランス」と「厳格」という2つのセキュリティレベルが設けられている
「バランス」レベルでは、手動で例外サイトを登録することも可能

 これに加え、Microsoftはユーザー独自の「バランス」レベル例外リストを自動構築する実験を行っているとのこと。Microsoftが一律に「信頼できるサイトのリスト」を定めるよりも、ユーザーごとにそのリストがバラバラである方が攻撃者が標的を定めにくいためとのことで、例外リストの構築には「Chromium」に内蔵されているサイトエンゲージメントスコアの仕組みが活用されている。

「Chromium」に内蔵されているサイトエンゲージメントスコア(edge://site-engagement/)

 なお、これらの取り組みはWindows環境で先行して行われているが、同社はMac(Intel/M1)とLinuxへの対応も進めているとのこと。Linux版「Edge」v99.0.1140.0以降では、Windows環境のACGをエミュレートする実験的なフラグが追加されている。

 また、WebAssembly(WASM)でACGをサポートするため、新しいWASMインタープリターの開発が進んでいる。このインタープリターは「Drum Brake」と呼ばれており、JITを使わず、一般的なWASMのユースケースを妨げないことを目標に開発されているという。計算量の多いWebサイトではパフォーマンス低下などのトレードオフが発生すると予想されているが、必要なメモリ量はむしろ少なくなるようだ。このWASMインタープリターは今月末の「Edge 101 Canary」でお披露目された後、さらなる実験やテスト、安定化を経て、最終的にはStableチャンネルで提供される。