ランサムウェア
Lockbitを配布するローダ型マルウェア「SocGholish」と「BLISTER」の検出回避手口
トレンドマイクロのManaged XDRチーム(以下、MDRチーム)では、ランサムウェア「LockBit」をペイロードとしてドロップするために攻撃者によって利用されたローダ型マルウェア「BLISTER」による用心深い挙動を観測しました。MDRチームでは、緻密な監視と迅速な対応によって、双方におけるペイロードの実行を阻止しました。
トレンドマイクロのManaged XDRチーム(以下、MDRチーム)では、ランサムウェア「LockBit」をペイロードとしてドロップするために攻撃者によって利用されたローダ型マルウェア「BLISTER」による用心深い挙動を観測しました。MDRチームでは、緻密な監視と迅速な対応によって、双方におけるペイロードの実行を阻止しました。
BLISTERとSocGholishは共にステルス性が高く、有害なペイロードを送りこむ際に検出回避を試みる手口で知られています。特に、攻撃キャンペーンで一緒に利用されることで知られており、SocGholishの侵入後、BLISTERが第二段階としてメインのペイロードをドロップする形で攻撃が行使されてきました。両者を組み合わせることで、攻撃者は巧みに検出を回避し、メインとなるペイロード(特に今回はLockBit)を標的に向けてドロップ・実行しようとします。今回の調査では、これら第一段階のマルウェアが事前に阻止されなかった場合に何が引き起こされるのかを解説します。
■ SocGholishのインフラ
SocGholishはBLISTERより古いマルウェアであり、巧妙な拡散手法を備えることから、攻撃者の間で重宝されています。セキュリティベンダの記事にもあるとおり、このマルウェアの攻撃手法は早ければ2020年から用いられているようです。
今回の調査では、Trend MicroTM Managed XDRを使用したスレットハンティングチームが、あるエンドポイントの挙動を監視対象としたところから始まりました。調査の結果、あるユーザが感染した正規Webサイトに気づかずにアクセスしたことで、ドライブ・バイ・ダウンロードによって不正なファイルがダウンロードされたことが分かりました。この拡散方法はSocGholishの特徴的な手口です。
ダウンロードされたZIPファイル(C:\Users\victim\Downloads\download.1313a9.zip)は、ブラウザのアップデート機能になりすます不正なJavaScript「Chrome.Update.1313a9.js」が含まれていました。また、このスクリプトは難読化されていました。なお、ユーザがこのスクリプトを実行しない限り、これ以上は攻撃が進行することはありません。
図1:JavaScriptコードの抜粋
このスクリプトを実行した場合に何が起きるか調査したところ、まず、マルウェアによるコマンド・コントロール(C&C)ドメインへの接続を可能にし、続いて、システム情報を抽出する数個の探索コマンドを展開することが分かりました。さらに、取得した情報を拡張子.tmpのファイルに記録します。
図2:Trend Micro Vision One™ Workbenchにより確認した探索コマンドのプロセス
図2が示す実行コマンドの内容は下記の通りです。
- "C:\Windows\System32\cmd.exe" /C net group "domain admins" /domain >> "C:\Users\victim\AppData\Local\Temp\rad613A2.tmp"
- "C:\Windows\System32\cmd.exe" /C cmdkey /list >> "C:\Users\victim\AppData\Local\Temp\radF9A30.tmp"
- "C:\Windows\System32\cmd.exe" /C net user victim /domain >> "C:\Users\victim\AppData\Local\Temp\rad6FDE0.tmp"
- "C:\Windows\System32\cmd.exe" /C nltest /domain_trusts >> "C:\Users\victim\AppData\Local\Temp\rad8B102.tmp"
- "C:\Windows\System32\cmd.exe" /C cmdkey /list >> "C:\Users\victim\AppData\Local\Temp\rad2A57D.tmp"
- "C:\Windows\System32\cmd.exe" /C nltest /dclist: >> "C:\Users\victim\AppData\Local\Temp\rad3FBC3.tmp"
- "C:\Windows\System32\cmd.exe" /C whoami /all >> "C:\Users\victim\AppData\Local\Temp\rad95E90.tmp"
続いてこのマルウェアは、もう1個の.jsファイルをドロップします。このjsファイルはいくつかの探索コマンドを追加実行します。最後に、攻撃者によるリモートからのコマンド操作を可能とするCobalt Strikeビーコンのダウンロードと実行が行われます。なお、ここまでで述べた以外にもいくつかのスクリプトファイルがドロップされましたが、これらは、導入している製品のセキュリティ機能により阻止されました。
図3:Vision OneによるJavaScriptとCobalt Strikeの展開関連図
■ Cobalt Strikeの低検出率とBLISTERとの繋がり
今回確認されたCobalt Strikeは、調査時点で表1に示すとおり、検出率が低かった点が特筆に値します。
日付 | 検出数 |
2022年1月19日 | 2 |
2022年1月20日 | 3 |
2022年1月26日 | 3 |
2022年1月31日 | 2 |
2022年2月7日 | 2 |
2022年2月10日 | 2 |
表1:VirusTotalによるCobalt Strike検出数
検出率が低い理由や、どのような検出回避の手法が使われているのか明らかにするために、さらなる調査を行ったところ、このCobalt Strikeファイルは、正規のDLLを改ざんしたものであり、内部の出力関数がCobalt Strikeを含む形で修正されていたことを確認しました。SocGholishがこのような手口を備えているのを確認するのは今回がはじめてでした。
図4:改ざん前後のDLLの比較
当該DLLファイル「wimgapi.dll」は、シェルコードを復号して実行するまえに、自身を10分間スリープさせるスレッドを作成します。また、検出を回避するために処理を中断することもあります。これは、既に立証されている検出回避の手段でもあります。
さらに、検出を回避する追加策として、下記コマンドもシェルコード復号の前に実行します。
- C:\ProgramData\TermSvcのフォルダを作成する。
- wimgapi.dllを起動するファイル(今回の事例ではRundll32.exe)のコピーであるC:\\ProgramData\\TermSvc\TermSvc.exeをドロップする。さらに、Rundll32.exeを起動する%User Startup%\\TermSvc.lnkをドロップする。
この後、当該DLLはURL 「sikescomposite[.]com」に接続するシェルコードの復号、読み込み、実行を行います。メモリ内で復号化と実行を行うため、VirtualAlloc、VirtualProtect、そしてCreateThreadを使用します。
また、図5に示すように、必要な際のみ呼び出されるよう、API関数群を収集していることも確認しました。これはシェルコード難読化技術の1つです。
図5:API関数を収集して必要な際に呼び出すコード
wimgapi.dllは、Cobalt Strike C&Cのステージャとして柔軟に動くため、接続先URLからダウンロードした内容に応じて、その動作を変えている可能性があります。今回調査した事例の場合は、展開後の挙動として下記を確認しています。
- アカウント情報を探索
- 権限昇格のためのPass-the-Hash攻撃を実施
- ポート番号135のネットワーク・スニッフィングを行うWerFault.exeプロセスを生成
- ブラウザのログイン情報をコピー
- リモートマシンにCobalt Strikeのコピーをドロップする水平移動・内部活動
図6:Vision Oneにて確認したリモートマシンへのCobalt Strikeのドロップ
C&C IPアドレスの1つである「198[.]71[.]233[.]254」は、Cobalt Strike経由の攻撃の他、マルウェア「Emotet」や「Dridex」による攻撃に繋がる可能性もあります。複数のJavaScript C&C ドメインで使用されるこのIPアドレスは、2021年終わりから今年に至るまで、EmotetやDridex攻撃でのホスティングやファイルドロップに使われていることを確認しました。 今回調査した事例で確認したCobalt Strikeの用い方(DLLを改ざんして正規のものに見せる)は、他のSocGholishによる攻撃キャンペーンでは見られなかった点で、興味深いものです。この点から、SocGholishの背後にいる攻撃者は、サードパーティにアクセス権を販売しているか、または互いに結託している可能性があります。興味深いことに、MDRチームによる別事例の調査からは、当該サードパーティは、BLISTERの背後にいる攻撃者である可能性も示唆されていました。
■ SocGholishからBLISTERとLockBitまでの展開
今回の事例とは別に、2021年12月に初めて確認された新規のローダ型マルウェアBLISTERも、ランサムウェアLockBitの展開に使用されていることを確認しました。この場合も、BLISTERの拡散は、不正なインストーラ、特にSocGholishによる手口を伴っている可能性があります。なお、このローダ型マルウェアは、内部のリソース領域にペイロード用にCobalt StrikeやBitRadなどのツールを含むことも可能です。
LockBitは、現在、「ransomware-as-a-service(サービスとしてのランサムウェア:RaaS)」により最も活発な攻撃グループが利用するランサムウェアファミリーの1つです。この攻撃グループは、利用するマルウェアの巧妙さと、展開している強力なアフィリエイトネットワークでよく知られています。このランサムウェアは、通常、インターネットに露出しているインフラへの不正アクセスを通して、標的システムに感染します。
興味深いことに、MDRチームが最近確認したBLISTERの場合、不正ファイルのドロップに際し、SocGholishと同様、ブラウザアップデートを装う手口を用いることも判明しました。さらに、検出を回避するため、下記のような技術も使用しています。
- システム内に永続的に存在するため正規のコード署名証明書を使用
- アンチウイルスによるユーザランド側へのフックを回避するためシステムコールを直接使用
- サンドボックスによる検出を回避するためコードの実行を10分間遅らせる
- werfault.exeなど正規プロセスにペイロードを注入、さらに、潜伏するためRundll32.exeなど正規DLLのファイル名を変更する
その他、恐らくSocGholishのドライブ・バイ・ダウンロードを経由した、ssql.exeという名称のファイルがドロップされるケースも確認しました。このファイルはドロッパとして機能し、図7に示す通り、オープンソースによるWindowsインストーラ生成ツールであるNullsoftから作成されたものです。
図7:Nullsoftで作成されたssql.exeドロッパ
ssql.exeが起動されると、BLISTERの実体を%Temp%\wimgapi_64\wimgapi.dllにドロップします。さらにwimgapi.dllの内容をメモリ内に取り込み、出力関数WIMDeleteImageMountsを呼び出します。
図8:BLISTERのドロップ
図9:WIMDeleteImageMountsの実行
当該DLLは、RCDataリソース領域にあるシェルコードを復号して実行します。前述したSocGholishの時と同様、シェルコードは10分間のスリープ後、Cobalt Strikeビーコンの復号と解凍を行います。
Vision Oneでは、検体をもとにして図10のような感染チェーンのイメージが作成されました。
図10:Vision Oneで作成したBLISTERの感染フロー
ペイロードであるCobalt Strikeを実行すると、攻撃者は、サービス停止用バッチスクリプトをドロップ・実行します。このスクリプトは、システム内で起動中のアンチウイルスエージェントを停止(KillAV)、さらに重要なサービス(SQL、Veeam、Exchange等)も停止します。加えて、マシン内のグループポリシーオブジェクト(GPO)の変更、ホスト名のテキストファイルへの記録、スタートアップ時にバッチファイルを起動させるスケジュールタスク「updater」の登録、そして最後にWindowsイベントログの消去を行います。
図11:LockBitランサムウェアグループによるアンチウイルスエージェントを停止する様子
図12:LockBitランサムウェアグループによる重要なサービス停止およびサードパーティ製アンチウイルスエージェント停止用のバッチスクリプト
この段階まで到達した後、ランサムウェアLockBitそのものが実行されることになります。今回の調査で確認された新規ドメインや、使用されていたSocGholishの証明書の内容などを踏まえると、この攻撃キャンペーンは、2021年11月からはじまり、現在に至るまで続いていることが示唆されます。
■ 結論
今回の調査は、SocGholishおよびBLISTERについてより詳しく把握するきっかけとなりました。また今回の事例からは、攻撃者による検出回避の手法が進化し続けていることも分かります。特にDLLを改ざんして正規のものに見せたり、シェルコードを一時的にスリープさせたりする検出回避の手法が確認されました。また、攻撃者は、Cobalt Strikeで標的の企業を狙い、環境寄生型の手法によって標的の環境内に溶け込もうとします。企業や組織は、こうした傾向が継続していることへの注意喚起が必要です。
今回の事例に関する攻撃は、緻密な監視と早い対応により、実際には阻止されています。脅威に対する早期の封じ込めと軽減化が、システム侵入や情報窃取、ランサムウェア展開といった攻撃の進行を食い止める上で不可欠です。
企業や組織は、警戒を緩めず、堅固なサイバーセキュリティ対策を導入することを推奨します。さらに、下記対応を実施することも、LockBitを始めとする内部侵入型ランサムウェアの脅威から資産を守る上で役立ちます。
- 多要素認証(MFA)を用いることで、ユーザアカウント侵害、および攻撃者の目的であるシステム侵入のリスクを低減できます。
- 未確認のメールを開く際は十分に注意してください。埋め込まれたリンクや添付ファイルは、適切な予防措置と確認がとれていない限り、決して開くべきではありません。これらはランサムウェアインストールの第一歩となる可能性があります。
- 企業や組織は常に3-2-1ルールを遵守してください:3つのバックアップコピーを作り、2つの異なる種類の記憶媒体に保存し、3つのバックアップ中の1つは物理的に離れた場所に保管する。
- ソフトウェアおよびその他システムのアップデートやパッチを可能な限り早く適用することは、ランサムウェア感染に繋がる脆弱性をついた攻撃への有効な対処法です。
- ファイルの自動検出や、ご使用の環境内で正規ツールが悪用されている兆候を常時監視する機能などを統合したクロスレイヤーのセキュリティ対策を導入することで、企業や組織はランサムウェア攻撃によるリスクを軽減できます。
攻撃者がより多くのシステムを侵害しようとする中、新しいマルウェアの技術が出現することは必至です。企業や組織は、クロスレイヤーの脅威検知・対応ソリューションを導入することで、こうした脅威から身を守ることができます。その1つがTrend Micro Vision One™です。この脅威対策プラットフォームは、拡張された脅威検知・対応(XDR)ソリューションに加え、さらに新しい価値とメリットを提供します。強力なXDR機能を備えた技術により、メールからエンドポイント、サーバ、クラウドワークロード、そしてネットワークに至る多数のセキュリティレイヤーにまたがるデータを自動で収集し、相関分析を行い、自動保護機能によって攻撃を防ぎます。また、インシデントの兆候を逃さず確実に検知するのに役立ちます。
侵入の痕跡(Indicators of Compromise、IoC)リストについては、こちらをご参照ください。
参考記事:
- 「Thwarting Loaders: From SocGholish to BLISTER’s LockBit Payload」
By: Earle Maui Earnshaw, Mohamed Fahmy, Ian Kenefick, Ryan Maglaque, Abdelrhman Sharshar, Lucas Silva
翻訳:清水 浩平(Core Technology Marketing, Trend Micro™ Research)