「Backdoor.Win32.Miancha.*」の技術情報

先日、GOM Playerの正規更新機能を悪用したマルウェア「Backdoor.Win32.Miancha.*」について、技術情報の要望を数多く頂戴しました。そこで、Securelistのブログ記事を日本語化して掲載いたします。

gom

先日、GOM Playerの正規更新機能を悪用したマルウェア「Backdoor.Win32.Miancha.*」についてKaspersky Dailyにて紹介いたしました。同様にSecurelist ブログにて解析結果の技術情報を発表したところ、日本語での技術情報も欲しいとの要望を数多く頂戴しました。そこで、Securelistのブログ記事を日本語化して掲載いたします(※一部、前回記事と重複している箇所があります)。本インシデントの経緯については、前回の記事をご参照ください。

今回、弊社で入手した検体は「GoMPLAYER_JPSETUP.EXE」というファイル名です。

表0

検体はRAR形式で圧縮されている実行ファイルで、実行時に自身を解凍し、中の実行ファイルを実行します。図1はWinRARを使用して中のファイルを表示したものです。

図1:GoMPLAYER_JPSETUP.EXE内のファイル一覧

図1_gomplayer_jpsetup.exe

圧縮ファイルの中には以下の2つの実行ファイルが含まれています。

表1

「GOMPLAYERJPSETUP_JP.EXE」は正規の「GOM Player」の更新ファイルです。対して、「GOMPLAYERBETASETUP_JP.EXE」はバックドアをインストールするためのマルウェアです。このファイルが実行されてしまうとユーザーのコンピューターがバックドアに感染し、外部との不正な通信が発生します。図2に「GOMPLAYERBETASETUP_JP.EXE」内のファイルを示します。

図2:GOMPLAYERBETASETUP_JP.EXE内のファイル一覧

図2_gomplayer_betasetup_jp.exe

「GOMPLAYERBETASETUP_JP.EXE」には以下の表に示した5つのファイルが含まれており、それぞれが悪意あるコードを含んでいます。「GOMPLAYERBETASETUP_JP.EXE」は実行時に自身を解凍し、中に含まれている「install.exe」を実行します。

表2

「install.exe」は、IsWow64Process関数を使用して、実行環境が32ビット環境か64ビット環境かを判断します(図3)。

図3:実行環境の確認

図3_32or64

確認結果に基づいて、「install.exe」は「dll.tmp」(64ビット環境の場合は「dll64.tmp」)を「xor x14」の処理を行うことで復号化して「install.ocx」を作成し、作成した「install.ocx」を「%windir%temp」内に複製します。

図4:dll.tmpのxor x14による復号化

図4_dll.temp

復号化の際には「instructions.pdf」(64ビット環境では「instructions64.pdf」)が、「install.ocx」と同様に「%windir%temp」内に複製されます。

表3

さらに、「Default=%windir%install.ocx」と「ThreadingModel=Apartment」の値が以下のレジストリ内に作成されます(あくまで解析環境下で確認した値となります)。

  • HKEY_CLASSES_ROOTCLSID{ECD4FC4D-521C-11D0-B792-00A0C90312E1}InProcServer32
  • HKEY_CURRENT_USERSoftwareClassesCLSID{ECD4FC4D-521C-11D0-B792-00A0C90312E1}InProcServer32
  • HKEY_USERSS-1-5-21-1439904799-1247934098-3846997294-1000SoftwareClassesCLSID{ECD4FC4D-521C-11D0-B792-00A0C90312E1}InProcServer32
  • HKEY_USERSS-1-5-21-1439904799-1247934098-3846997294-1000_ClassesCLSID{ECD4FC4D-521-11D0-B792-00A0C90312E1}InProcServer32

レジストリに値を作成すると、「explorer.exe」が再起動されます。これによって、「install.ocx」を読み込んだ状態で「explorer.exe」が起動します。

「install.ocx」は「instruction.pdf」(64ビット環境ではinstruction64.pdf)をメモリ上に読み込み、「xor x14」によって復号化した実行ファイル内のエントリーポイントに処理を移します。

表4

復号化された「instructions.pdf」は、「instructions.pdf」のファイル末尾400バイトのデータをメモリ上に読み込み、「xor x14」で復号化を行います。その後、復号化したデータ内から「AAAAAAAA」、「PPPPPPPP」、「BBBBBBBB」の値を参照し、それに続くデータを取得します。続いて、取得したデータに対してbase64で復号化を行い、さらに「add x7a」と「xor x19」で復号化します(図5)

図5:base64、add x7a、xor x19による復号化処理

図5_base64

以下の表は、データ名と、復号化前および復号化後のデータです。

表5

ここで復号化されたデータはそれぞれ、外部と通信を行うためのドメインやポート番号などに使用されていました。

カスペルスキー インターネット セキュリティ 2014(カスペルスキー 2014 マルチプラットフォームのWindows対応プログラム)をはじめとする弊社製品は、このマルウェアにすでに対応しており、図6のように「Backdoor.Win32.Miancha.*」として検知します。

図6: カスペルスキー インターネット セキュリティ 2014での検知画面例

gomplayer-検知

ヒント

Windows Downdate攻撃から身を守る方法

Windows Downdateは、最新バージョンのOSを古いバージョンにロールバックさせ、脆弱性が残る状態を復活させ、攻撃者がシステムを容易に侵害できるような状態にする攻撃です。この攻撃のリスクを低減するにはどうしたらよいでしょうか?