ATRがSodinokibi、別名REvil RaaSを分析:エピソード2


エピソード 2:オールスターズ

RaaS(Ransomware-as-a-Service)サイバー攻撃のアフィリエイト構造についての分析

今回は、McAfee Advanced Threat ResearchATRSodinokibi、および2018年から2019年半ばに最も流行したRaaSRansomware-as-a-Serviceモデルのサイバー攻撃GandGrabとの関連について分析した回目の記事となります。

GandCrabは5月末に撤退を発表しました。その後、Sodinokibi(別名REvil)と呼ばれる新しいRaaSファミリーが、最も顕著なランサムウェア型サイバー攻撃の1つとしてその座に取って代わりました。

RaaS型サイバー攻撃のSodinokibiを分析したエピソード1では、GandCrabとのコード比較などの広範なマルウェアと感染後の分析や、新しいSodinokibiによるサイバー攻撃の正確な規模に関する洞察を共有しました。

Sodinokibiによるサイバー攻撃は現在も継続されており、その実行方法はランサムウェアを拡散するさまざまなアフィリエイトによって異なります。アフィリエイトがどのように運営されているかなど、解明すべき疑問は数多くあります。アフィリエイトモデルは機能しているのか?アフィリエイトについての調査によって、このサイバー攻撃とGandCrabとの関連性についてどのようなことを解明できるのでしょうか。

大規模なサンプル分析とハードコードされた値の集計により、GandCrabの犯罪的な活動の実行に重要な役割を果たしたアフィリエイトを特定し、GandCrabのRaaS活動とSodinokibiのRaaS活動とに多くの類似性があることを確認しました。

Sodinokibiの分析と比較を始める前に、GandCrabに使用された手法について簡単に説明します。

GandCrab RaaSシステム

GandCrabはRaaSの代表的な例でした。 RaaSは、開発者がランサムウェアの拡散と感染の発生を担うアフィリエイト、パートナー、アドバタイザーに製品を提供しているシステムに対応します。開発者は身代金収入の一部を受け取り、残りはアフィリエイトのものになります。

図1.Gandcrab RAASモデルの全体像の概要

RaaSモデルの運用は関係当事者にとってうまみのあるものです。

  • 開発者の観点:マルウェア作成者は、ランサムウェア製品の使用により得た報酬の一部をその都度要求します。開発者に対するリスクはマルウェアを拡散するアフィリエイトよりも低くなる仕組みです。開発者は、発生させる感染量に応じてアフィリエイトごとに特定のターゲットを設定できます。ある意味でこれはビジネスの世界における現代的な販売組織に非常によく似ています。

その結果、RaaSモデルは、マルウェア開発を違法としない国を通じて活動すれば、マルウェア作成者にとっては隠れ蓑となります。開発者の国の国民が被害者にならなければ、開発者は起訴されることもありません。

  • アフィリエイトの観点:アフィリエイトは、ランサムウェアコードを自分で記述する必要はありません。高度な技術的スキルは不要です。 RaaSにより、ランサムウェアはより多くのユーザーにアクセスしやすくなります。アフィリエイトは犯罪ネットワークで受け入れられ、開発者が設定した標的に到達さえすればいいのです。サービスモデルとして、各当事者がそれぞれの専門分野に専念できる一定の分散化も提供します。

分け前を得る

アフィリエイトは、自分が実行した感染の規模に応じた報酬を得たいと思うものです。ランサムウェアを広めることで大きなリスクにさらされた分、その恩恵を受けたいと考えます。開発者とアフィリエイトの間の相互信頼は、RaaSシステムでの活動にとってとても重要です。 こんな表現がぴったりです。「信頼とは、築くのは難しく、簡単に失われる」。新しいRaaSシステムが発表されると、サイバー犯罪フォーラムのメンバーが普通に抱く懐疑心をまさに言い当てています。

RaaSサービスが成長し、信頼を維持するには、アフィリエイトごとの感染と報酬の適切な管理が重要になります。これにより、開発者は、誰もが成功に見合ったいわゆる「パイ」の分け前を得ることができます。そこで、この管理はどのすればうまくできるのでしょう?1つの方法は、ランサムウェアのハードコード値を用いることです。

ランサムウェアをアフィリエイトにリンクする

技術的なマルウェア分析により、GandCrabはバージョン4以降、ランサムウェアのソースコードに特定のハードコード値を有していることを確認しました。

  • id –アフィリエイトID番号
  • sub_id –アフィリエイトIDのサブID。サブレンタル感染のアフィリエイトの追跡番号で、sub_id番号を通じて識別可能な独自のサイバー攻撃を追跡します
  • version –マルウェアの内部バージョン番号

バージョン4は全体的に大きな変更があり、我々はこれらの変更は、GandCrabの人気の高まりに対応した管理の改善とスケーラブル化のために、作成者によって部分的に行われたと考えています。

ハードコーディングされた値に基づいて、一定の管理情報を抽出し、私たちなりに全体像を作成することができました。Yaraルールの使用、業界への取材、顧客からの提供を通じて、見つけられる限り多くの異なるGandCrabサンプルを探しました。収集したサンプルリストは非常に広範なものですが、網羅的ではありません。収集したサンプルから、カスタムビルドツールを使用して、ハードコード値とコンパイル時間を自動的に抽出しました。GandCrabのバージョン4からバージョン5.2に至るまでの1つの大きなタイムライン上に、これらすべての値をまとめました。

図2.収集したサンプルのタイムラインの一部(最初の4つの時間に注意)

観察されたIDおよびSUB_IDの特性

親子関係

抽出したIDとSub_IDは親子関係を示していました。つまり、すべてのIDは複数のSUB_ID(子)がありますが、SUB_IDはいずれも1つのID(親)しかありません。

図3.ID番号41(親)とそれに対応するSUB_ID(子供)のアクティビティ

IDインクリメント 

全体として、時間の経過とともにID番号が徐々に増加することが観察されました。通常、以前のバージョンではID番号が小さくなり、後のバージョンではID番号が大きくなりました。  

ただし、図3に示すように、多くのバージョンで比較的小さいID番号が表示されていました。

この観察結果は、ID番号が特定のアフィリエイトに対応しているという私たちの理論と一致しています。特定のアフィリエイトは長期間パートナーとしてあり続け、GandCrabの異なるバージョンを拡散させました。これは、ID番号が長期間にわたってさまざまなバージョンで表示されることを説明しています。この理論は、いくつかの(匿名の)ソースによっても確認されています。

トップID /アフィリエイトの決定

IDがアフィリエイトに対応するという理論を適用すると、アフィリエイト間で異なるアクティビティが観察されました。いくつかのアフィリエイト/ IDは、私たちが見つけた単一のサンプルにのみリンクされていました。アフィリエイトが短期間しか表示されない理由は、実行に失敗したことで説明できます。GandCrabの開発者には、パフォーマンスの低いアフィリエイトを排除するという厳格なポリシーがありました。アフィリエイトを排除すると、新しく増えたID番号を受け取る新しいスロットが開きます。

一方、非常にアクティブなアフィリエイト「All-Stars(オールスターズ)」をいくつか観察しました。その中のID番号99がずば抜けて最も活発でした。最初にバージョン4.1.1の6つの異なるサンプルでID 99を確認し、バージョン5.04では35の異なるサンプルに成長しました。データセットに基づいて、ID 99にリンクされた71の固有のパックされていないサンプルを観察しました。

複数のバージョン(常時一貫性がある)に関与し、固有のサンプルの数(ボリューム)と感染の数(業界のマルウェア検出に基づく)を組み合わせることで、どのアフィリエイトが最も攻撃的で、RaaSネットワークにおそらく最も重要だったかを効果的に示すことができます。

アフィリエイトVSセールスパーソンと妨害

アクティブなアフィリエイトは、一般企業のトップセールスパーソンと似ています。RaaSネットワークの収入はトップクラスのアフィリエイトの成績に大きく左右されることを考えると、トップクラスのアフィリエイトのアクティビティを特定して妨害すれば、RaaSネットワークの収入、内部の士気、全体的なRaaSパフォーマンスに悪影響を与えることができます。これは、アフィリエイトや共謀者を逮捕することで達成できます。

別の方法は、無料の解読ツールを提供するか、暗号化を防ぐワクチンを構築することで、ビジネスモデルを混乱させ、ランサムウェアの利益を低下させることです。この妨害により、犯罪者の運用コストがかさみ、RaaSのうまみを損なわせます。

最後に、より踏み込んだプロセス(容疑者の検挙と法的措置)については、被害者、サンプル、アフィリエイトをリンクする監護権を維持することが重要です。このデータの収集者および所有者となるセキュリティプロバイダーは、将来これを保護する上で大きな役割を果たします。

バージョンとID番号

RAWGraphsのオンラインツールを使用して、バージョンとID番号の関係を示すデータセット全体のグラフィック表示を作成しました。以下は概要です。より詳細な概要はMcAfee ATR Githubにあります。

図4.GandcrabのバージョンとIDの概要

トップパフォーマンスを示すアフィリエイトは、他よりも線幅が太く、広がっているため、一目で分かりました。データによると、最も活発なID番号は15,41,99および170でした。RaaSファミリーの主要なプレーヤーを特定することで、法執行機関が貴重なリソースを活用することができます。

オールスターズはどこに。5.2に消えたトップクラスのアフィリエイト

当初はまったく気づいていなかったのですが、概要を振り返ると、2月にリリースされたGandCrabの最後のバージョン5.2に存在するトップクラスのアフィリエイト/ ID番号が見当たらないことが目を引きました。これは、GandCrabの終了が間近に迫っていることを示す初期の指標であると考えています。

この発見は、何らかのイベントが起きて、その結果、最も活発なアフィリエイトがいなくなったことを示しているとみられます。原因は内部または外部にある可能性があります。

しかし、私たちを困惑させるのは、なぜハイレベルのアフィリエイトが消えたのかです。正確な理由がわかることはないでしょう。おそらく、なぜ人が今の仕事を辞めるのかというのにとても似ています。不満だから、けんかしたから、いいオファーがあったから…

トップクラスのアフィリエイトがいなくなったことで新たな問題が出てきます。どこにアフィリエイトたちは行ったのでしょう?

図5.バージョン5.2にリンクされたIDとSUB_ID番号

概要全体を見ると、アクティブなID番号15,41,99および170がGandCrabバージョン5.2のいかなる感染でも確認されなかったことに注意してください。バージョン5.2で最も活発なアフィリエイトは287番でした。

さようならGandCrab、こんにちはSodinokibi / REvil

最初のエピソードでは、GandCrabとREvilの技術的な類似点について説明しました。これらの類似性に気付いたのは私たちだけではありません。セキュリティ記者のブライアン・クレブスは、GandCrabとSodinokibiまたはREvilという名前の新しいランサムウェアの類似性を明らかにする記事を発表しました。いくつかの闇フォーラムには投稿もされています。

アフィリエイトがRaaSファミリーを替える…

UNKN(別名不明)を名乗るユーザーが2019年7月4、すでに運用していた個人のRaaSの広告を有名な2つの闇フォーラム上に掲載しました。以下は、投稿のスクリーンショットです。興味深いのは、Lalartuというニックネームを持つユーザーからの応答です。広告への返信で、LalartuはUNKNやそのチームと仕事をしていること、彼らがかつてGandCrabのアフィリエイトであったこと、それがBleepingcomputerにも気づかれたことについて言及しています。Lalartuの投稿は、GandCrabのいくつかのトップアフィリエイトが突然姿を消し、別のRaaSファミリーに移行した可能性があるという以前の私たちの観察と一致します。この疑惑は濃厚ですが、技術的な証拠では確認されていません。

Sodinokibiに移行したGandCrabのアフィリエイトはLalartuだけではないようです。トップクラスのアフィリエイトが堅実で非常に有益な感染方法を獲得しているとすれば、開発者とともに一線から退く理由はありません。

2019年2月頃、GandCrabの感染行動のいくつかに顕著な変化がありました。マネージドサービスプロバイダー(MSP)が脆弱なシステムを介して標的にされ、顧客の間にGandCrabが大規模な感染が広がりました。それは過去のどのアフィリエイトにも見られなかったものでした。興味深いことに、GandCrabが撤収して間もなく、MSPに対するその手口をSodinokibiが利用したのです。GandCrabの元アフィリエイトがSodinokibiに移行したことを示す別の指標です。

私たちは、Sodinokibiが別の著名なRaaSファミリーで成功を収めたトップクラスのアフィリエイトを積極的にリクルートして、一種のオールスターチームを形成したのではないかとみています。

同時に、RaaS市場では、未熟なアフィリエイトがスキルを磨き、拡散能力を向上させ、より強力なRaaSファミリーに活動の場を移すことができます。ランサムウェアに対する検挙が比較的少ない現状と相まって、サイバー犯罪者に深刻な結果を伴う危険なキャリアアップを可能にしているのです。

Sodinokibi / Revilサンプルからの「管理」の収集

SodinokibiがGandCrabとのもう1つの共通項は感染の管理で、RaaSの成長の可能性を示す指標になっています。以前のブログで、Sodinokibiが、PID番号やsub値などの特定の値を含むすべてのサンプルでJSON構成ファイルを生成することについて説明しました。そこで、収集できたSodinokibi構成ファイルにGandCrabのアフィリエイトの手法を使用することにしました。

GandCrabでは、ハードコードされた指標を引き出すために独自のツールを作成する必要がありましたが、Sodinokibiでは、幸いにも、Carbon Blackが多くの面倒な作業を行ってくれるツールを開発しました。結局は、手動で構成を取得しなければならないサンプルがいくつか残りました。JSONファイルにはさまざまな値とフィールドが含まれています。 GandCrabとの比較のために、各サンプルのPI​​DおよびSUBフィールドに注目しました。これらの値は、GandCrabサンプルのIDおよびSUB_IDフィールドと同様の特性を持っているように見えたためです。

図6.REVILのJSON構成値

データ構造の解釈

収集したデータを使用して、GandCrabで行ったのと同じ分析方法をSodinokibiに適用しました。Sodinokibiは、GandCrabと非常によく似ているRaaS構造を持っており、ほぼ同様の親子関係の構造であることが分かりました。以下では、GandCrabのアフィリエイト99番のアクティビティと、Sodinokibiのアフィリエイト19番のアクティビティを比較しました。

図7.Gandcrab ID99番(親)とそれに対応するサブ(子)のアクティビティ
図8.SODINOKIBI PID 19番(親)とそれに対応するサブ(子)のアクティビティ

GandCrabの全体のタイムスパンは、Sodinokibiよりも、サンプルの合計が多いため、長期間をかけて生成されたと言うべきでしょう。

それにも関わらず、類似性は際立っています。

両方のID番号のアクティビティは、親ID番号を基点とし、複数のサンプルにリンクされたそれぞれのSUB番号に分岐するツリー構造になっています。

上記のアクティビティは、不正アクセスの実行後、RDPの総当たり攻撃とSodinokibiによるシステム感染に特化したランク分けされたアフィリエイトグループにリンクされていると考えられます。

RaaSファミリーの構造はあまりに大きく、限られたブログのスペースでは十分に説明できません。SodinokibiのRaaS構造の全体の詳細は、McAfee GitHubを参照してください。

結論

GandCrabに関する調査に着手したときは、深いウサギの巣穴をこれほど深く掘り下げていくとは思いもよりませんでした。大量サンプル分析と管理指標の探索により、数百万ドル規模の犯罪活動に関する洞察を深め、主要なプレーヤーを特定し、ビジネス構造の変化を通じて将来のイベントを予測する方法が提供されました。GandCrabの撤収は一夜にして決定されたものではなく、アフィリエイトに関するデータに基づけば、何かが起こるであろうことは明らかだったと考えています。

Sodinokibiの出現と、GandCrabの著名な元アフィリエイトによる数件のフォーラムへの投稿によって、すべてがつながりました。トップアフィリエイトのいくつかが、犯罪ビジネスを促進するためにSodinokibiを新たな住処とした明確な兆候を私たちは確認しています。

RaaSネットワークの報酬がトップクラスのアフィリエイトのパフォーマンスに大きく依存しており、通常のビジネスのように運営されていることを考えれば、私たちセキュリティ業界は、犯罪者が開発する製品を調査するだけでなく、犯罪ビジネスを首尾よく崩壊させることができる方法を明らかにする必要があります。

次のエピソードでは、アフィリエイトプログラムに関連するおカネの流れをさらに掘り下げ、攻撃者たちがRaaSビジネスモデルでどれだけのおカネを稼いでいるのかを試算したいと思います。

※本ページの内容は、2019年10月2日(US時間)更新の以下のMcAfee Blogの内容です。
原文:McAfee ATR Analyzes Sodinokibi aka REvil Ransomware-as-a-Service – The All-Stars
著者:John Fokker and Christiaan Beek