トレンドマイクロは、被害者のシステムに大量の遠隔操作ツール(RAT)を送り付けるファイルレス攻撃キャンペーンを確認しました。この攻撃では「クリプターサービス」である「HCrypt」の派生系が使用されていました。「クリプター」とは、攻撃者が自身の使用するマルウェアの検出回避/困難化の目的で使用する、暗号化/難読化用ツールです。HCryptは「Crypter-as-a-service」(クリプターサービス)として認識されており、検出困難化のためのクリプター/多段化ジェネレーターです。攻撃者はサービスにお金を払って選択したマルウェアに最適な難読化を施し、多段のロード手法によるファイルレス活動を行うためのスクリプトを入手します。今回確認したHCryptの新しいサービスでは、過去に確認したものと比べて、新たな難読化メカニズムが使用されていました。今回の攻撃は2021年8月中旬に活動のピークを迎えていましたが、これまでに観測されたものとは異なる新たな難読化の手法や攻撃ベクタが確認されています。
■攻撃キャンペーン「Water Basilisk」の概要
トレンドマイクロが「Water Basilisk」と命名した今回の攻撃では、大部分のケースで、一般に利用可能な「archive.org」、「transfer.sh」、「discord.com」などのファイルホスティングサービスを使用してマルウェアをホストしており、その一方で、フィッシングキットのホストにはWordPressを使用している一般のホームページをハッキングして使用していました。
フィッシングメールやフィッシングサイトを通じて拡散されたISOファイルには不正なファイルが仕込まれており、感染させたシステムメモリに更なる攻撃を行う、難読化された不正なVBスクリプトが組み込まれています。
攻撃の最終段階で実行される難読化されたPowerShellスクリプトにはペイロードが仕込まれており、難読化を解除し、ペイロードを指定のプロセスに挿入(インジェクション)する機能を備えています。いくつかの検体では、PowerShellスクリプト内に「NjRat」、「BitRat」、「Nanocore RAT」、「QuasarRat」、「LimeRat」、「Warzone」など、7種類ものRATが仕込まれていました。
■「HCrypt」の最新バージョン7.8の概要
Water Basiliskの連鎖攻撃は、VBスクリプトとPowerShellコマンドを組み合わせたものです。HCryptは難読化されたVBスクリプトとPowerShellを作成して、最終的なペイロードを被害者のシステムの指定プロセスに配置、或いはインジェクションします。HCryptのビルダやウェブサイトを確認する限り、最新バージョンは7.8のようです。
図1:HCryptバージョン7.8のビルダ
図2:RATの亜種と購入価格が表示されているHCryptバージョン7.8のアップデート
図3:Sellix(ECサイト)で販売されているHCryptバージョン7.8
図1~3の通り、HCryptバージョン7.8は199USドルで販売されています。また、図2には、アップデートの一環として、先程触れた、今回の亜種を使用してロード可能な各種RATが列挙されています。
■「Water Basilisk」の攻撃の解説
本セクションでは今回のバージョンの挙動について解説します。図4はWater Basiliskの概要になっており。攻撃の流れは以下の通り進行します。
- フィッシングメール、或いはフィッシングサイトでユーザを騙して、多段化のための不正VBスクリプトが仕込まれている不正ISOファイルをダウンロード・実行させる
- 初期VBスクリプトが、メモリ内のPowerShellコマンドを介して、次の段階のVBスクリプトをダウンロード・実行する
- ダウンロードされたVBスクリプトは被害者のシステム内で活動を持続化する機能を備えており、メモリ内のPowerShellコマンドを介して、最終段階のスクリプトをダウンロード・実行する
- 最終段階のPowerShellスクリプトはペイロード(RAT)の難読化を解除し、指定のプロセスにインジェクションする役割を果たす
図4:攻撃の概要
今回の攻撃には、フィッシングメールとフィッシングサイトの2通りの異なる攻撃ベクタが使用されていますが、両者とも感染の流れは同じで不正なISOファイルから攻撃が開始されます。
トレンドマイクロでは、今回の攻撃にISOファイルが使用された理由を2つ想定しています。第一の理由はCDなどのイメージファイルであるISOファイルのサイズは大きい傾向にあるため、メールゲートウェイによっては添付のISOファイルが適切にスキャンされない可能性があることにより検出回避を狙うためです。もう一つの理由は、新しいオペレーティングシステムでISOファイルを開くことは、元々搭載されているISOのマウントツールによって、ファイルをダブルクリックするのと同じくらい簡単に実行できるという点です。これらの理由から、ISOファイルを使用することで、被害者がファイルを開き、そのシステムが感染する可能性が高くなります。
今回の攻撃の興味深い点は、HCryptの開発者が、Transfer.shやInternet Archive (archive.org)などのパブリックファイルホスティングサービスにホストされている不正スクリプトをどのようにロードしているかという点です。ISOファイルが開かれると、このホスティングサービスから必要なスクリプトがダウンロードされます。図5と図6は、スクリプトのホストに使用されているarchive.orgアカウントの一例です。
図5:ローダのスクリプトをホストするarchive.orgアカウント
図6:ローダのスクリプトをホストするarchive.orgアカウント
図7は、フィッシングキットをホストし、「Spectrum Bill.iso」ファイルをダウンロードする、ハッキングされたWordPressのサイトの一例を示しています。図8は、攻撃者がサイトに追加した不正コンテンツを示しています。
図7:今回の攻撃で使用されたフィッシングサイト
図8:攻撃者がアップロードした不正コンテンツ
「Spectrum Bill.iso」ファイルには、VBスクリプトを難読化したHCryptが仕込まれており、PowerShellコマンドを介して、次の段階のスクリプトをダウンロード・実行する機能が備わっています。この第二段階において例外はありますが、活動の持続化、すべてのスクリプト、PowerShellおよびバイナリはメモリ内で実行され、ファイルレスである事実を発見しました。
図9:「Spectrum Bill.iso」のコンテンツ
図10:「Spectrum Bill.vbs」のコンテンツおよびクリーンアップコード
メモリにダウンロードされたコンテンツ「bx25.txt」は、別の難読化されたHCryptのVBスクリプトです。すでに説明した通り、このコードの目的は活動の持続化であり、メモリ内で実行されない唯一のコードです。「C:\UsersPublic\Run\Run.vbs」ファイルを作成して、それをStartupパスに追加し、メモリ内で最終段階のスクリプトをダウンロード・実行することで持続性を維持します。
感染したコンピュータを立ち上げる度に、マルウェアが、指定のURLから最新のペイロードをダウンロードします。そのため、攻撃者は最終ペイロードおよびC&Cサーバを容易に変更することができ、感染したシステム上での痕跡を減らすことができます。
図11:整理されたbx.25のコード、持続化を目的とした第二段階のVBスクリプト
Run.vbs(「dx25.txt」)は、最終ペイロードが仕込まれている最終段階のPowerShellです。これは感染したシステムのメモリ内で実行され、ペイロードの難読化解除、ローディング、ハードコーディングされた指定の正規プロセスへの挿入を担っています。場合によっては、マルウェアは感染したシステムに最大7種類ものRATをロードします。図12の一部はこのマルウェアの具体的な挙動を示しています。
図12:PowerShellローダ、「dx25.txt」ファイルのコード
ロードされたバイナリの中には、「VBNET」と呼ばれるDLLインジェクタも含まれており、自動的に「.NET PE」ペイロードを、選択した「.NET」の正規プロセスにロードします。図12では、「$HH1」は「VBNET PEインジェクタDLL」であり、「$HH5」には、PowerShellコマンドが仕込まれており、最終的なマルウェアペイロード「$HH3」を指定のプロセス、すなわち、「aspnet_regbrowsers.exe」に受け渡しています。
最終ペイロードを自動的に抽出するため、トレンドマイクロでは、難読化を解除し、最終段階のPowerShellからペイロードを抽出するPythonのスクリプトを開発しました。このスクリプトは、難読化されたPowerShellのスクリプトが保存されているディレクトリを受け取り、抽出されたペイロードが保存されているディレクトリを出力します。Pythonのスクリプトは、こちらをご参照ください。
■ビットコインおよびイーサリアムのアドレスの乗っ取り犯のバイナリを確認
トレンドマイクロでは、感染したシステムにロードされたRATの中に、ビットコインやイーサリアムのアドレスの乗っ取り犯のバイナリが含まれていることを確認しました。このバイナリは、regexを使用して、被害者のクリップボードのコンテンツを検索し、ビットコインやイーサリアムのアドレスを検出します。そして、それを攻撃者自身のアドレスに置き換えます。図13は、HCryptインターフェースのどこでバイナリが作成されているかを示しています。
図13:乗っ取り犯のバイナリを作成する開始地点を示すHCryptビルダのインターフェース
デフォルトでは、HCryptスティーラー・ビルダは、内蔵されているイーサリアムとビットコインのアドレスを表示します。これはマルウェア作成者に帰属する可能性が高いです。
図14:「HBankers」と確認できる内蔵のイーサリアムとビットコインのアドレス
図15:regexを使用して、被害者のクリップボードのコンテンツ内で、ビットコインやイーサリアムのアドレスを検索
図16:ユーザ(攻撃者)がビットコイン、或いは、イーサリアムのいずれかを選択できるHCryptビルダ
スティーラー・ビルダはビットコイン、或いは、イーサリアムのいずれかからユーザの選択をひとつ受け付けます。図16に例示する通り、このシナリオでは、暗号資産アドレスの乗っ取り犯は被害者のイーサリアムのアドレスを「1111111」に置き換え、ペイロードを作成し、ビットコインのアドレスを、HCryptビルダの作成者(HBankers)のアドレスに置き換えます。総じて、HCryptの開発者が、このローダを使用した攻撃で、利益を獲得しようとしていることも示しています。
■まとめ
今回の事例から、サイバー犯罪者が、どのようにHCryptなどの暗号化ツールを駆使して、マルウェアを精力的に拡散しているかを確認することができました。また、HCryptの積極的な開発が進行中である兆候も確認することができました。検出回避のためにアップデートされた難読化アルゴリズムや、より多くのRATの亜種をロードする新バージョンの出現を前提として予測しておくことが、最適と思われます。
また、企業や組織は依然として、サイバー攻撃の中心的手法であるフィッシング戦術に対して警戒する必要があります。攻撃者がISOファイルを利用していたことから、出所が不審な場合には、ユーザはISOファイルを開く際に警戒する必要があります。ISOファイルは簡単に開くことができ、メールゲートウェイの検出を回避できる可能性があるため、ユーザに対して、それが不正なファイルかどうかを考える余地をほとんど与えません。
企業や組織においては、不正URLの検出・スキャン・ブロック機能を提供する多層防御システムの導入といったセキュリティ対策の検討を推奨します。
侵入の痕跡(Indicators of Compromise, IoC):
侵入の痕跡はこちらをご確認ください。
参考記事:
「Water Basilisk Uses New HCrypt Variant to Flood Victims with RAT Payloads」
By Aliakbar Zahravi, William Gamazo Sanchez
翻訳: 谷口 厚志(Core Technology Marketing, Trend Micro Research)
The post 「クリプターサービス」で大量のRATを送り付ける攻撃キャンペーン「Water Basilisk」 first appeared on トレンドマイクロ セキュリティブログ.