新しいランサムウェア・アズ・ア・サービス・ツール「Thanos」が「Hakbit」との接続を示す
編集者注 : 以下の投稿はレポート全文の抜粋です。分析全文を読むには、ここをクリックしてレポートをPDF形式でダウンロードしてください。
Recorded FutureのInsikt Group®は、徹底的な調査の一環として、Thanos ランサムウェア の新しい検出方法を開発しました。 データソースには、Recorded Future® Platform、オンラインマルチスキャナーリポジトリ、およびさまざまな OSINTツールが含まれていました。
この調査の対象読者には、新しいランサムウェアの脅威に関心のあるセキュリティ実務家、ネットワーク防御者、脅威インテリジェンスの専門家が含まれます。
Executive Summary
2020年1月、Insikt Groupは、Recorded Future® Platformを使用してRIPlace技術の武器化を監視しているときに、「Nosophoros」という別名の脅威アクターが開発したThanosという新しいランサムウェアファミリーがExploit Forumで販売されていることを発見しました。
Nosophorosは、43の異なる設定オプションに基づいて新しいThanosランサムウェアクライアントを生成する機能を備えたプライベートランサムウェアビルダーとしてThanosを提供しました。 Recorded Futureは、Thanosランサムウェアビルダーを分析して、Thanosランサムウェアがサポートできる幅広い機能を検出、理解、および実行しました。 Thanos クライアントは、全体的な構造と機能がシンプルです。 C# で記述されており、難読化しても簡単に理解できますが、RIPlace 手法などのより高度な機能が組み込まれています。
この調査では、私たちの検出結果とHakbitと呼ばれるランサムウェアファミリーとの間に重複があることが観察されました。 Insikt Groupは、コードの類似性、文字列の再利用、およびコア機能に基づいて、Hakbitとして追跡されるランサムウェアサンプルがNosophorosが開発したThanosランサムウェアビルダーを使用して構築されていることを高い信頼性で評価しています。
Thanosの使いやすさは、Recorded Futureが複数のアンダーグラウンドフォーラムでマルウェアの人気が高まっていることを観察しているため、作成者にとって資産となっています。 これは、脅威アクターがすぐに使用できるランサムウェアを探している傾向が続いていることを示していると考えています。 Nosophorosは、少なくとも過去6か月間、定期的なアップデートと新機能を使用して、Thanosの開発を続けてきました。 Thanosは、ランサムウェア・アズ・ア・サービス(RaaS)モデルに似た「ランサムウェアアフィリエイトプログラム」として宣伝されています。 サノスは、アフィリエイトプログラムの一環として、脅威アクターによって個別にも集団的にも武器化され続けます。
主な判断
- Thanosは、RIPlace技術の使用を宣伝した最初のランサムウェアファミリーであり、セキュリティ研究に由来する概念実証を武器化しているアンダーグラウンドアクターの実際の例を示しています。
- Thanos ランサムウェアには、RIPlace の使用を除いて、新しい機能や手法は組み込まれていません。 外部FTP接続の禁止や、既知の攻撃的なセキュリティツールのダウンロードをブラックリストに登録するなど、情報セキュリティのベストプラクティスを実践することで、Thanosの2つの主要コンポーネントであるData StealerとLateral Movementに関連するリスクを回避できます。
- Recorded Futureは、コードの類似性、文字列の再利用、およびコア機能に基づいて、Thanosランサムウェアが他のセキュリティ研究者によってHakbitと特定されたコモディティランサムウェアであることを高い信頼性で評価しています。
- デフォルトでは、Thanos は実行時に生成されたランダムな 32 バイトの文字列を AES ファイル暗号化のパスワードとして使用します。 その後、文字列はランサムウェアオペレーターの公開鍵で暗号化され、身代金メモに追加されます。 対応する秘密鍵がなければ、暗号化されたファイルを回復することはできません。
- Thanos ビルダーには、AES ファイルの暗号化に静的パスワードを使用するオプションが含まれています。 このオプションを選択すると、Thanos によって生成されたクライアントには、ファイルの暗号化に使用される AES パスワードが含まれます。 クライアントを分析すると、要求された身代金を支払うことなくデータを回復できます。
- Thanosクライアントの実行中に、暗号化キーと復号化キーをメモリから回復できるため、要求された身代金を支払うことなくデータが失われるのを防ぐことができます。
背景
2019年11月、セキュリティ企業のNyotronは、RIPlaceと呼ばれるランサムウェア手法の概念実証 を公開し ました。 リリース時点では、RIPlaceは既存のほとんどのランサムウェア対策手法をバイパスし、テスト済みのアンチウイルス(AV)製品を回避し、EDR(Endpoint Detection and Response)製品による検出を回避していました。 Nyotronは、Microsoftを含むリストされているベンダーに欠陥を開示しました。 しかし、MicrosoftがBleepingComputerに与えた 声明 によると、本稿執筆時点ではRIPlaceは実際にはランサムウェアで観察されていなかったため、「この手法は脆弱性とは見なされず、CFAは多層防御機能であるため、当社のセキュリティサービス基準を満たしていない」とのことです。 BleepingComputerによると、2019年11月に最後に報告されたように、KasperskyとCarbon Blackのみが、この手法の実行を防ぐためにソフトウェアを変更しました。 しかし、2020年1月という早い時期から、Insikt Groupは、ダークウェブやアンダーグラウンドフォーラムのメンバーがRIPlace技術を実装しているのを観察しています。
図 1: 販売中のランサムウェアにおけるRIPlace技術の出現を示すタイムライン。 (出典:Recorded Future)
Insikt Groupは、2020年2月に脅威アクターのNosophorosがXSSフォーラムで宣伝しているThanosランサムウェアを初めて観測しました。これは、RIPlace技術を含む機能アップデートによるものです。 ノソフォロスは、サノスビルダーに毎月の「ライト」または生涯の「会社」サブスクリプションを提供しました。 同社のバージョンには、RootKit、RIPlaceテクノロジー、アフィリエイトプログラムのクライアント有効期限設定、LAN上の拡散など、ライトバージョンと比較して追加機能が含まれています。 このレポートは、Thanosランサムウェアの全機能をカバーするライフタイムの「company」バージョンの分析に基づいています。
脅威分析
ビルダー分析
Thanos ランサムウェア ビルダーを使用すると、ランサムウェアのオペレーターは、さまざまなオプションを使用してランサムウェア クライアントを作成できます。 ビルダーの完全なユーザーインターフェースを図2に示します。ビルダーにはいくつかのデフォルトオプションが用意されていますが、身代金メモに含まれるビットコインアドレスなど、オペレーターが他のオプションを構成する必要があります。 その他のオプションは、オペレーターの裁量で有効にすることができます。
図 2: Thanosランサムウェアビルダーのオプション。 (出典:Recorded Future)
オペレーターが構成ステージを完了すると、ビルダーはオペレーターが選択したディレクトリに .NET 実行可能ファイルを生成します。 生成されたバイナリは、選択した構成オプションに基づいて、実際のブール値ではなく文字列値 "YES" と "NO" を使用して構成オプションに基づいて、テンプレート バイナリ内の文字列を置き換えた結果のように見えます。 設定オプションを使用した難読化されていないサンプルの例を図3に示します。 ビルダーでは、これらの各オプションにカーソルを合わせると、オプションのヘルプメッセージが表示されます。 オプションとそのヘルプメッセージの完全なリストは、付録Aにあります。
図 3: サンプル 81e81f0bbbdb831eda215033b7a7dbf2eed3812f4e58118f181a8e99e613179e からの構成。 (出典:Recorded Future)
ビルダーは、最終的なバイナリの難読化の管理も担当します。 難読化が有効になっていない場合、生成された .NET 実行可能ファイルにはプレーンテキストの文字列が含まれますが、変数、メソッド、クラス、および名前空間の名前はランダム化されます。 ビルダーには、2 つの難読化方法が用意されています。 主な方法は、Redgate社が開発した SmartAssembly と呼ばれる商用難読化ツールのクラックバージョンを使用することです。 2 番目の方法は、クライアントを埋め込みリソースファイルとして Inno Setup インストーラファイルを作成する設定オプションです。
ランサムウェアクライアントの概要
Thanos クライアントは C# で記述されています。 生成されたすべてのクライアントは、メソッド名、変数名、およびクラス名にランダム化された文字列を持っていました。
Thanos クライアントには、ビルド フェーズで選択したオプションと設定に応じて 12 から 17 のクラスが含まれます。 Program や Crypto などの一部のクラスは、すべてのビルドに含まれています。 NetworkSpreading や Wake on LAN などの他のオプションは、関連するオプションが選択されている場合にのみ、最終的なバイナリに含まれます。 次の表は、コアクラスとその意図された目的の説明を示しています。
クラス名 | 説明 |
---|---|
AMSIの | Windows マルウェア対策スキャン インターフェイス (AMSI) のバイパスを試みます |
アンチキル | タスクマネージャーの使用を無効にし、プロセスが終了するのを防ぎます |
Anti_Analysis | デバッガーの使用、Sandboxie での実行、仮想マシンの使用、Windows XP または小さなハード ドライブの実行を確認します |
隠れ | ランダムに生成された文字列を作成し、Base64 エンコードします |
暗号化ヘルパー | 暗号化のためのヘルパー関数が含まれています。 AES 暗号化/復号化キーのデコードに使用される公開キーも含まれています |
無効にする | Windows Defenderを無効にします |
空 | ごみ箱を空にする |
暗号化 | ファイルの暗号化/復号化を実行する主な機能 |
FTPの | FTPサーバーにデータをアップロード |
殺す | 実行中の場合は、AVGまたはMalwareBytesアンチウイルスエンジンを強制終了します |
ロックされたファイル | 暗号化前にロックされたファイルの解放を試みます |
ミューテックス ヘルパー | ミューテックスを作成します |
ネイティブメソッド | スリープと実行状態のメソッド |
ネットワークスプレッディング | SharpExec_x64.exe または SharpExec_x86.exe を使用して、他のマシンにクライアントをインストールする |
プロセスクリティカル | Thanos プロセスを「クリティカル プロセス」として設定し、プロセスが終了した場合にシステムが再起動するようにします |
プログラム | Thanosクライアントの主な機能 |
壁紙 | このオプションを設定すると、カスタムのデスクトップの壁紙がメインのデスクトップの壁紙として設定されます |
Insiktは、Thanos Client Feature Analysisのセクションで、より興味深いクラスのいくつかについて追加の分析を提供しています。
Thanos クライアントの実行フロー
Thanos の一般的な実行パスには、以下に示す 3 つの主要なアクティビティが含まれ、図 4 に示されています。
- 詳細オプション: 構成設定に関連するアクションを実行します
- 終了と回復の防止: バックアップ・ファイルやシャドウ・コピーの実行と削除を妨げるサービスやプロセスを停止します
- 暗号化とアップロード: ファイルを暗号化し、ビルド時にFTPにアップロードするように構成されている場合はFTPにアップロードし、身代金メモを表示します
図 4: Thanos クライアントの実行中に作成されたプロセス。 (出典:Recorded Future)
詳細オプション
最初のフェーズは、主にビルド中に設定された詳細オプションの実行で構成されます。 これには、Kill Defender、Anti-VM、AMSI Bypassなどのアクションが含まれます。 クライアント自体の内部では、プログラム クラスの最後にある変数と文字列配列のリストによって構成設定を決定できます。図 5 は、クライアント内で構成設定が "yes" または "no" に設定される方法を示しています。
図 5: Thanos クライアントのクラス変数としての設定オプション。 (出典:Recorded Future)
終了と回復の防止
クライアントが構成アクションを実行した後、クライアントは次に一連のタスクを実行して、正常に実行されることを確認し、バックアップとシャドウ コピーを削除します。 これらのタスクは、複数の子プロセスを引き起こし、それぞれがnet.exe、taskkill.exe、 del.exe、そしてvssadmin.exe。 付録Bでは、これらのアクションについてより詳細に説明しています。
暗号化とアップロード
最後に、Thanos クライアントは接続されたストレージ ドライブを走査し、ビルダーで設定されたファイル拡張子を持つファイルの検出と暗号化を試みます (デフォルトの拡張子は付録 C に記載されています)。 FTP サーバーにファイルをアップロードするオプションが有効になっている場合 (ビルダーでは "datastealer" と呼ばれます)、ビルド時に設定されたリストと一致する拡張子を持つファイルは、暗号化前にアップロードされます。 アップロードするデフォルトの拡張子は、「.docx」、「.pdf」、「.xlsx」、「.csv」です。 暗号化されたファイルの拡張子は、ビルドタイプで設定された値に変更され、デフォルト値は「.crypted」です。
ファイルを暗号化すると、身代金メモ(図6を参照)は、デスクトップと、ファイルが暗号化されているフォルダに保存されます。 デフォルトの身代金ファイル名は「HELP_ME_RECOVER_MY_FILES.txt」です。 Thanos クライアントには、脅威アクターが設定した HTTP サーバーからダウンロードされた画像に壁紙を変更する機能もあります。
図 6: デフォルトの身代金メモ。 (出典:Recorded Future)
Thanosクライアントは、完了した暗号化プロセスのログを作成し、そのログを脅威アクターのFTPサーバーにアップロードするように構成できます。 FTP機能とWebサーバーから壁紙をダウンロードする機能を除いて、Thanosクライアントにはコマンドアンドコントロール(C2)通信の組み込み機能はありません。
そのように構成されている場合、前のすべての手順が完了すると、Thanos クライアントは自身を削除します。
Thanos クライアント機能分析
Thanos ランサムウェアの機能を理解するために、Recorded Future は、さまざまな構成オプションが有効になっている 80 を超えるクライアントを生成しました。 このセクションでは、ランサムウェアの 6 つの主要な特徴について説明します。
暗号化プロセス
Thanos クライアントは、CBC モードで AES-256 を使用してユーザー ファイルを暗号化します。 AES 暗号化に使用されるキーは、Windows の rfc2898DeriveBytes 関数呼び出しを使用して、パスワードとソルトから派生します。 クライアントがそのキーを使用して検出したすべてのファイルを暗号化すると、クライアントは埋め込み 2048 RSA 公開キーを使用して、使用された AES パスワードを暗号化します。 この暗号化されたパスワードのbase64文字列が身代金メモに追加され、被害者に暗号化されたパスワード文字列を脅威アクターに送信してファイルを復号化するように指示します。 AES パスワードを復号化するには、パスワードの暗号化に使用される公開鍵とペアになっている秘密鍵が必要です。 Thanos クライアントを構築したオペレーターのみが秘密鍵にアクセスできる必要があります。
そのパスワードは、バイナリに静的に含まれるか、実行時に動的に作成されます。 選択は、静的パスワードを使用するビルダーオプションによって決定されます。 このオプションのヘルプ テキストには、「同じネットワーク内のすべてのコンピューターは、同じ暗号化パスワードを使用して暗号化されます」と表示されます。 動的キーを選択した場合、暗号化プロセスを開始する前に、Thanos クライアントは Windows RNGCryptoServiceProvider を使用して、AES パスワードとして使用されるランダムな 32 バイトの base64 文字列を生成します。 Thanos クライアントが静的パスワードを使用するように設定されている場合、パスワードはバイナリ自体に保存されます。 つまり、暗号化が行われた後にThanosクライアントが回復された場合、 被害者は身代金を支払わずにファイルを回復できる可能性があります。
Thanosクライアントは、各ファイルの一部のみが暗号化される「高速」暗号化モードもサポートしています。 暗号化部分のサイズは、ビルド時に設定されます。 このモードを有効にすると、クライアントはファイルから設定された量のデータを暗号化し、finally の先頭から始まる暗号化されたコンテンツでファイルを上書きし、文字列を "Thanos--" の形式で先頭に追加します
図 7: 部分暗号化の「高速」モード機能に含まれるThanos文字列。 (出典:Recorded Future)
RIPレース
「会社」層の機能の 1 つは、RIPlace 手法を使用するように Thanos クライアントの暗号化プロセスを変更できることです。 前述のように、RIPlaceは、2019年11月にセキュリティ会社のNyotronが特定のランサムウェア対策の緩和策を回避するために公開した手法です。
この技術の詳細については、 NyotronのWebサイトをご覧ください。 大まかに言うと、この手法は、MS-DOS デバイス名を介したシンボリック リンクを利用してターゲット ファイルを暗号化し、暗号化されたバージョンのファイルを元のファイルの場所にコピーするプロセスを示しています。
Thanos Builder で有効にすると、生成されたクライアントには追加のクラスが追加され、RIPlace 手法を使用するように暗号化ワークフローが変更されます。
図 8: RIPlace クラスエントリ関数。 (出典:Recorded Future)
変更されたワークフローは比較的簡単です。 RIPlace ワークフローを担当する関数を図 8 に示します。まず、Thanos クライアントはターゲット ファイルの内容を一時ディレクトリにコピーし、ファイルの内容を暗号化して、暗号化されたファイルの内容を一時ディレクトリ内のファイルに保存します。 次に、クライアントは図 9 に示すコードを実行します。MS-DOS デバイス名は、ターゲット ファイルへのパスとデバイス名 "Resolve" と共に作成されます。 MoveFileExW は、一時ディレクトリ内の暗号化されたファイルを新しい MS-DOS デバイスに移動するために呼び出され、ターゲット ファイル パスへのシンボリック ポインターとして機能します。 その結果、ターゲット ファイルはファイルの暗号化されたコピーで上書きされます。
図 9: RIPlace 手法を実行する関数。 (出典:Recorded Future)
ラテラルムーブメント
Thanosクライアントのラテラルムーブメント機能は、主にラテラルムーブメント専用に設計された攻撃的なセキュリティツールである SharpExecツールの使用によって駆動されます。 クライアントは、GitHub リポジトリから SharpExec ツールをダウンロードします (ダウンロード URL は「検出と軽減」セクションで提供されます)。
まず、Thanos クライアントはローカル ネットワークをスキャンして、オンライン ホストのリストを取得します。 次に、Thanos は SharpExec の PSEXEC のような機能を使用して、リモート コンピューター上で Thanos クライアントを実行できるようにします。
図 10: SharpExecを使用したネットワーク拡散機能。 (出典:Recorded Future)
ウェイクオンLAN(WoL)
被害者のローカルネットワークを介して横方向に拡散するために、Thanosは「Wake on LAN」(WoL)と呼ばれる一部のコンピューターのハードウェア機能を利用して、ホストをオンにしようとします。 これは、付録Dで説明されている形式のWoL「マジックパケット」を送信することによって行われます。
これを実現するために、クライアントはまずアドレス解決プロトコル (ARP) を使用して、IP アドレスとメディア アクセス制御 (MAC) アドレスのマッピングを収集します。 この情報は ARP テーブルに含まれています。
IPアドレスとMACアドレスを使用して、クライアントは「マジックパケット」を作成し、リモートホストに送信できます。 その後、Thanos クライアントは、ユーザー名「Administrator」または「Admin」を使用してリモートホストドライブへの接続を試みます。 接続が成功すると、リモートドライブが暗号化するドライブのリストに追加されます。
図 11: Wake on LAN機能。 (出典:Recorded Future)
WoLの機能は、 Ryukで観測されたWoLの実装と似ています。
データ窃取
ランサムウェアの運用では、機密ファイルを公に配布すると脅迫して被害者を恐喝する一般的な傾向に従って、Thanosクライアントは、指定された拡張子のセットを持つすべてのファイルを盗み出す機能を統合しています。 アップロードするデフォルトの拡張子は ".docx"、".pdf"、".xlsx"、".csv" ですが、これらはビルド時に変更できます。 流出はFTPウェブクライアントを介して行われます。 FTP URL、ユーザー名、およびパスワードのデフォルト パラメーターは、難読化操作を行った後でも、最終的なクライアントですべて確認できます。 これを管理するコードを図 12 に示します。
図 12: FTP窃取機能。 (出典:Recorded Future)
今後の展望
Recorded Futureは、2020年2月に レポートを公開し 、その年のランサムウェアのトレンドをいくつか予測しています。
- ランサムウェア・アズ・ア・サービス(Ransomware-as-a-Service)市場は今後も繁栄するでしょう
- ランサムウェアの「持てる者」と「持たざる者」の間には、引き続き分離が進むでしょう
これらの予測は、サノスの進むべき道筋を象徴していると考えています。 RaaSモデルは、他のオペレーターにとって、脅威アクターに業務をアウトソーシングする最も迅速な支払い手段として広く成功しています。 Insikt Groupは、NosophorosがExploit Forumの元の投稿に「Thanos Ransomware Affiliate Program」というタイトルを付けたことを確認しています。 前述のように、サノスの「ライト」ビルドを購入または取得することを選択した人は、アフィリエイトプログラムにオプトインできますが、アフィリエイトになる資格は不明です。 ただし、他の人は、サノスのフル「会社」バージョンを購入し、独自のアフィリエイトまたはRaaSの運用を開始することができます。 本稿執筆時点で、Insikt Groupは、Nosophorosがコミュニティから肯定的な支持を得ていることを観察しており、このツールは「完璧に機能している」と主張し、「アップデートを引き続き行う」ことを要求しています。 サノスはノソフォロスによって積極的に開発されています。 Recorded Futureは、サノスがアフィリエイトプログラムの一環として、個人または集団で脅威アクターによって武器化され続ける可能性が高いと評価しています。
最後に、HakbitのサンプルがThanosランサムウェアファミリーに属すると特定されたことから、Thanosが過去6か月間一貫して展開されていたことは明らかです。 前述したように、観測された新しいサンプルにはそれぞれ時間の経過とともに追加の機能が組み込まれており、Nosophorosがランサムウェアを積極的に開発していることを示唆しており、この傾向はすぐには止まりそうにありません。
編集者注 : この投稿はレポート全文の抜粋です。分析全文を読むには、ここをクリックしてレポートをPDF形式でダウンロードしてください。
関連