2022年12月6日

ポロニウムAPTグループ:新しい”元素”を暴く

ポロニウムAPTグループの活動は、20226月にマイクロソフトによって初めて検知されました。このグループはレバノンを拠点とし、専らイスラエル企業を攻撃しています。

このグループの名前は周期表の化学元素に由来しています。「ポロニアム はカルコゲンの一種。安定同位体を持たない希少で高放射能な金属。」

202210月初旬、ESET はこの脅威グループに関する包括的な調査結果を発表し、その中には100を超える悪質なファイルのハッシュが含まれていました。それらのファイルのうち、さらに分析できる13のサンプルが公開マルウェアレポジトリで見つかりました。

Deep Instinctの脅威リサーチチームは、公開されたサンプルを分析する過程で、公開された元のファイルにはなかったポロニウムの武器庫からさらに3つのサンプルを発見しました。

Deep Instinctは、ポロニウムが調査を困難にするために小さなコンポーネントを使用していること、また、検知を困難にするために多層の攻撃フローを使用していることを発見しました。Deep Instinct 脅威リサーチチームが発見したサンプルは、オリジナルのポロニウム攻撃ツールの追加コンポーネントと代替手段を明らかにしています。以下に、新しい手法の概要を説明します。

#その1:追加のMegaCreepローダー:

ESETのレポートでは、MegaCreepローダー(md5: 287007b3b0c0762f79e3b8a1cf2cef86) が、MegaCreepバックドアのメインコードを含んでいるとされる外部コンポーネントファイルである "MainZero" を呼び出していると解説されています。

図1:右側 - 新しいMegaCreepローダー、左側 - ESETが解析したMegaCreepローダー
図1:右側 - 新しいMegaCreepローダー、左側 - ESETが解析したMegaCreepローダー

Deep Instinctが発見した「新しい」ファイル(md5: 19fe1fd29122a5092f7b680e5762fc19 )は、MegaCreep用の別のローダーである可能性が高いです。この2つの主な違いは、見つかった新しいローダーは、それ自体では永続化のためのサービスを作成する機能を持っていないことです。

しかし、VirusTotalの”End-user Sightings”機能のおかげで、サービスを持たないバージョンには、"MicrosoftMegUpdate "という名前の自動起動レジストリキーパーシスタンスがあることが分かります。

図2:MicrosoftMegUpdateの永続性
図2:MicrosoftMegUpdateの永続性

ディスク上でファイルが観測されたパスは、Users AppDataサブフォルダ内です:

図3:
図3:"TaskManager.exe"が野放しで観測されたパス、VirusTotal

コンポーネント間のつながりを可視化するために、Maltegoグラフを作成しました:

図4:MegaCreep Loaderと各コンポーネントの関係グラフ
図4:MegaCreep Loaderと各コンポーネントの関係グラフ

“MainZero”は公開されていないため、このグラフには他のコンポーネントが欠けている可能性があります。

また、”MainZero”には、いくつかの異なるバージョンが存在する可能性があります。

#2:新種のマルウェア「Creepy」の可能性がある追加ファイル:

Deep Instinctは、追加ファイルの検索中に、ポロニウムが使用する2つの追加ファイルを特定しました。

この2つのファイルは、先に述べたMegaCreepローダーとともに、同じ日にイスラエルからSysinternalsを使用して数秒間隔でアップロードされました。

図5:2022-09-23 16:01にイスラエルからアップロードされたファイルのVirusTotal結果
図5:2022-09-23 16:01にイスラエルからアップロードされたファイルのVirusTotal結果

これは、誰かが感染したシステムの初期トリアージを行っていたことを示している可能性が高いということです。

この追加ファイルは、ほとんどのポロニウム マルウェアと同様に、.NETで記述されています。さらに、このファイルは、先に述べた”MegaCreep”ローダーと同じマシンに出現しています。

図6:
図6:"RLVBUp.exe "が観測されたパス群

ポロニウムは、複数のコンピュータで同じファイルを再利用していますが、図5に見られるように、マルウェアを実行するパスをランダムに変えているのが興味深い点です。しかし、常に "AppData "下の何らかのサブフォルダにあるようです。

また、どちらのファイルも "Microsoft.VisualBasic.CompilerServices" ライブラリを使用し、ClassVB.dll または ClassVB2.dll という名前の外部コンポーネントをインポートしています。これは、C#だけでなく、VisualBasicのコンポーネントを使用したことを示していると思われます。

また、ClassVBのDLLは公開されていないため、正確な機能は不明です。”MegaCreep”の亜種か、これまで確認されていない”VBCreep”のバックドアである可能性があります。

#3: RLVB.exe:

このファイルのコードは非常に短く、"ClassVB.dll "に存在する主要な機能に対するローダーです。

図7:外部ClassVBコンポーネントを使用したRLVBコード
図7:外部ClassVBコンポーネントを使用したRLVBコード

このファイルには自動起動のレジストリキーがありますが、"HKCUOFTWARE" の下にあります。

RLVBUp.exe
このファイルもVisualBasicを使用しており、"RLVB.exe "と似た名前の外部ファイルをインポートしています。

ここにも自動起動レジストリキー "HKCUSOFTWARE⇄MicrosoftWindowsCurrentVersion⇄Run⇄CLVB11Update "が存在します。

このファイルは、ESETの調査で "MegaCreep "の一部として言及されている "PRLib.dll "をインポートしています。

図8:外部ClassVB2コンポーネントとPRLibを使用したRLVBUpのコード
図8:外部ClassVB2コンポーネントとPRLibを使用したRLVBUpのコード

RLVBUpは、"WindMin.dll" と "UnInstall.dll" という2つの外部ファイルからデータの読み書きを行っています。

図9:外部ファイル
図9:外部ファイル "WindMin.dll "と "UnInstall.dll "を使用しているRLVBUpコード

"##"による置換機能は、"MegaCreep "のものと同様である。

外部ライブラリのほとんどはカスタムライブラリであり、一般には公開されていません。そのため、その機能は完全には解明されていません。

“RLVBUp”は”PRLib”を使用しているため、”MegaCreep”に関連するモジュール、あるいは異なるポロニウム バックドアの間で共有されるモジュールである可能性があります。

現在知られているすべてのつながりを視覚化するために、私たちは別のMaltegoグラフを作りました。

図10:PRlibによるファイル間関係グラフ
図10:PRlibによるファイル間関係グラフ

まとめ

ポロニウムはつい最近発見された攻撃グループで、イスラエル企業への攻撃に特化しています。

彼らの攻撃ツールの既知のコンポーネントをすべてマッピングすることは、セキュリティチームが類似の活動を特定するのに役立ち、不足しているパズルのパーツを明らかにすることにつながるかもしれません。

IOC

MD5 Hash

TaskManager.exe

19fe1fd29122a5092f7b680e5762fc19

RLVB.exe

dbec8d9a3ea34d69733e7f5f5134f62d

RLVBUp.exe

a544bb442fe4342e300bc8beaef66796