/
Cyber Resilience

マルウェアペイロードとビーコン:悪意のある通信の始まり

マルウェアビーコンを理解し、それらをブロックする方法を知ることは、組織をより安全に保つのに役立ちます。ビーコンはペイロードとも呼ばれ、何らかの通信チャネルを介してサイバー攻撃者と通信する実行可能ファイルまたはプログラムです。脅威アクターの観点から見ると、ビーコン管理は悪意のあるキャンペーンの基盤です。ビーコンの種類と機能に応じて、脅威アクターがネットワークに直接侵入し、その通信回線を維持し、違法な目的や目的を実行する手段です。

たとえば、 SolarWindsのサプライチェーン攻撃 には、ビーコンまたはペイロードステージングを使用するとらえどころのない脅威アクターが関与していました。いくつかのインシデント後の分析レポートが示すように、これは高度な多段階の攻撃であり、Sunspotマルウェアは当初サプライヤーを侵害するために使用されました。次に、サプライヤーの顧客に対するサンバーストのバックドアが起こりました。これが成功した後、メモリ専用ドロッパーのティアドロップを配信するために使用し、続いてレインドロップローダーとコバルトストライクビーコンを配信しました。各ペイロードには、独自の目的と一連の機能がありました。

マルウェア攻撃シーケンスの一般的な手順

エンドユーザーであろうとシステムであろうと、何らかの脆弱性が関与する悪意のあるアクティビティの場合、攻撃シーケンスは通常、次の経路をたどります。

マルウェア攻撃経路

これらのフェーズを脅威アクターの視点から理解することは有用です。攻撃者がコマンド&コントロールのために悪意のある通信をどのように取得するかを知ることで、攻撃者に対する防御を構築することもできます。各ステップを個別に実行しましょう。

攻撃者のインフラストラクチャ

攻撃者側には、対応するペイロードによって侵害されたすべての被害者マシンからの通信を受信して処理するコマンド アンド コントロール リスナーがあります。リスナーは、脅威キャンペーンで使用されるツールをホストするWebサーバー、メールシステム、DNS、アラートシステム、攻撃サーバーによってサポートされます。

攻撃者がインフラストラクチャから送信する自身の通信は匿名化される可能性が高く、つまり、一連のプロキシ サーバーを介してバウンスされ、本当の身元が隠されます。次に例を示します。

匿名プロキシ

より高度な攻撃の場合、脅威アクターは特定のキャンペーン専用の分散インフラストラクチャを展開することもあります。これにより、必要に応じて、複数の地理的な場所にまたがるインフラストラクチャを迅速に立ち上げたり、廃棄したりできます。このインフラストラクチャの重要な部分の 1 つは、ドメイン ネーム システム (DNS) です。攻撃者は DNS を利用して悪意のある通信をインフラストラクチャに配信したり、DNS を使用してデータを盗み出す (つまり、盗む) こともできます。

インフラストラクチャのセットアップと並んで、悪意のあるキャンペーンの計画、展開、管理を担当する人材が参加する可能性があります。ほとんどの脅威キャンペーンには、チーム全体が人々とインフラストラクチャを背後に持っています。一人芝居になる可能性は低いです。

次の内訳は、攻撃キャンペーンチームの例を示しています。一般的なITサービス会社のチームにどれほど似ているかに注目してください。

悪意のあるキャンペーンチーム

脅威アクターにとって、被害者のネットワークでの検出を回避しながら、独自のインフラストラクチャを保護するプロセスをオペレーショナル セキュリティと呼びます。高度な脅威アクターは、高い運用セキュリティを好む傾向があります。そして、それを達成するために、彼らは回避と難読化のための一連のテクニックを使用します。

脆弱性

脆弱性とは、脅威アクターが悪用しようとするコンピューターシステムまたは関連テクノロジーに固有の弱点です。この脆弱性は、送信元 (機器ベンダー) または宛先 (通常はエンド ユーザー) のいずれかに起因する可能性があります。たとえば、2017 年に Microsoft の SMBv1 脆弱性は、ランサムウェア攻撃者によって世界規模で悪用されることに成功しました。その脆弱性の詳細レポートは次のとおりです。

smb CVE の詳細

システムまたはプログラムの脆弱性が発見されると、公開される場合があります。この場合、脆弱性には標準のCVE(Common Vulnerabilities and Exposures)番号が発行されます。または、少数の個人にしか知られておらず、利用可能な修正がない場合があります ( 別名「ゼロデイ」)。脆弱性フェーズは、フィッシングやマルバタイジングなどのソーシャルエンジニアリングで通常利用される、より一般的なエンドユーザーの脆弱性を指すこともあります。この段階では、脅威アクターの全体的な目的は、脆弱性を悪用し、攻撃を成功させる機会に変えることです。

攻撃または悪用

攻撃の次の重要な段階は、脅威アクターがセキュリティ制御を回避しながら脆弱性を悪用するために使用できるコードにアクセスしたときに発生します。たとえば、脅威アクターは、Metasploit Framework を攻撃者サーバーとして使用することで、次に示すように、Windows SMBv1 の脆弱性に利用できる 3 つのエクスプロイトを発見しました。

Metasploit SMB の脆弱性検索

これらの脆弱性は、悪名高い WannaCry および NotPetya ランサムウェア キャンペーンによって利用されるタイプのものです。このようなエクスプロイトには、多くの場合、脆弱性のエクスプロイト コードと悪意のある通信の小さなペイロード コードの両方が含まれています。

エクスプロイトは、多くの場合、ビーコンやペイロードとは別のものです。ただし、この 2 つは通常、シェルコードとしてまとめられます。エクスプロイトがターゲット システムにアクセスすると、攻撃者にコールバックして攻撃を完了できる小さなビーコンまたはペイロードがロードされますが、これはペイロード ステージングとして知られるプロセスです。

ビーコンまたはペイロード

前述のように、ビーコンまたはペイロードは、何らかの通信チャネルを介して攻撃者と通信する実行可能ファイルまたはプログラムです。これは、HTTPS で保護するか、DNS などのプレーンテキスト プロトコルを使用する場合があります。攻撃者は、ビーコンまたはペイロードコールバックと呼ばれるものを使用して、意図した目的を達成するための追加機能を使用して、さらにペイロードを転送できます。

次の例では、Metasploit Framework の msfvenom を使用して Meterpreter ペイロードを Windows EXE として表示できます。

Metasploit msfvenom
ペイロード

このようなペイロードが被害者のシステム上で配信され、実行されると、逆引きTCP接続がサイレントに作成されます。ペイロードは、被害者のネットワーク内から攻撃者の IP アドレスまでデフォルトのポート 4444 を使用します。上記のペイロードの例は、デフォルト値で生成され、エンコードされていないため、現実世界で検出される可能性が高いことに注意してください。これは実際には単なる学術的な例です。

目標

攻撃者がビーコンまたはペイロードを実行すると、脅威キャンペーンを実行できます。これには、データの盗難、ランサムウェアのインストール、またはその他の種類の混乱の引き起こしが含まれる場合があります。

先に進む前に、攻撃者が目的を達成するために実行する手順の概要を次に示します。

ステップ1: キャンペーンを計画し、Web サーバー、電子メール サーバー、DNS インフラストラクチャ、攻撃サーバーなど、対応するインフラストラクチャを設計します。

ステップ2: 選択したターゲットとシステムに対して偵察を実施します。

ステップ3: 人間とシステムを組み合わせて、悪用する最も効果的な攻撃または脆弱性を選択します。

ステップ4: 配信メカニズムを含む、対応するエクスプロイト ツールを開発または取得します。

ステップ5: コマンド アンド コントロール インフラストラクチャ (別名「リスナー」) を含む攻撃インフラストラクチャをセットアップして、リバース ビーコン通信を受信します。

ステップ6: 悪意のあるキャンペーンを実行します。

ステップ7: ビーコンとペイロードを管理して検出を回避し、キャンペーンの目的を実行します。

攻撃ウォークスルー

脅威アクターがインフラストラクチャと関連セットアップを設計および実装すると、悪意のあるキャンペーンを開始する準備が整います。これを行うには、脅威アクターは被害者のネットワーク内で実行するためのビーコンまたはペイロードを必要とします。そうすれば、彼らはアクセスし、足場を維持し、目的を達成することができます。

攻撃者の視点から重要な手順をいくつか見てみましょう。

まず、目的のペイロードを生成する方法を見てみましょう。

ペイロード Web ミーティング

この場合、ドメイン (app12.webcoms-meetings.com を使用して通信するためにペイロードが生成されます。緑色の最初の行に LHOST として表示されています) は、Windows オペレーティング システム用のリモート会議およびコラボレーション ソフトウェアを模倣しています。チェックにより、ドメインが攻撃者の制御された IP アドレスに解決されることが示されます。

DNS 解決チェック

ここから、攻撃者はターゲットへの最初の侵入のための配信メカニズムを選択します。この例では、無防備なユーザーにリモート会議用のソフトウェアのアップデートと思われるものをダウンロードさせる一種のソーシャルエンジニアリング攻撃であるスピアフィッシングを使用することを選択しました。攻撃者は、以下に示すように、このソーシャル エンジニアリング配信方法をサポートするために、対応するドメイン (電子メールと Web) と Web サイト インフラストラクチャを設定しました。

フィッシングメールとウェブ

攻撃者は、疑いを持たないユーザーがペイロードをダウンロードして実行することを望んでいます。または、ユーザーがフィッシングサイトにアクセスした場合、ペイロードはドライブバイダウンロードを介して自動的に実行されます。いずれにせよ、偽装されたペイロードはユーザーのコンピューター上にあり、次に示すように実行する準備が整いました。

ダウンロードのペイロード

ペイロードが実行されると、攻撃者のコマンド&コントロールにサイレントにコールバックします。リスナーは、コールバック通信を受信するために、攻撃者側ですでに稼働しています。以下の例では、攻撃者側にペイロードハンドラーまたはリスナー(exploit/multi/handler)が設定されており、悪意のあるドメイン app12.webcoms-meetings.com を介して被害者のマシンで実行されているreverse_tcpペイロードからの通信を受信しています。

ペイロード・ハンドラ

ビーコンが攻撃者のインフラストラクチャに到達すると、関連するリスナーまたはハンドラーが接続を受信し、最初のペイロードはステージと呼ばれるはるかに大きなメインペイロードをダウンロードできます。これは、以下で「ステージ (175174) を 203.0.113.1 に送信する」というメッセージで確認できます。被害者のマシンは、外部 IP が 203.0.113.1 の NAT ファイアウォールの内側にあります。この例の攻撃者のペイロードは、汎用性の高い Metasploit Meterpreterです。

ペイロードコールバック

最初のビーコンがメインペイロードをダウンロードすると、残りの攻撃を続行する準備が整います。正常に実行されると、プログラム制御がこのメインペイロード(ステージ)に渡され、攻撃者にシェルが配信されます。これらはすべてメモリ内で行われ、コードインジェクション技術が含まれます。次のスクリーンショットは、攻撃者が被害者のマシンにハンズオン キーボード アクセスしている様子を示しています。攻撃者は「dir」コマンドを実行し、ユーザーのダウンロード フォルダー内のすべてのファイルを表示できます。

メータープレターシェル

ここから、攻撃者は被害者のマシンに対して内部偵察 (別名「検出」) を行います。攻撃者は、被害者のアカウントとディレクトリ情報を取得できるようになりました。たとえば、侵害されたマシンのログに記録されたユーザー名は「ama」です。次に示すように、ターゲット システムの Windows デスクトップのスクリーンショットをキャプチャすることもできます。

メータープレターシェル

この時点で、攻撃者は内部ネットワークをスキャンして他のシステムを検出することもできます。次のスクリーンショットは、内部ネットワークのアドレス解決プロトコル(ARP)スキャンを示しています。これは、後述する 横方向の移動に役立ちます。

メータープレーターシェルARPスキャン

攻撃者は、被害者のマシンから Project_Progress.pdf ファイルを盗み出す(盗む)など、より悪意のあるアクションを実行することもできます。以下に示すように、ユーザーの資格情報を盗むための悪意のあるツールである Mimikatz をアップロードすることもできます。攻撃者は、ネットワーク内でシステムレベルのアクションとラテラルムーブメントを実行するために、昇格された権限を持つ認証情報を必要とします。

プロジェクト進捗ミミカッツ

次の例は、攻撃者がアップロードされた Mimikatz 資格情報ダンプ ツールを実行して、侵害された Windows マシン上のパスワード ハッシュを表示する方法を示しています。

Mimikatz

攻撃者にとってのもう 1 つの重要なステップは、ユーザーが再起動した後でも、被害者のマシンに戻るルートを作成することです。ここで粘り強さのテクニックが活躍します。攻撃者は、自動実行の逆引きペイロードや永続的なバックドアなど、これを実現するためのいくつかの方法があります。

以下に示すように、攻撃者は、ログオンしたユーザー UoPfNwo.vbs の Windows Temp フォルダーに配置された Visual Basic スクリプト (VBScript) を含む、エクスプロイト後の永続化モジュールを実行することを選択します。次に、攻撃者は Windows レジストリ エントリをインストールして、マシンの起動後にスクリプトを自動実行できるようにします。

エクスプロイト後の永続性

これで、攻撃者は、マシンが再起動された場合でも、ペイロードスクリプトがリスナーに接続し直せるようにしました。ただし、ディスク上のファイルは、ファイル システム アンチウイルス (AV) スキャンによっても検出できるようになりました。

最後に、攻撃者は潜在的な証拠をすべてクリーンアップしたいと考えています。これを行うために、元の悪意のあるファイルやエントリを削除し、悪意のあるファイルを暗号化したり、正規のシステム ファイル間で混在させたりする可能性があります。その痕跡をさらに隠すために、シャドウ コピーとシステム ログの両方を削除することもできます。

攻撃の分析とフォレンジック

次に、いくつかの初期インシデント対応 (IR) と、攻撃の特定のコンポーネントの基本的な分析について説明します。これにより、特定の悪意のあるアクションをよりよく理解できるようになります。

ネットワークとDNSの分析

被害者のマシンからのネットワーク通信分析から始まり、内部IP(10.1.1.81)は、リモートポート443で外部の攻撃者のDNS名へのTCP接続を確立していることが観察されています。これはコマンド&コントロール通信です。

プロセス実行中
Netstat コマンド/制御通信

次に、通常の DNS 解決階層に関係する典型的なコンポーネントを分析することで、攻撃者のプロセスを分析できます。

  • まず、脅威アクターはドメインを登録しました webcoms-meetings.com
  • ドメインは外部 IP 203.0.113.123 を指します。
  • 攻撃者はサブドメイン名 app12.webcoms-meetings.com を使用して、侵害されたマシン上のペイロードからコマンド アンド コントロールにトラフィックを転送します。
DNS 構造

脅威アクターは、DNS を使用してデータを盗み出そうとすることもあります。たとえば、DNS TXT レコードを使用したり、送信 DNS クエリの一部として被害者に関するエンコードされた一意の情報を使用したりする場合があります。これらのクエリは、攻撃者の制御下にある権威 DNS サーバーによって受信されます。権限のある DNS サーバーは、特定のドメインの DNS クエリを受信して応答します。

脅威アクターは、ドメイン生成アルゴリズム(DGA)を使用して、毎日数千のドメインを自動的に生成することもできます。この手法を使用すると、感染したマシンには、生成されたこれらのドメインの数を生成するための組み込みコード(つまり、アルゴリズム)があり、指定された期間にわたってこれらの生成されたドメインの接続を試みます。たとえば、1 つが成功するまで、24 時間ごとに 1,000 の生成されたドメインへの接続を試みることができます。攻撃者は、これらのドメインのいくつかを毎日登録し、短期間維持します。

これらのドメインは、悪意のある通信を頻繁に受信する可能性があります。この手法は、マルウェアの Conficker ファミリによって普及しており、キル スイッチとして 拒否リスト を作成することが困難になります。検出をさらに回避し、回復力を維持するために、より高度な脅威アクターは、プロキシ、リダイレクター、ロードバランサーを組み合わせた分散インフラストラクチャも使用します。

システム解析

一般的なペイロードまたはビーコンのエクスプロイト後の操作のほとんどは、完全にメモリ内で発生する Windows プロセスの操作を伴います。プロセス操作機能を持つ攻撃者は、被害者のマシンで新しいプロセスを開始できます。これは、攻撃者がネイティブの Windows コマンドを使用できるようにするネイティブの対話型シェル (Windows cmd.exe) である可能性があります。攻撃者は、次に示すように、非対話型でプロセスを開始することもできます。

MeterPreterシェルプロセス操作

被害者のマシンでは、プロセスダンプ (以下を参照) により、新しく作成されたプロセスがそれぞれのプロセス ID 2624 と 1972 で表示され、どちらも実行中です。

プロセス・エクスプローラー・ビュー

新しいプロセスを開始する機能は非常に便利です。攻撃者は、notepad.exeのような新しい無防備なプロセスを開始し、コード/DLL インジェクションを使用して元の 悪意のあるペイロード プロセスを移行できます。これは、システム上の悪意のあるプロセスを正当なものに見せかける手法です。これについては、このシリーズのパート 2 で詳しく説明します。

攻撃者は、エクスプロイト後の回避の一環として、次に示すように、元の悪意のあるプロセス web1_meeting_update.exe (2472) を新しい notepad.exe プロセス (1768) に移行します。

MeterPreter シェルの移行プロセス

被害者のマシンでは、元の悪意のあるプロセスである PID 2472 が移行され、プロセス ID 1768 の notepad.exe として実行されています。以下に示すように、新しいプロセスのみが実行されています。

タスクマネージャーの移行プロセス

以前の永続化手法では、Windows Temp フォルダー (以下を参照) には、使用されている VBScript と、悪意のあるスクリプトのレジストリに作成された対応する自動実行キーの両方が表示されます。

永続性レジストリ成果物

元の悪意のある実行可能ペイロード ファイルを最初に静的に分析したところ、いくつかの関連するリスク要因があることがわかります。たとえば、いくつかの興味深いWindowsライブラリ(DLL)、特にネットワーク通信に使用されるライブラリをロードします。対応するメモリと動的分析により、ネットワーク接続を行うnotepad.exeプロセスの不審な動作が表示されます。

静的分析悪意のあるペイロードファイル

結論

この記事では、脅威キャンペーンとそれに関連する悪意のある通信に関連する一般的な考慮事項とアクションのいくつかについて説明しました。これにより、脅威アクターが特定の手法をどのように、そしてなぜ使用しているのかについての洞察が得られれば幸いです。

悪意のある通信につながる攻撃サイクルは、次の 3 つのフェーズに要約できます。

  • 初回エントリー
  • 実行
  • コマンド&コントロール

緩和戦略にアプローチする良い方法は、 侵害を想定 する哲学を適用することです。つまり、攻撃者がすでに侵入しているため、主要なセキュリティ目標は検出と封じ込めであると仮定します。また、セキュリティの成果には、少なくとも 自動化された可視性、アラート、 封じ込め (ゼロトラスト セグメンテーション) が含まれている必要があります。緩和手法については、このブログ シリーズの 3 番目と最後の部分で詳しく説明します。

このシリーズのパート 2 である次の記事では、ビーコンとペイロードについて詳しく説明し、脅威アクターが別のタイプよりも 1 つのタイプを選択する理由を説明します。また、攻撃者が回避や難読化に使用する高度なテクニックのいくつかについても詳しく説明します。

関連トピック

関連記事

Infosecurity Europe 2023 の主なトピック、エネルギー部門の回復力、高等教育のサイバー脅威
Cyber Resilience

Infosecurity Europe 2023 の主なトピック、エネルギー部門の回復力、高等教育のサイバー脅威

イルミオの2023年6月のニュース報道は、サイバーセキュリティにおける実証済みの前進の道として侵害の封じ込めに焦点を当てています。

イルミオがラテンアメリカに進出し、サイバーレジリエンスを構築
Cyber Resilience

イルミオがラテンアメリカに進出し、サイバーレジリエンスを構築

ラテンアメリカ地域が脅威アクターの特定の標的となっている理由と、イルミオがどのように支援できるかについて詳しく学びましょう。

サイバーレジリエンスに再び焦点を当てる:サイバーレジリエンスを向上させるための3つのベストプラクティス
Cyber Resilience

サイバーレジリエンスに再び焦点を当てる:サイバーレジリエンスを向上させるための3つのベストプラクティス

ネットワーク上でアクティブな侵害が検出されたという不幸な状況で、サイバーレジリエンスがどのように役立つかをご覧ください。

No items found.

違反を想定します。
影響を最小限に抑えます。
レジリエンスを高めます。

ゼロトラストセグメンテーションについて詳しく知る準備はできていますか?