モーフィングフラッシュバックマルウェアに注意

モーフィングフラッシュバックマルウェアに注意

TidBITS セキュリティ編集者の Rich Mogull が「Gatekeeper が Mac マルウェア流行の扉を閉ざす」(2012 年 2 月 16 日) で書いたように、Mac の最も重大なセキュリティホールは、ユーザーが騙されて何か悪意のあるものをインストールしてしまうことから生じており、今年後半に OS X 10.8 Mountain Lion が広く普及すれば、Mac ユーザーは少なくとも悪意のあるダウンロードされたアプリケーションからさらに保護されるようになるだろう。

けれども、Gatekeeper でさえも、他の方法で Mac に侵入するマルウェア、例えば Flashback などから Mac を守ることはできない。Flashback は、当初は Flash Player インストーラを装っていたかもしれないが、今ではもっと巧妙な手段で Mac に感染するようになっているマルウェアだ。(この記事の詳細の多くを提供してくれた TidBITS スポンサーの Intego に感謝する。Intego はこの記事を自社の Mac Security Blog で初めて公開した。)

感染経路— Flashbackの従来のアプローチ(亜種Flashback.A、Flashback.B、Flashback.C)では、悪意のあるウェブサイトやハッキングされたウェブサイトにFlashエラーのように見えるものが表示され、それをクリックするとFlash Playerを装ったインストーラパッケージがダウンロードされます。Safariの一般設定で「ダウンロード後に安全なファイルを開く」が選択されている場合、この偽のインストーラが自動的に起動し、Macが感染します。(ヒント1:Safariでこのオプションを無効にしましょう!)


新しい Flashback.G は、偽の Flash Player インストーラとは全く異なる 2 つのアプローチを採用しています。ただし、インストールされる悪意のあるコードは基本的に同じです (そのため、Flashback という名前が引き続き使用されています)。まず、2 つの既知の Java 脆弱性のいずれかを悪用して、Mac にコードを密かにインストールしようとします (幸いなことに、10.7 Lion を実行している Mac にはデフォルトで Java がインストールされておらず、Lion または 10.6 Snow Leopard で利用可能なすべての Java アップデートをインストールしている場合は
、このような攻撃の影響を受けません)。これに失敗すると、Flashback は次に、Apple Inc. からの自己署名証明書を表示する Java アプレットのダウンロードと実行を試みます。「続行」ボタンをクリックすると、アプレットの実行を許可したことになり、Mac が感染します。


Flashbackが活発に開発されていることは、この新たな攻撃ベクトルの出現だけでなく、意図的に検出を回避しようとしていることからも明らかです。一部の亜種は、ユーザーがVMware FusionでMac OS Xを実行しているかどうかを確認し、実行されている場合は実行しません。多くのセキュリティ研究者が、Mac OS Xのフルインストール版に感染するリスクを冒すよりも、仮想マシンでマルウェアをテストしているためです。仮想マシンを削除してクリーンなコピーでやり直す方が簡単だからです。最新の
Flashback.G亜種は、IntegoのVirusBarrier X6やその他のセキュリティプログラムがインストールされている場合にはインストールすら試みません。これは、既に保護されているMacにインストールする意味がないと考えているためでしょう。

感染の影響— Flashbackの目的は、ユーザー名とパスワードを盗み取ることです。SafariやFirefoxなどのWebブラウザやSkypeなどのネットワークアプリケーションにコードを挿入することでこれを実現します。ネットワークトラフィックを監視し、Google、Yahoo、CNN、PayPal、多数の銀行など、様々なドメインへの接続を探します。Flashbackの背後にいる犯罪者は、銀行のWebサイトなど、すぐに悪用できるユーザー名とパスワード、そして複数のサイトで再利用できるユーザー名とパスワードを探していると考えられます。(ヒント2:すべてのWebサイトで同じパスワードを使い回さない!)

Flashback のコードはホストプログラムに干渉する可能性があるため、クラッシュを引き起こす傾向があります。ネットワーク関連のプログラムが定期的にクラッシュするようになったら、Mac が感染している可能性があります。

Flashbackは、盗んだログイン情報を母艦に送り返す手段と、コードを更新する手段の両方を必要とします。これは、Integoが2011年9月下旬にFlashbackを発見した時点では動作不能だった一連のコマンド&コントロールサーバーを介して行われます。これらのサーバーは2011年10月のある時点でオンラインになり、それ以来、感染したMacにアップデートを送信しています。理論上、Flashbackは追加のソフトウェアをダウンロードすることもできますが、Integoはそのような活動をまだ確認していません。

Flashbackが感染したMacにインストールするコードは、時間の経過とともに変化してきました。当初は、ダイナミックローダーライブラリと自動起動コードを というファイルにインストールしていました~/Library/Preferences/Preferences.dylib。このバックドアコードは、RC4暗号化を使用してリモートサーバーと通信し、感染したMacの固有のハードウェアID、Mac OS Xのバージョン、ハードウェアアーキテクチャなどの情報を送信していました。

Flashback の後継亜種は、簡単に削除できる Preferences.dylib ファイルから離れ、Safari および Firefox のアプリケーション パッケージ内にバックドア コードをインストールし、アプリの Info.plist ファイルをバックドアの場所に変更して、実際のコードを に保存します/Applications/Safari.app/Contents/Resources/UnHackMeBuild。(Firefox の場合は、以下のすべてのコマンドとパスで「Safari.app」を「Firefox.app」に置き換えてください。)

アプリ内からそのファイルを削除するだけでは感染を排除するのに十分ではありません。Info.plist から次の行を削除することも必要です。そのためには、BBEdit で開くか、最初に次のターミナル コマンドを使用してファイルを XML に変換する必要があります。

plutil -convert xml1 /Applications/Safari.app/Contents/Info.plist

完了したら、これらの行を探して削除します。

<key>LSEnvironment</key>
<dict>
<key>DYLD_INSERT_LIBRARIES</key>
<string>/Applications/Safari.app/Contents/Resources/UnHackMeBuild</string>
</dict>

しかし、Flashbackの活動はそれだけにとどまりませんでした。Integoによると、後続の亜種はディレクトリに実行ファイルをインストールし/tmp、実行権限を適用した後、その実行ファイルを起動します。こうして、Flashbackバックドアは、何ら異常な動作を示さずにアクティブになります。

Integoは、最新のFlashback.G亜種が再び手法を変え、/Users/Sharedディレクトリ内の不可視ファイルに自身をインストールすることを確認しました。このファイルは様々な名前で呼ばれますが、これまでに確認されたものにはすべて.so拡張子が付いています。残念ながら、Flashbackは今後もバックドアコードの保存場所と名前を変え続ける可能性が高いため、信頼できる削除手順を提供することは困難です。

この最新の亜種は、 にファイルを作成し/Users/Shared/.svcdmp、 にアプリケーションにパッチを適用するために使用される plist ファイルを作成し~/.MACOSX/environment.plist、 にログを保存します~/Library/Logs/vmLog

Flashbackの初期亜種(Flashback.Gを除く)の中には、ネットワーク対応アプリケーションへのパッチ適用にとどまらず、システムファイルを意図的に破壊するものもあります。特に、これらのFlashbackの初期亜種は、Mac OS Xに内蔵されているマルウェア検出システム「XProtect」を無効化し、いくつかの重要なファイルを削除することで、以下の脆弱性を悪用します。

  • /System/Library/LaunchDaemons/com.apple.xprotectupdater.plist
  • /usr/libexec/XProtectUpdater

この意図的なファイル削除は、XProtect が動作しなくなるだけでなく (Apple は Flashback の以前の亜種を検出できるように XProtect を更新しました)、ウイルス対策ソフトウェアが損傷を修復できなくなるため、特に懸念されます。修復すると、感染前の状態に復元するのではなく、影響を受けたファイルのまったく新しいコピーをインストールすることになります。

Time Machine または別のバックアップ プログラムからファイルを復元することで、手動で損傷を修復することは可能ですが、元の権限を取得するにはバックアップ プログラム内から実行することが不可欠です。これは、単純な Finder コピーでは実現できない可能性があります。

アドバイス— Integoによると、Javaの脆弱性と偽の自己署名証明書の組み合わせが利用されるようになって以来、Flashbackによる感染率が大幅に増加しているとのことです。FlashbackをホストするWebサイトに遭遇するのがどれほど容易なのかはまだ分かりませんが、ユーザーが騙されてそのようなサイトにアクセスしてしまうケースと、正規のサイトが意図せずそのようなマルウェアをホストしてしまうケースの両方が存在します。

いずれにせよ、Flashbackによる感染を回避することは確かに可能です。Apple独自のXProtectは、Flashbackの初期亜種を検知・防御するようにアップデートされているため、XProtectが有効になっている限り、今後存在する可能性のある亜種からも安全である可能性が高いでしょう。とはいえ、後期亜種から身を守るためには、LionにJavaをインストールしていないか、LionまたはSnow LeopardのJavaインストールを最新の状態にしておく必要があります。そうでない場合、Appleからの自己署名証明書の承認を求めるプロンプトが表示された場合は、拒否する必要があります。

同様に、かなり高度な技術力があれば、Flashback 感染を手動で削除することも可能です (上記の情報で必要な情報は得られるはずですが、将来の Flashback の変更に関する最新情報を Web で検索することもお勧めします)。

しかし、MacDefender の場合と同様に、Flashback の感染の試みを検出したり、感染した Mac を手動で修復したりするための技術的知識がないと感じる人は、Intego の VirusBarrier X6 などの最新のセキュリティ ソフトウェアを実行する必要があると言わざるを得ません。

(もちろん、Mac には ClamXav や Sophos Anti-Virus for Mac Home Edition など、無料のものも含め、他のウイルス対策ツールも利用可能ですが、VirusBarrier は、設定可能なポートベースのファイアウォール、スパイウェアの活動を検出してソフトウェアの「ホームへの接続」を阻止する機能、ネットワーク トラフィック監視ツール、ネットワーク攻撃の検出、フィッシング対策、Cookie フィルタリングなど、追加のセキュリティ関連機能を提供します。)

ユーザーはとにかく気をつけるべきだと言いたいところですが、自己署名証明書がどのようなものか知らない人がそのようなプロンプトをクリックするのはあまりにも簡単すぎますし、偽の Flash Player インストーラーの実行を許可することさえ、経験の浅いユーザーの多くがためらわずに行う類の行為です。

Idfte
Contributing writer at Idfte. Passionate about sharing knowledge and keeping readers informed.