2012年5月2日水曜日

OSX/ラマダイ A:Macペイロード

  • このエントリーをはてなブックマークに追加
今月初め、Alien VaultとIntegoの研究者がチベットのNGO(NGO:非政府系組織)を標的として攻撃を行った新種のマルウェアに関する報告を行いました。攻撃は被害者を悪意のあるサイトへと誘い込み、Javaの脆弱性CVE-2011-3544を利用し相手のコンピューターへ悪意あるペイロードを落とし込み、実行させるというものです。

ウェブサーバーは、ブラウザのユーザー・エージェント・ストリングに基づき、ユーザーのウィンドウズやOSXシステムを感染させるためのプラットフォーム・スペシフィックJAR(ジャバ・アーカイブ)ドロッパーとして機能すると見られます。


OSXスペシフィックのドロッパーはまた、Linuxクライアントにも作用します。落とし込まれたペイロードはOSX用にのみ設計されており、Linuxクライアントは感染しないためです。この分析は、C&C(コマンド&コントロール)サーバと通信を行うために用いられるOSXペイロードとネットワーク・プロトコルにフォーカスしています。

OSXは実行可能ファイルに対し、Mach-Oファイル形式を使用します。OSX/Lamadai.Aに関しては、Mach-Oエグエキュータブルは、64ビットにのみコンパイルされていましたが、それは通常ではありませんでした。なぜならMach-Oバイナリは通常32ビットと64ビットバージョンのエグゼキュータブル両方を含むためです。

エグゼキューション(実行)に際し、脅威はそれ自身を「ライブラリ/オーディオ/プラグイン/オーディオ・サーバ」にコピーし、現在のユーザーがログイン状態である時は常に必ず実行を行えるよう、コピーされたファイルに対し~/Library/LaunchAgents /com.apple.DockActions.plistという名前のランチャースクリプトを追加します。

デフォルト時、OSX10.7.2上で、通常のユーザーは/Library/Audio/Plug-Ins/AudioServerに書き込み許可がない点、つまりこの脅威は永続するものではないにご注意下さい。(リブートしてもなお発生するものではないということ)

OSX旧バージョンが、異なるファイルシステム許可を持っているかに関しては不明です。

それにもかかわらず、ユーザーのホームディレクトリ下の異なるロケーションを利用することは攻撃者にとり都合がよかったものと思われます。最終的に脅威は、dns.assyra.com (100.42.217.73 分析時点。今のドメインは127.0.0.1を表示) を解決すること、またポート8008へTCPコネクションを確立することにより、C&Cサーバとのコンタクトを試みます。サーバは通信指示がない限りTCP RSTに応答します。感染したシステムは、0から10秒のランダムな間隔で再接続を試み、ビジー・ウェイト・ループ状態に陥ります。

サーバは下記3つのインストラクションの内の1つを、感染したシステムへと送る可能性があります:
1.ファイルをアップロードする:C&Cはアップロードのためのパスを送信、クライアントはファイルコンテンツで応答。
2.ファイルをダウンロードする:C&Cはファイル・パスと内容を送信、クライアントは777 (-rwxrwxrwx)へセットしたパーミッションと併せてファイルを作成。
3.リモートシェルをスタート:C&Cは恣意的なシェルコマンドを送信、クライアントはアウトプットで応答

クライアントとC&C間の全通信は、AESとXORで暗号化されます。暗号化は、PolarSSLライブラリからのAEAとSHA1が微かに修正され実施されるのと共に、行われる模様です。AESキーはC&Cからくる最初の40バイトから生成されます。全通信を通じキーがコンスタントである一方、2つの異なるハードコードされたXORキーが使用されます。1つはインカミング・トラフィックに対して、もう一つはアウトゴーイング・トラフィックに対してです。さらに、マルウェアはC&Cから受信された最初のパケットが、16バイト長のハードコードキーと合致しない限り、下記写真で見られる通り、どんなインストラクションに関しても活動を行いません。
クライアントはまた、自身がC&Cへ送信する最初のレスポンスに対し、そのキーを追加します。

C&C認証に使用されるキー


最後に、カスタムSHA1ベースのハッシュは認証およびインテグリティ・チェックのために、C&Cを行き来する全ての情報パケットに感知されます。
hash = SHA1(key1 + sha1(key2 + encrypted_packet_content + packet_number)) where key1 and key2 are two 64-byte strings derived from the first XOR key

我々の調査中、我々はC&Cと我々のテストマシン間のライブ・ダイアログを観察しました。
C$Cから受けたインストラクションのタイミングと性質により、我々はそれらが人間により手動でタイプされたものだと信じるに至りました。

クッキー・ディレクトリへのパスを発見


キーチェーン・ディレクトリへのパスを発見


ダウンロード・ディレクトリは再びどこに?


いくつかのファイル・システムをブラウジング後、C&Cは1つのキーチェーン・ファイルおよびサファリ・クッキー・ストアをターゲットに、2つのファイル・アップロード・インストラクションを出します。ここでの目的は明らかに情報を盗むことにあります。ネットワークプロトコルに多くの努力がつぎ込まれており、かなり関与しています。

オペレーターは、リバース・エンジニアリングをより困難にするために、ネットワークダンプからロー・コミュニケーションを隠すことに非常に関心を持っているように思えます。しかしながら、左右対称な暗号文の使用は、暗号化と暗号解読ルーティンの再現とコミュニケーションの分析をこっそりと完全に可能にします。

この攻撃は、OSパッチを最新版に保っておくことに対し、新たな警鐘を鳴らしています。なぜならアップルは2011年11月に、Mac OSX10.7 Update 1 およびJavafor Mac OSX 10.6UpdateでJavaに関するこの脆弱性をパッチしたためです。

ESETセキュリティ・ソフトウェア(ESET Cybersecurity for Mac を含む)はシグニチャ・アップデート7001以来、この脅威をOSX/Lamadai Aとして検知しています。AVベンダーはファイルをOSX/Olyx、以前のMacマルウェアとしてフラグしましたが、ネットワーク・プロトコルと難読化技術は異なり、我々は2つの脅威の間に関連性を見出してはいません。

分析されたファイルのMD5:
39084b60790ca3fdebe1cd93a4764819 file-mac.tmp (OSX payload)

関連ファイルのMD5
7f7cbc62c56aec9cb351b6c1b1926265 file-win.tmp (Win32 payload)
dd7421fb6ca03c5752a06cffb996285a index.jar (OSX/Linux dropper)
2d86dce83851f76493ba0492d066c095 default.jar (Win32 dropper)
4b6eb782f9d508bbe0e7cfbae1346a43 index.html (HTML serving the droppers)


出典:blog.eset.com
ESETロゴ
  • このエントリーをはてなブックマークに追加

ページの先頭に戻る