「水飲み場型攻撃」という言葉があるように、Webブラウザは主要な攻撃ターゲットの1つだ。Windows 10には、PCのWebブラウザを経由した攻撃に向けた対策も強化した。そのために標準のWebブラウザをInternet Explorerから、セキュリティを強化したEdgeに変更した*3)。
*3) Edge のセキュリティの強化(マイクロソフト TechNet)。
Webブラウザを悪用する攻撃は大きく2種類に分けることができる。フィッシングや架空請求などの”詐欺”と、Webブラウザの拡張機能や脆弱(ぜいじゃく)性を使ってデバイス上でコードの実行を試みる“ハッキング”だ。まずは詐欺対策について紹介する。
オンラインサービスの認証情報を狙ったフィッシングやリスト型攻撃などによる被害が後を絶たない。これらの被害が生じる本質的な問題は、オンラインサービスが、ユーザーIDとパスワードによる認証に頼っている点にある。
Windows 10では、より安全で簡単な認証方式を導入している。FIDOアライアンス*4)のWeb認証に従った「Windows Hello」と「Microsoft Passport」だ。Windows Helloは、生体認証システムを用いることでパスワードを使わない安全なWindowsシステムへのログオンを提供する。加えてMicrosoft Passportで利用する秘密鍵と公開鍵を生成し、デバイス内に保存する。特に秘密鍵はTPM(Trusted Platform Module、セキュリティチップ)に保存する。
*4) FIDO Allianceはオンライン認証技術の標準化団体(Webサイト)。生体認証や多要素認証の利用に向けた標準を策定している。
ユーザーがオンラインサービスにアクセスした場合を例に、実際の認証の流れを追ってみよう。
Microsoft Passportは、FIDOをサポートするオンラインサービスの利用を開始する場合などに、Windows Helloが生成した公開鍵をオンラインサービスに登録する。
オンラインサービスとデバイスの認証は、デバイスのTPMに保存した秘密鍵と、オンラインサービスに登録した公開鍵を使ったチャレンジ&レスポンス方式で進める*5)。つまり、デバイス自体を多要素認証の1つとして活用する。
*5) オンラインサービスなどに対してランダムな値(チャレンジ値)を送信し、このチャレンジ値をサービス側が暗号化した値(レスポンス値)を送信元に戻す。返されたレスポンス値と元のランダム値から計算した値を比較することで、正しい相手にアクセスできていることを確認する認証方式。認証ごとに異なるランダムな値を使用するため、パスワード方式に比べて安全性が高い。
Microsoft Passportを使えば、オンラインサービスに登録した証明書が漏えいした場合でも、オンラインサービスの悪用には至らない。
その理由はこうだ。パスワードを使わないため、フィッシングサイトのような偽サイトは、ログオンに必要なアカウント情報を取得できない。加えてオンラインサービスが侵害されて登録した公開鍵に相当する証明書が盗まれた場合でも、ユーザーの手元にあるデバイスのTPMに記録された秘密鍵を攻撃者が入手できないため、悪用はできない(図4)。
ただし、Microsoft HelloとMicrosoft Passportの組み合わせも万能ではない。現段階では、ユーザーIDとパスワードを使うオンラインサービスが多いためだ。引き続きフィッシングなどへの従来型の対策が必要だ。
従来型の対策とは、Windows 7で導入された「Microsoft SmartScreen」である。フィッシングサイトやマルウェアを含むサイトのリストを利用することで防御する。Windows 10では証明書のレピュテーション(信用)を評価し、不適切な証明書を使用しているサイトへのアクセスもブロックする。
SSL(Secure Sockets Layer)やTLS(Transport Layer Security)などで利用するサーバ証明書は、本来なら信頼できるものだ。だが、2011年に起きたDigiNotarの事件(関連記事)に加えて、Stuxnetでは第三者の正規の証明書を利用し、Flameではマイクロソフト証明書を偽装するなど、証明書に対する攻撃が無視できない状況にある。証明書だからといって、必ずしも信頼できるとはいえなくなっている。
SmartScreenの目的は、このような信頼できない証明書による被害を防ぐことだ。アクセス時に証明書を厳密に評価し、偽証明書を使った可能性のあるサイトなどを検出し、疑わしいサイトへのアクセスをブロックする*6)。
*6) 「より信頼できる証明書利用環境へ向けて〜 Internet Explorer 11 SmartScreen 証明書評価」(マイクロソフト TechNet)
Copyright © ITmedia, Inc. All Rights Reserved.