Surface 2とゼロデイ脆弱性についての教訓と今後の対策(覚書)
緊急対策パッチの公開で、当面の危険は回避されたが・・
MicrosoftがIE6~11に適用される緊急対策パッチを5月1日(日本時間5月2日)に公開したことで、ゼロデイ脆弱性が広く攻撃される事態は回避されました。
(なお、パッチの適用についてはこちらの記事をご参照ください)
しかし、ゼロデイ脆弱性そのものは今後も発見される可能性があり、また、それはMicrosoftのOS・アプリケーションに限った話ではありません。今後発見されうる脆弱性への対策に、今回の教訓を生かしていかなければいけません。
そこで、この記事では、今回の脆弱性発見で得られた教訓と、Surface 2での今後の対策について自分の頭の整理としてまとめてみたいと思います。
プロライター本田雅一氏と笠原一輝氏が、相次いて考察記事を公開
5月2日にパッチが公開されてから、プロライター本田雅一氏、笠原一輝氏が相次いで今回の教訓と今後の対策についての考察記事を投稿しました。
双方ともにコンシューマー向けにわかりやすく解説しているので、ぜひご一読いただきたいと思います。以降はこれらを参照しつつ進めます。
(本田雅一氏)
マイクロソフト「IE」、残された教訓と課題 | オリジナル | 東洋経済オンライン | 新世代リーダーのためのビジネスサイト
(笠原一輝氏)
教訓1:どのOS、どのブラウザでもゼロデイ脆弱性をゼロにはできない
今回「IEを使わず、代替ブラウザを使う」という対策が政府機関などで推奨されたことで、「今後はIEを使わなければ安全」という声も見られます。
しかし、FirefoxやChrome、もっと言えば現存するすべてのOS、すべてのアプリケーションには脆弱性が発見される可能性があります。
「100%安全なソフトウェアはこの世に存在しない」ということは常に念頭に置いておく必要があると思います。
どのようなプログラムも完璧ではなく、ゼロデイアタックと言われる未発見のセキュリティホールを利用した攻撃は、あらゆるウェブブラウザを通じて行われている。今回、緊急避難的にIEの使用中止の呼びかけが拡がったが、では避難先のChromeやFirefoxがIEよりも安全かと言えばそうではない。
(本田氏)
すでに述べたとおり、Internet Explorerにこうしたバグ(プログラムの欠陥のこと)があることが分かってから、Microsoftがパッチを配布するまでにタイムラグがあったため、対応策として盛んにChromeやFirefoxなどのほかのブラウザにすれば安全だという論調を見かけることが多かった。確かに今回の問題(VML関連のバグ)を一時的に回避する手段としてそれは正しかったが、今後もInternet Explorerではなく、ChromeやFirefoxなどを使えば安全かといえば、決してそんなことはない。
(笠原氏)
ただし、すべてのWindowsパソコンに標準搭載されていてアンインストールできず、また、企業が業務で広く使っているという性格から、IEが攻撃されるリスクが相対的に高いのは確かでしょう。
教訓2:普段からの備えと適切な事後回避策が重要
ゼロデイ脆弱性は常に発見されうる、という前提でユーザーは何ができるのか。
「OSとアプリケーションを常に最新の状態に保つ」ことはセキュリティ確保の王道ですが、ことゼロデイ脆弱性に関しては、追加的な防御手段を講じる余地があると私は考えました。
具体的には、以下の2つです。
このうち、1.の事前の対策は、例えれば予防接種を打つようなものです。
2.の事後的な緊急回避策については、「起こってみないとわからない」ので、普段から「何か起こったら信頼できる情報が入ってくる」ルートを確保しておくことが重要です。
Surface 2での具体的な対策については、記事の後半でまとめて整理します。
教訓3:パッチが提供されるまでの期間が重要
今回、Microsoftはゼロデイ脆弱性の存在を公表したのが4月26日、セキュリティアドバイザリを公表して回避策を示したのが4月28日、緊急対策パッチを公開したのが5月1日でした。
すなわち、脆弱性の公表→パッチ提供までの期間は5日間です。
この対応が早いのか遅いのかいろいろご意見があろうかと思います。
ただ、攻撃が広がる前にパッチが提供されたことで、大きな混乱は生じたものの事態が長引くことなく収拾されたことは、評価されるべきではないかと思っています。
笠原氏の見解のごとく、Microsoftのセキュリティ対策チームは緊急事態に対応する能力を持っている、という印象を私は持ちました。
対策:Surface 2ユーザーが備えるべき具体的対策は何か?
ここからは、Surface 2での具体的なゼロデイ脆弱性対策について。
(1)事前の対策:「拡張保護モード」の有効化
今回、脆弱性を回避する方法としてMicrosoft・日本のセキュリティチームから提示されたのは、最終的に以下の3つでした。
・攻撃を失敗させるための対策 (EMET)
セキュリティ更新プログラムの提供は、たとえば建物への侵入経路を塞ぐことに相当します。建物の構造の変更を伴うため、対策 (工事) を完了するには時間がかかります。これに対して EMET は、警報装置のような働きをします。そして、EMET が攻撃を検知すると、すべての通路を閉鎖 (プログラムの停止) することで、攻撃を防ぎます。EMET は、このような手法で、今回の脆弱性に限らず、幅広く攻撃を防ぐことが可能です。
・Internet Explorer をシステムから分離する (拡張保護モード)
攻撃を行うためには、標的となったプログラム (Internet Explorer) を乗っ取り、コンピューター内部に深く侵入する必要があります。建物への侵入を例にすると、侵入者は、まずは侵入可能な部屋に入り込み、その部屋の扉を内側から開け、より価値のある場所へと移動しようとします。
今回の脆弱性では、Internet Explorer が悪用を試みる部屋に相当します。Internet Explorer の拡張保護モードは、部屋のドアが内側からも開かないようにする技術で、部屋に侵入をされた場合でも、部屋から出ることを阻止することで攻撃を防ぎます。
・攻撃の糸口を塞ぐ (VML の無効化)
今回の脆弱性を悪用するためには、まず Internet Explorer の一部として動作するプログラムを悪用し、Internet Explorer の特定の情報を見つける必要があります。建物の例でいえば、侵入に利用できる経路に関する図面を入手し、その図面を使って Internet Explorer という部屋に入り込むようなものです。このため、攻撃の糸口となる情報を失くしてしまえば攻撃を防ぐことが可能です。
このうち、Surface 2向けに推奨されたのは「拡張保護モードの有効化」です。スタート画面から起動するModern UI版のIEはこれ相当の機能が常時有効になっています。
この「拡張保護モード」を、今後は常時オンにしておくのがよいと思います。
なぜこの機能が初期状態で有効化されていないのか正確な理由はわかりませんが、Modern UI版のIE11で閲覧可能なサイトであれば、この機能が有効であろうと問題なく閲覧できるはずです。
私のSurface 2は4月29日から有効のまま使い続けていますが、今のところ全く問題ありません。
なお、「VMLの無効化」は今回の脆弱性に限った回避策であり、また、「EMET」はSurface 2にインストールできないので、これらは今後の参考にはなりません。
(2)事後の対策:信頼できる情報ルートの確保
新たなゼロデイ脆弱性が見つかった場合、(a)第一報を見て危険の程度をつかむことと、(b)その後随時公表される回避策(Surface 2の場合はMicrosoftから)を把握すること、の2点が重要です。
こういうリアルタイムの情報収集に向いているのがTwitterです。
(a) 第一報
- Internet Watch(@internet_watch)などのWeb系メディアが早いです。
- 英語ですが、海外ジャーナリストの個人アカウントはもっと早いです(@thurrott, @maryjofoley)。
(b) 回避策
- Microsoft 日本のセキュリティチーム(@JSECTEAM):日本語でユーザー向けにわかりやすいガイドを提供しています
- 独立行政法人 日本情報処理推進機構 緊急対策アラート(@ICATalerts):政府系機関の見解がわかります。
なお、わたくしもこれらの情報源から何かわかった場合は、当ブログないし@rtsurfaceにて解説しています。
余談:Surface 2とゼロデイ脆弱性の脅威
ここからは余談です。公式のソースはありません。
当サイトで何回か記事にしましたが、Surface 2の搭載するWindows RT8.1は、マルウェア全般や既知の脆弱性には強い特徴を持っています。
(1)ユーザーの手でプログラムを自由にインストール・実行できない、(2)OSや各種アプリケーション・ドライバ類のアップデートがほぼ全自動、であるためです。
それでは、ズバリ、「Surface 2&Windows RTは、ゼロデイ脆弱性に弱いのか?」という疑問。
私は強いと思っています。なぜなら、「仮に脆弱性を突かれても、その後実行される不正プログラムはIntel CPU向けである可能性が高い」からです。
Macintoshに対する攻撃が少ないのと同様、Windows全体の中で少数派であるWindows RTを攻撃するインセンティブが攻撃者にはあまりありません。
もちろん、冒頭で触れたとおり「100%の安全」は存在しないので、備えは必須ですが・・・。