2023年6月22日

PindOS:BumblebeeとIcedIDを運ぶ新しいJavaScriptドロッパー

Deep Instinctの脅威リサーチラボは最近、BumblebeeIcedIDを配信するJavaScriptベースのドロッパーの新種を発見しました。このドロッパーにはロシア語のコメントが含まれており、ロシアにおける現在(および過去)の 反米コメントの可能性がある独自のユーザーエージェント文字列 "PindOS" を採用しています。

Bumblebee20223月に初めて発見されたマルウェアローダーです。Conti グループ に関連しており、BazarLoaderの代替として使用されていました。ランサムウェアを含む他の複数のタイプのマルウェアの主要なベクターとして動作します。

IcedIDは、金融情報を盗むために設計されたモジュラー型バンキングマルウェアです。少なくとも2017年以降出回っており、最近ではマルウェアの配信に重点を移していることが 確認されています

Bumblebeeのジレンマ - PowerShellかJavaScriptか?

Bumblebeeの主な手口は、直近の大規模キャンペーンを含め、非常に特徴的な難読化(「elemXXX」)を施したPowerShellベースのファーストステージを含みます。これは、埋め込まれた64ビットのペイロード.DLLのラッパーおよびロードルーチンとして機能します。このフローに関する我々の分析は、こちらをご覧ください。

PowerShellの代わりにJavaScriptに切り替わる可能性があることは、これまでBumblebeeが確立していたTTPに大きな変化をもたらします。

IcedID - バンカーからローダーへ?

最近の報告が示すように、IcedIDは部分的にEmotetの足跡をたどっているようであり、より一般化されたローダー型マルウェアになることを優先して、バンキングおよび金融系を狙った機能を放棄している可能性があります。新しいJavaScriptタイプのドロッパーとの関連は、この方向転換へのもう1つのステップと見ることができます。

PindOS JavaScriptテクニカル分析

難読化を解除すると、ドロッパーは驚くほどシンプルになります。これは、4つのパラメータを取得する単一の関数「exec」で構成されています:

  • UserAgent” – Bumblebee’sの .DLLをダウンロードする際に使用するユーザーエージェント文字列
  • “URL1” – ダウンロードする最初のアドレス
  • “URL2” – 2番目にダウンロードするアドレス
  • “RunDLL” – 呼び出すペイロード.DLLエクスポート関数

実行されると、ドロッパーは最初にURL1からペイロードをダウンロードし、rundll32.exe経由で指定されたエクスポートを直接呼び出して実行しようとします。これが失敗すると、ドロッパーはURL2からペイロードをダウンロードし、PowerShellとrundll32.exeの組み合わせを使って実行しようとします。

ダウンロードされたペイロードは %appdata%/Microsoft/Templates/<6-char-random-number>.dat に保存されます。

図1 - PindOSの主な機能

図1 - PindOSの主な機能

この関数は、4つの別々のURLで2回呼び出されます:

図2 - Bumblebeeドロッパーからのexec関数呼び出し

図2 - Bumblebeeドロッパーからのexec関数呼び出し

Figure 3 – exec function call from IcedID dropper

図3 - IcedIDドロッパーからのexec関数呼び出し

Figure 4 – Payload download

図4 - ペイロードのダウンロード

取得されたペイロードは、擬似的にランダムに「オンデマンド」で生成され、その結果、ペイロードが取得されるたびに新しいサンプルハッシュが生成されます。このような手口は、シグネチャベースの検知を避けるために一般的に行われています。しかし、Bumblebeeの場合、「初見」のファイルでもサンプルがシグネチャで 検出されやすいため、以前のフロー(ペイロードを直接ディスクに書き込まない)と比べると、これはやや効果がないように思われます。検出されやすい理由は、生成されたペイロードのエクスポートと、生成された異なるサンプル間で変化せず、一定のままである他のいくつかのインジケータ部分によるものと思われます。

Figure 5 – A generalized comparison of Bumblebee’s infection flows - “older” on the right; “newer” on the left.

図5 - Bumblebeeの感染フローの一般的な比較 - 右が 「古い」、左が 「新しい」

Virus Totalによると、「初見 」のPindOSドロッパーの検出率は非常に低い:

Figures 6 & 7 – VT first-seen detection for PindOS droppers

図6と図7 - PindOSドロッパーのVT初見検知

Bumblebee DLLペイロード解析のハイライト

このDLLペイロードは、以前に遭遇したものとは若干異なっています。動的には非常によく似ていますが、難読化のレイヤーがいくつか追加されています。アンチデバッグおよびアンチVM/サンドボックス機能はそのままですが、FFmpegプロジェクトのオープンソース プロジェクトの "error.c "ファイルから取られた 「正規のように見える」 文字列がいくつか追加されており、同じプロジェクトの他のいくつかのファイルが目くらましの目的で追加されています:

Figure 8 – Strings found in Bumblebee DLL

図8 - Bumblebee DLLで見つかった文字列

Figure 9 – FFmpeg project source, “error.c” file.

図9 - FFmpegプロジェクトのソース、"error.c "ファイル

もう1つの違いは、以前のBumblebee DLLには2つの主要なエクスポート機能がありましたが、新しいDLLには4つのエクスポート機能があることです。

Figure 10 – “New” Bumblebee DLL Exports

図 10 - 「新しい」Bumblebee DLL エクスポート

Figure 11 – “Old” Bumblebee DLL exports, with main “SetPath” function

図11 - 「古い」Bumblebee DLLエクスポート、メイン "SetPath "関数付き

DLLをさらに調べると、前の変形と同じメイン関数にたどり着きます。

Figure 12 – “SetPath” in the “new” Bumblebee DLL.

図12 - 「新しい」Bumblebee DLLの "SetPath"

結論

Bumblebeeの最新の「実験」は、検知リスクを低減する手段として、疑似ランダム・サンプル生成を活用しようとするものです。これは、PindOSドロッパーを「共有」しているIcedIDを含め、金融/バンキングマルウェアの攻撃者によって長年使用されてきました。

PindOSがBumblebeeやIcedIDの背後にいるグループによって恒久的に採用されるかどうかはまだ分かりません。この "実験"がこれらの "仲間"であるマルウェア群の配信に成功すれば、彼らの武器庫における恒久的なツールとなり、他の攻撃者たちの間で人気を博すかもしれません。

Bumblebee IcedID はランサムウェアを配信することが知られているため、セキュリティチームはこれらのIOCに注意することをお勧めします。IOCの最新リストはGitHubページでご覧いただけます。

IOCs
  • Network Artifact
    User-Agent: PindOS

  • Bumblebee infection URLs
    hxxps://qaswrahc.com/wp-content/out/mn[.]php
    hxxp://tusaceitesesenciales.com/mn[.]php
    hxxp://carwashdenham.com/mn[.]php
    hxxps://intellectproactive.com/dist/out/mn[.]php

  • Bumblebee .JS dropper SHA256
    bcd9b7d4ca83e96704e00e378728db06291e8e2b50d68db22efd1f8974d1ca91
    07d2cb0dc0cd353fb210b065733743078e79c4a27c42872cd516a6b1fb1f00d1
    00ec8f3900336c7aeb31fef4d111ee6e33f12ad451bc5119d3e50ad80b2212b0
    15da5b0a65dd8135273124da0c6e52e017e3b54642f87571e82d2314aae97eec
    180a935383b39501c7bdf2745b3a334841f01a7df9d063fecca587b5cc3f5e7a

  • Bumblebee DLL payload SHA256
    24dd5c33b8a5136bdf29d0c07cf56ef0e33a285bb12696a8ff65e4065cb18359
    76c9780256e195901e1c09cb8a37fb5967f9f5b36564e380e7cf2558652f875b
    28c87170f2525fdecc4092fb347acd9b8350ed65e0fd584ce9fc001fd237d523
    ac261ac26221505798c65c61a207f3951cc7dce2e1014409d8a765d85bfd91d4

  • IcedID infection URLs
    hxxps://masar-alulaedu.com/wp-content/woocommerce/out/berr[.]php
    hxxps://egyfruitcorner.com/wp-content/tareq/out/berr[.]php
    hxxps://tech21africa.com/wp-content/uploads/out/berr[.]php
    hxxps://www.posao-austrija.at/images/out/lim[.]php
    hxxps://logisticavirtual.org/wp-content/out/lim[.]php
    hxxps://adecoco.us/wp-content/out/lim[.]php
    hxxps://acsdxb.net/wp-content/out/lim[.]php

  • IcedID .JS dropper SHA256
    92506fe773db7472e7782dbb5403548323e65a9eb2e4c15f9ac65ee6c4bd908b
    c84c84387f0b9e7bc575a008f36919448b4e6645e1f5d054e20b59be726ee814
    7355656f894ae26215f979b953c8fa237dc39af857a6b27754a93adb1823f3b6
    8f40ff286419eb4b0c4d15710dc552afb2c2a227a180f4b4f520d09b05724151

  • IcedID DLL payload SHA256
    9101975f7aca998da796fc15a63b36ab8aa0fe0aed0b186aaed06a3383d5f226
    4f0c9c6fc1287ef16f4683db90dd677054a1f834594494d61d765fa3f2e1352c
    cb307d7fa6eaac6a975ad64ff966ff6b0b0fdd59109246c2f6f5e8d50a33e93c
    361b0157ef63d362fdd4399288f5f6a0e1536633dfb49c808a3590718c4d8f10
    e71c9ac9ddd55b485e636840da150db5cd2791d0681123457bd40623acd8311c
    8ae3be9f09f5fc64ec898a4d6467b2f6e50eaaa26fc460a4f1a9b9566e97a9a7

MITRE ATT&CK

タクティクステクニック概要オブザーバブル
エグゼキューションコマンドとスクリプトのインタープリタ: JavaScript - T1059.007攻撃者はJavaScriptのさまざまな実装を悪用して実行する可能性がある.JS Droppers
防御回避システムバイナリプロキシ実行: Rundll32 - T1218.001攻撃者はrundll32.exeを悪用し、悪意のあるコードの実行を代理する可能性があるRundll32.exe 使用状況
防御回避難読化されたファイルまたは情報 - T1027攻撃者は、実行ファイルやファイルの内容を暗号化、符号化、あるいはシステム上や転送中に難読化することで、発見や分析を困難にする可能性がある難読化JS"Random" 生成ペイロード