2月になって、FacebookやApple、Microsoftがハッキング被害に遭うという事件が発生しました。共通しているのは、Javaの脆弱性を狙われたこと。そこで今回のコラムでは、Javaの脆弱性を狙った攻撃がどのようなプロセスで行われたのかを解説します。
皆さんこんにちは、川口です。前回のコラムで「社内のイベントを取り上げる」と予告しておきながら、かなり時間が経過してしまいました。
先日、辻さん、根岸さんとともに@IT主催のセミナーで講演をしてきました。前回同様多数の方にご参加していただき、盛り上がりましたが、われわれの控室が一番盛り上がったことは昨年同様でした。
そんなこんなで忙しい年末年始を過ごしていたところ、2月になって、FacebookやApple、Microsoftがハッキング被害に遭うという事件が発生しました。今回のコラムでは、この事件の背景や対策について取り上げます。
【関連記事】
OracleがJavaのアップデートを公開、5件の脆弱性に対応
http://www.atmarkit.co.jp/ait/articles/1302/20/news057.html
Facebook、「ゼロデイ攻撃を受けたがユーザーデータは無事」と発表
http://www.itmedia.co.jp/news/articles/1302/16/news009.html
Apple社内のMacもマルウェア感染、Javaの脆弱性を悪用
http://www.itmedia.co.jp/news/articles/1302/20/news037.html
Appleなどのマルウェア感染、iOSアプリの開発者向けサイトが経緯を説明
http://www.itmedia.co.jp/news/articles/1302/21/news034.html
Microsoftにもサイバー攻撃、Mac事業部門でマルウェア感染
http://www.itmedia.co.jp/enterprise/articles/1302/24/news007.html
アップルに関連したハッキングのタイムライン(エフセキュアブログ)
http://blog.f-secure.jp/archives/50694622.html
一般的にセキュリティレベルが高いと思われている企業がハッキング被害に遭ったというニュースは、私にとっても衝撃的でした。私が衝撃的だと思ったポイントは以下の点です。
私の勝手な想像ですが、FacebookやApple、Microsoftほどの組織であれば、Javaを含めたソフトウェアのアップデートには他の会社以上に気を使っているものと思われます。そのような組織でも、公になっていないソフトウェアの脆弱性を悪用(いわゆるゼロデイ攻撃)されてしまっては、防ぐことは非常に難しいでしょう。
今回攻撃に使われたiOSアプリ開発者のサイトにアクセスするようなユーザーのパソコンには、高い確率でJavaがインストールされているはずです。Javaの脆弱性を発見(or入手)した攻撃者にとって、このフォーラムサイトは都合のよい攻撃インフラとなったことでしょう。
ラックのセキュリティ監視センター、JSOCでも、日々マルウェア感染事故を観測しており、Javaの脆弱性が原因でマルウェアに感染する事例も発生しています。そこで今回は、Javaの脆弱性が悪用されるプロセスについて解説します。
なお、これから説明する攻撃のプロセスは、今回報道されている攻撃と同じかどうかは不明です。あくまで対策を考えるためのプロセスとして理解してください。
ちょうど2月22日、私のメールアドレスにLinkedInを装ったメールが入ってきました。
メールの内容は非常に簡素で、「アップデートされたのでコチラ」という内容になっています。脆弱なバージョンのJavaがインストールされているパソコンからこのURLにアクセスすると、Javaの攻撃コードが置かれているサイトに自動的に転送され、次のような画面が表示されます。
パソコンの画面の右下のタスクトレイにはJavaが動作したことを示すアイコンが表示され、ブラウザにはオレンジ色のJavaの画像が大きく表示されます。このオレンジのJavaの画像はわずか数秒間表示されるだけで、その後ブラウザには何も表示されません。
一見、何も起こらなかったかのように見えますが、プロセスの一覧を確認すると、バックグラウンドでは怪しげなプロセスが動作しています。
iexplore.exeから派生したcmd.exeが、さらに見たことのない2つのexeファイルを実行している様子が分かります。このように、パソコンの画面上にはJavaの実行を示す画像以外には何も表示されませんが、バックグラウンドでは複数のexeファイルが生成、実行されています。もちろんこれらのファイルがマルウェアであることは言うまでもありません。
今回の事例では、以下のフォルダに怪しげなexeファイルが作成されていました。
C:\Documents and Settings\ユーザー名\Application Data C:\Documents and Settings\ユーザー名\Local Settings\Temp
特に後者のフォルダには、攻撃に使用されるファイルやマルウェアが配置されることが多いので、攻撃を受けたかどうか気になるエンジニアの方は、このフォルダを調べてみるとよいかもしれません。
ここに作成されたファイルを複数のウイルス対策ソフトでチェックできる「VirusTotal」に送ってみたところ、以下のような結果になりました。
いくつかのウイルス対策ソフトのパターンファイルで検知されることが分かります。もしウイルス対策ソフトを導入していれば、Javaの脆弱性が悪用されたとしても、そのあとに使用されるマルウェアの作成、実行を止めることができたかもしれません。
Copyright © ITmedia, Inc. All Rights Reserved.