和歌山のプログラミング・システム開発ならシステムキューブ
つい先日レノボ(Lenvo)の家庭用パソコンラインナップの中に、Superfishという本来広告表示用とされるマルウェアがプリインストールされていて、それが大変危険なものであることが明らかになりました。
レノボのパソコンをお持ちの方は上記URLをクリックし、Goodと表示されていれば、この問題を受けていないことになります。
このサイトは、Superfishが偽造した危険なSSL証明書をパソコン内部に持っているかを診断します。
ウェブブラウザでは鍵のマークや緑色の文字などで表示されて、暗号化がきっちりと行われる状態であることを表しています。
Superfishはこの証明書をパソコン内部に追加して、書き換えることによってこの暗号化を回避し、通信を盗聴することができる仕組みを持っていました。
SSL証明書は暗号鍵のペアを作り、これを有名なところではVeriSignなどの公的認証局に署名を受けます。
この署名を受けた鍵を信頼できるかどうかは、ルート証明書という公的認証局が正しいものであるか判断するものをパソコンの内部に個別にもっています。
このSSL証明書が正しいかどうかは、パソコンはパソコンの内部にあるデータを参照します。
Superfishというマルウェアはこの証明書を偽造して、パソコンの内部に勝手に保存し、SSL通信の間に入ることによって、Superfishや他にこの脆弱性を知るソフトウェアからの盗聴を許します。
ユーザーとしては、緑色や鍵のマークで安心して暗証番号を入力しているとしても、この脆弱性を抱えているパソコンは、この通信の内容を全てどこかのサーバーに送信されているのかもしれません。そしてすでに送信されてしまったかどうかを調べる術はありません。
本来であれば、OSメーカーやブラウザの製造元によってこれらのルート証明書は保管され、証明書を格納するフォルダに入っています。
2011年にDigiNotarというほとんどのパソコンが正しいと認める証明局が悪意あるものに攻撃され、様々なサイトの暗号化鍵を偽造した事件がありました。
この事件が発覚して、DigiNotarの証明書はすぐにOSやブラウザなどからアップデートを通じて削除されました。
これは認証局の取り消しというメーカー側で一元管理できる方法で解決しましたが、個別のパソコンに偽造された証明書を追加する今回の脆弱性の方が危険性は大きいかもしれません。
Superfishの用いたような証明書の書き換えなどは、一般のユーザーにとっておそらく感知できないものです。現在どのような証明書を持っているか、確認する方法はあっても、普段それを確認してからブラウザを開く、という習慣を持つことなどありえないことでしょう。
今後OSにより、なんらかの対策がされるか、どのような経緯をたどるかはわかりません。そもそもSSL証明書自体の本質を突くような攻撃です。
独自に証明書をインストールできない仕組みにすると、今度は企業が独自の証明書を作成し、公的機関やオンラインバンキング専用サービスの通信を行う仕組みのソフトウェアが動作しなくなってしまいます。
今回はプリインストールされているマルウェアです。これを回避する方法は一般のユーザーには難しいことでしょう。
レノボのパソコン自体に信用がなくなってしまうぐらいの重要なことです。
様々な悪意あるダウンロードサイトなどから、いつこのようなマルウェアをインストールしてしまうかはわかりません。
WindowsではUAEというインストールするアプリケーションが、自分のインストールするものが間違っていないかをポップアップして確認してくれる仕組みを持っています。
ほとんどの人がこれを見ずに全て許可しているかもしれません。そうしていると重大な危険を持つソフトウェアをインストールしたことに気づくことさえないでしょう。
運営実態のわからない危険なダウンロードサイトでは、これらのマルウェアを仕込んでいる可能性もあるということです。
根本的な対策が取られるまでは、このような注意を行なっていく必要があります。