マイライブラリ
マイライブラリ

+ マイライブラリに追加

電話

お問い合わせ履歴

電話(英語)

+7 (495) 789-45-86

Profile

ニュース一覧に戻る

Windowsコンピューターを多段階プロセスで感染させるダウンローダ型トロイの木馬Fruity

2023年7月28日

株式会社Doctor Web Pacific


Doctor Webは、モジュラーダウンローダ型トロイの木馬 Trojan.Fruity.1 を用いた、Windowsユーザーに対する攻撃を確認しました。このトロイの木馬を使用することで、脅威アクターはその目的に応じてあらゆる種類のマルウェアにコンピューターを感染させることができます。攻撃を隠し、その成功率を高めるために、攻撃者はさまざまなトリックを用いています。そのようなトリックには、標的となるシステムの多段階プロセスでの感染、トロイの木馬のコンポーネントを起動させるために無害なアプリを利用、アンチウイルス保護のすり抜けなどがあります。

約1年間にわたって、Doctor WebではWindowsコンピューターがスパイウェア型トロイの木馬Remcos RAT( Trojan.Inject4.57973 )に感染したというインシデントについて、ユーザーから寄せられるリクエストに対応してきました。これらのインシデントを調査するなかで、Doctor Webのスペシャリストはマルチコンポーネントなダウンローダ型トロイの木馬 Trojan.Fruity.1 が主要な役割を果たす攻撃を突き止めました。 Trojan.Fruity.1 を拡散させるため、脅威アクターは悪意のあるサイトと、特別に作成されたソフトウェアインストーラを用意しています。そのようなソフトウェアには、CPU、グラフィックカード、BIOSを調整するためのさまざまなツールや、コンピューターのハードウェア監視ツール、その他のアプリがあります。これらのインストーラはおとりとして用いられ、ユーザーをおびき寄せるための無害なソフトウェアだけでなく、トロイの木馬とそのすべてのコンポーネントを含んでいます。

ユーザーが偽サイトからアプリをダウンロードしようとすると、ファイルホスティングサービスMEGAのWebページにリダイレクトされ、トロイの木馬のインストーラパッケージを含んだzipファイルをダウンロードするよう求められます。

#drweb#drweb

#drweb#drweb

ユーザーがアーカイブから実行ファイルを抽出して実行すると、標準的なインストールプロセスが開始されます。ただし、ユーザーの気をそらすための無害なプログラムがインストールされている裏で、 Trojan.Fruity.1 もまたコンピューターに侵入しています。 Trojan.Fruity.1 とそのコンポーネントは、おとりのアプリと同じディレクトリにコピーされます。

脅威アクターは正規のプログラムをトロイの木馬の「モジュール」化しています。今回のケースでは、 Trojan.Fruity.1 はプログラミング言語Pythonのライブラリの一つに埋め込まれており、有効なデジタル証明書を使用してpython.exeインタープリタによって起動されます。そのほか、VLCメディアプレイヤーや仮想化ソフトウェアVMWareのファイルを悪用したケースも発見されています。

以下は、このトロイの木馬に関連したファイルのリストです。

  • python39.dll — 攻撃者によって悪意のあるコードが埋め込まれている、Pythonパッケージに含まれる元々は無害なライブラリのコピー
  • python.exe — 改変されたライブラリの起動に用いられる、オリジナルのPythonインタープリタ
  • idea.cfg — ペイロードの場所に関するデータを含んだ設定ファイル
  • idea.mp3 — 暗号化されたトロイの木馬モジュール
  • fruit.png — 暗号化されたペイロード

インストーラからすべてのコンポーネントが抽出されると、標的となるシステムの多段階での感染プロセスが開始されます。以下の画像は、 Trojan.Fruity.1 の動作アルゴリズムの概略図です。

#drweb

感染の第1段階

python39.dll ライブラリが起動されると、 Trojan.Fruity.1idea.mp3 ファイルの内容を復号化し、そこから.dllライブラリとシェルコード(コード№1)を抽出して、それらを感染の第2段階に備えます。また、 idea.cfg ファイルの内容も読み込みます。このファイルにはトロイの木馬が実行する必要のあるペイロードの場所に関する情報を記述した文字列が含まれています。このペイロードはインターネットからダウンロードされる場合と、標的となるコンピューター上のローカルファイルの場合があります。今回のケースでは、トロイの木馬のインストーラによって抽出された fruit.png ファイルが使用されています。

感染の第2段階

デコードされたシェルコード(コード№1)がコマンドラインインタープリタcmd.exeをサスペンド状態で起動させます。次に、ペイロードに関する情報( fruit.png ファイル)、第3段階用のシェルコード(コード№2)、そしてその動作のコンテキストがメモリセクションに書き込まれます。その後、前の段階でデコードされた.dllファイルに、プロセス内のコンテキストのアドレスを指すデータがパッチされます。この.dllファイルが cmd.exe プロセスに挿入され、制御がライブラリに渡されます。

感染の第3段階

挿入されたライブラリは、エンコードされたペイロードの場所に関するデータを含む文字列(第1段階で受け取った)を検証します。文字列が http で始まる場合、ライブラリはファイルをインターネットからダウンロードしようとします。それ以外の場合はローカルファイルが使用されます。今回のケースでは、ライブラリはローカルファイル fruit.png へのパスを受け取ります。このイメージは一時ディレクトリに移され、これを復号化するためにコード№2が起動されます。このイメージファイルは、そこに含まれる二つの実行ファイル(.dllライブラリ)と次の段階を開始するためのシェルコード(コード№3)を隠すために、ステガノグラフィ手法を使用しています。

感染の第4段階

ここまでの手順がすべて完了すると、 Trojan.Fruity.1コード№3を起動させます。これにより、アンチウイルスによる検出をすり抜け、情報セキュリティスペシャリストによって分析される際のデバッグプロセスを阻止しようとします。

Trojan.Fruity.1 はProcess Hollowing(プロセスハロウイング)手法を用いて、前の段階で fruit.png イメージからデコードした.dllライブラリの一つと、第5段階を開始するためのシェルコード(コード№4)をプロセスに挿入します。まず初めにMSBuildプログラムの msbuild.exe プロセスへの挿入を試み、失敗した場合は、Windowsコマンドラインインタープリタの cmd.exe プロセスとNotepad アプリの notepad.exe プロセスに同様の試みを繰り返します。

次に、ランダムな名前の.dllファイルが一時ディレクトリに作成されます。イメージからデコードされた別のファイルの内容がこの.dllファイルに書き込まれ、このライブラリもターゲットプロセスに挿入されます。ただし、ここではメモリ内の元のプロセスを悪意のあるプロセスに置き換えることを可能にするProcess Doppelgänging(プロセスドッペルギャンギング)手法が用いられます。今回のケースでは、このライブラリがスパイウェア型トロイの木馬Remcos RATです。

感染の第5段階

ターゲットライブラリに挿入されたシェルコード(コード№4)と.dllライブラリを使用して、 Trojan.Fruity.1 はWindowsの自動起動アプリのリストにpython.exeアプリを追加し、このアプリを起動するタスクをタスクスケジューラ内に作成します。さらに、このアプリをWindowsのビルトインアンチウイルスの除外リストに追加します。次に、シェルコードが python39.dll ファイルの末尾にランダムなデータを書き込みます。これによってハッシュ合計値を変え、このファイルがトロイの木馬インストーラから抽出された元のファイルとは異なるファイルになるようにします。また、ライブラリのメタデータを改ざんして、作成日時を変更します。

現時点では、 Trojan.Fruity.1 はRemcos RATスパイウェアアプリの拡散に使用されていますが、脅威アクターはこのダウンローダ型トロイの木馬を使用してコンピューターを別のマルウェアに感染させることもできます。そのようなマルウェアはインターネットからダウンロードさせることも、またはソフトウェアインストーラの一部として Trojan.Fruity.1 と一緒に拡散することもでき、さまざまな攻撃シナリオを実行する機会をサイバー犯罪者にもたらします。

ソフトウェアをダウンロードする際は、開発元の公式サイトや正式なストアなどの信頼できるソースからのみダウンロードするようにすることが重要です。Dr.Webアンチウイルス製品は Trojan.Fruity.1 とその悪意のあるコンポーネントを検出・駆除します。そのため、Dr.Webユーザーに危害が及ぶことはありません。

Trojan.Fruity.1の詳細 ※英語

Trojan.Inject4.57973の詳細 ※英語

Indicators of compromise(侵害の痕跡) ※英語

Tell us what you think

To ask Doctor Web’s site administration about a news item, enter @admin at the beginning of your comment. If your question is for the author of one of the comments, put @ before their names.


Other comments