先の2月に「Superfish」問題が世間を大きく騒がせたのは記憶に新しい。Lenovo製PCの一部にプリインストールされたSuperfish Visual Discoverは、オンラインショッピングの利便性を向上させるのが主目的のソフトウェアである。だが、自己署名認証局をWindowsにインストールするため、中間者攻撃(MITM)や盗聴(スニッフィング)が可能になってしまった。

MMPCが掲載した「Superfish」の動作状態。本来はこのように画像検索時に広告を挿入するプログラムだ

大まかな流れを紹介しておこう。Lenovoは20日に声明を発表し、翌日21日にSuperfishを自動削除するツールを公開、28日には「よりクリーンかつ安心なPCへの約束」として、McAfee LiveSafeサービスの6カ月間無料サブスクリプションの提供、プリインストールアプリケーション数を減少させることを発表した

MicrosoftもSuperfishをマルウェアと認定し、Windows DefenderやWindows Security Essentialsの定義ファイル、「悪意のあるソフトウェアの削除ツール」によって駆除可能にした。Superfishによるセキュリティの問題として、1つのフローチャートを紹介したい。

MMPCによるSuperfishの図説。Superfishは「証明書を偽装し、信頼に値しないものをWebブラウザーなどに信頼させる」仕組みを持ち、そこにある穴が中間者攻撃に悪用される

上図はMicrosoftの公式ブログに掲載されたものだが、「a」は一般的なSSL/TLSによるセキュア通信としてオンラインバンキングとの通信が安全であることを示している。「b」はSuperfishがルートCA(Certificate Authority: 認証局)で検証されていない状態を示し、オンラインバンキングへは接続できないため、Webブラウザーなどはエラー表示となる具合だ。

そして「c」はSuperfishが通信を乗っ取ってWebサーバーのドメインネームとして証明書を偽造し、これを信頼するような動作を行う。その結果、生成する秘密鍵(プライベートキー)はユニークではなく同一のため、秘密鍵を入手した中間者攻撃を狙うアタッカーは、あらゆる通信を盗み取って改ざん可能となる。

詳細な説明は省いたものの、本件がどれだけ問題だったのかご理解頂けるだろう。さらにルート証明書を悪用した例として、任意のソフトウェアを実行させることも可能だと、MMPC(Microsoft Malware Protection Center)のGeoff McDonald氏は記事で述べている。本来であればUAC(ユーザーアカウント認証)などを経てプログラムの実行を抑止できるが、Superfishのデジタル署名を利用することで実行可能にしてしまう。Superfishが用いた手法はWindowsだけでなくセキュアなインターネットに対する信頼性を著しく低下させることとなった。

Superfishの証明書がインストールされていないPCで、Superfishのデジタル署名を持つプログラムの実行例

Superfishの証明書がインストール済みのPCで、同じプログラムを実行した例。安全を示す青色の配色に変わるため、意識せず「Yes」ボタンを押してしまうだろう

Microsoftの調査によれば、2月20日から3月4日までの期間、SuperfishのユニークPCに対する検出量は最大6万台に達していたが、Lenovoによるアンインストール方法の紹介や自動削除ツールの公開以降は減少し、ほぼ2月中に取り除かれたことがわかる。

MMPC調査によるSuperfishがインストールされたPC台数

このように普段からセキュリティに対して意識的でいても、あらがえないケースは少なくない。MMPCの公式ブログは、「Upatre」のリスクが増加していることを明らかにしている。Upatreはといえば2013年後半から猛火を振るい、他のマルウェアへ感染させるプログラムをメールに添付するタイプのマルウェアだが、多くの亜種が存在し、最近はC&C(コマンド&コントロール)サーバーと連動するタイプも横行するようになった。

2015年1月時点の国別Upatre感染率。日本も被害国のひとつだ

こちらは感染率を数値化したもの。日本は約15,000台のPCが感染している

上図はMicrosoft調査によるUpatreファミリーの感染率だが、一見して分かるように米国の感染性率が群を抜いて高い。日本はスペインやメキシコと並ぶ15,000台程度ながらも、被害を受けていることがわかる。さらに下図はUpatreファミリー別の感染率だが、PCを迷惑メールの発信元とするDyzapや、他のマルウェアをダウンロードし、分散型サービス拒否(DDoS)攻撃を仕掛けるCutwailなど、各マルウェアの感染率は一様にバラバラだ。

UpatreファミリーとMicrosoftが認識した各マルウェアの内訳。米国はDyzapが群を抜いているが、トルコやイタリアはCutwailの感染数が多い

今回取り上げたマルウェアはすべてWindows上で動作するものの、インターネットというインフラを前にセキュリティを論ずれば、PCもスマートフォンも関係ない。すでにAndroidをターゲットとしたマルウェアも登場し、"Jailbreak(脱獄)"した対iOSマルウェアも存在する。インターネットに接続したデバイスは日頃から危険にさらされ、利便性の裏に潜むリスクがあることを常に意識してほしい。

阿久津良和(Cactus)