McAfee Enterprise 長期キャンペーン 「Harvest」の詳細を公開

C2ドメインの履歴コンテキストについては、Professional ServicesのIRチーム、ShadowServerに、マルウェア分析のサポートについては、Thomas Roccia / Leandro Valescoに特に感謝の意を表します。


エグゼクティブサマリー

最近のインシデント対応において、McAfee EnterpriseのAdvanced Threat Research(ATR)チームは、Professional Services IRチームと共に、最初はマルウェアインシデントとして始まり、最終的には長期的なサイバー攻撃であることが判明したケースをサポートしました。

サイバーインテリジェンスの観点から見ると、最大の課題の1つは、攻撃者が使用しているツール、手法、および手順(TTP)に関する情報を入手し、それらを最新の状態に保つことです。ATR内では、通常、多くの敵を何年にもわたって監視し、侵入の痕跡(IOC)からTTPに至るまでのデータを収集して保存します。

ATRは、このレポートでこの長期キャンペーンに対する深い洞察を提供し、MITRE ATT&CKモデルに対する調査結果についてもお伝えします。被害者の守秘義務を尊重しているため、検閲される部分があります。また、ズームインして、MITRE Techniqueへの翻訳、歴史的背景、PlugXやWinntiマルウェアなどの証拠アーティファクトが、同じ敵によって実行されると確信している別のキャンペーンとのリンクにどのようにつながったかを見ていきます。

共有できるIOCは、この記事の最後にあります。

なお、マカフィーのお客様は、このブログで説明されているマルウェア/ツールから保護されています。MVISION Insightsのお客様は、ダッシュボードを介して完全な詳細、IOC、およびTTPを共有できます。MVISION Endpoint、EDR、およびUCEプラットフォームは、この攻撃で使用される多くの手法に対して、シグネチャおよび動作ベースの防止および検出機能を提供します。マカフィーMVISION ポートフォリオと統合パートナーソリューションを使用し、この攻撃を防御するための具体的な推奨事項が記載された、こちらのブログもご覧ください。


テクニカル分析

初期感染ベクターTA0001 ]

フォレンジック調査により、攻撃者が被害者のWebサーバーを危険にさらすことによって初期アクセスを確立したことが確認されました[ T1190 ]。Webサーバーには、被害者のネットワーク[ T1083 ]およびファイルの横方向の移動/実行[ T1570 ] [ T1569.002 ]に関する情報を収集するために使用されるツール[ T1105 ]の存在と保存を維持するためのソフトウェアがインストールされました。発見されたツールの例は、PSexec、Procdump、およびMimikatzです。

[後でここに挿入]

特権の昇格と永続性[ TA0004、  TA0003 ]

攻撃者は、ネットワーク内での調査とプレゼンスの期間中に、複数の特権昇格と永続化の手法を使用して観察されています。各カテゴリのいくつかを強調します。

クレデンシャルをダンプするためのMimikatzの使用に加えて、攻撃者は特権のエスカレーションに2つのツールを使用しました[ T1068 ]。ツールの1つは「RottenPotato」でした。これは、「NT AUTHORITY \ SYSTEM」などの特権トークンへのハンドルを取得して、システム権限でタスクを実行できるようにするために使用されるオープンソースツールです。

これらの権利の昇格に関するRottenPotatoの例:

図1 RottenPotato

発見された2番目のツール「BadPotato」は、ユーザー権限をシステム権限に昇格させるために使用できるもう1つのオープンソースツールです。

図2 BadPotato

BadPotatoコードは、VisualStudioプロジェクトとして提供されているGitHubにあります。DotPeekを使用して敵のコンパイル済みバージョンを検査し、コード内のアーティファクトを探しました。ファイル(COFF)ヘッダーを調べて、ファイルのコンパイルタイムスタンプを確認しました。

TimeDateStamp:05/12/2020 08:23:47 –画像が作成された日時

PlugX

この長期キャンペーンで攻撃者が使用したもう1つの主要で特徴的な特権昇格手法は、バックドアとしてのマルウェアPlugXでした。PlugXは、「DLLサイドローディング」[ T1574.002 ]の手法を利用しています。PlugXは通常どおり、単一の(RAR)実行可能ファイルに次の3つの部分が含まれていることが確認されました。

  • 有効な実行可能ファイル
  • ペイロードへのフックに関連付けられたDLL
  • Command&Control Server(C2)と通信するための構成を含むペイロードファイル

攻撃者は、スタンドアロンバージョンを使用するか、ネットワーク内の異なる資産に3つのファイルを配布して、それらの資産をリモート制御しました。発見および分析されたサンプルは、2つのドメインに向かって通信していました。キャンペーン期間中に両方のドメインが登録されました。

PlugXサンプルの1つは、次の3つの部分で構成されています。

ファイル名

ハッシュ

HPCustPartic.exe

SHA256:8857232077b4b0f0e4a2c3bb5717fd65079209784f41694f8e1b469e34754cf6

HPCustPartUI.dll

SHA256:0ee5b19ea38bb52d8ba4c7f05fa1ddf95a4f9c2c93b05aa887c5854653248560

HPCustPartic.bin

SHA256:008f7b98c2453507c45dacd4a7a7c1b372b5fafc9945db214c622c8d21d29775

.exeファイルは、有効で署名された実行可能ファイルであり、この場合、HPからの実行可能ファイル(HPカスタマー参加)です。また、AVベンダーからビデオソフトウェアに至るまで、他の有効な実行可能ファイルが使用されていることも確認しました。実行可能ファイルが実行されると、その隣のDLLがロードされます。DLLは有効ですが、ペイロードへの小さなフックが含まれています。この場合は.binファイルです。DLLはPlugX構成をロードし、それをプロセスに挿入します。

テストセットアップでサンプルを実行し、マシンのメモリをダンプして、揮発性のあるメモリ分析を実行しました。基本的な法医学的に適切な手順を実行した後、malfindプラグインを実行して、プロセスで挿入された可能性のあるコードを検出しました。プラグインの編集された出力から、インジェクションされた可能性のあるコードを含むプロセスについて、次の値が観察されました。

Process: svchost.exe Pid: 860 Address: 0xb50000
Process: explorer.exe Pid: 2752 Address: 0x56a000
Process: svchost.exe Pid: 1176 Address: 0x80000
Process: svchost.exe Pid: 1176 Address: 0x190000
Process: rundll32.exe Pid: 3784 Address: 0xd0000
Process: rundll32.exe Pid: 3784 Address: 0x220000

1つの観察結果は、ProcessID値が1176のSVCHOSTプロセスについて言及されていることです。これは、2回言及されていますが、アドレスが異なります。これは、PID3785と異なるアドレスで2回言及されているRUNDLL32.exeに似ています。使用された可能性のあるマルウェアを特定する1つの方法は、procdumpモジュールを使用してこれらのプロセスを関連するPIDでダンプし、オンライン分析サービスにアップロードして結果を待つことです。これは非常にデリケートなケースであるため、別のアプローチを採用しました。両方の長所(ボラティリティとヤラ)を使用して、時間の経過とともにメモリ内で観察されたマルウェアパターンで構成されるルールセットを使用しました。このルールセットをメモリダンプ内のデータに対して実行すると、次の(読みやすさのために編集された)出力が明らかになりました。

図3 Yarascan memory dump

Yaraルールスキャンの出力(およびはるかに多くの出力がありました)は、SVCHOSTサービスのPID1176にPlugXモジュールコードが存在することを確認しました。また、ルールはRUNDLL32.exeに属するPID3784でトリガーされました。

動的分析後にダンプを調査したところ、C2トラフィックに使用される2つのドメイン名が見つかりました。

  • brushupdata.com
  • brushupdata.com

特に、ダウンロードされている別のペイロードである可能性のある次のハードコードされた値を確認しました。

sery.brushupdata.com/CE1BC21B4340FEC2B8663B69

私たちが観察したPlugXファミリは、C2トラフィック、特にTXTクエリのトランスポートチャネルとしてDNS [ T1071.001 ] [ T1071.004 ]を使用していました。サンプルからのトラフィックを調査すると、PlugXネットワークトラフィックに典型的なチェックイン署名(「20 2A 2F 2A0D」)が観察されました。

00000000:47 45 54 20 2F 42 34 42 42 44 43 43 30 32 39 45
00000010:31 31 39 37 31 39 46 30 36 35 36 32 32 20 48 54
00000020:54 50 2F 31 2E 31 0D 0A 41 63 63 65 70 74 3A 20
00000030:2A 2F 2A 0D 0A 43 6F 6F 6B 69 65 3A 20 44 36 43
00000040:57 50 2B 56 5A 47 6D 59 6B 6D 64 6D 64 64 58 55
00000050:71 58 4D 31 71 31 6A 41 3D 0D 0A 55 73 65 72 2D

検出されたさまざまなPlugXサンプルの分析中、ペイロード値は異なっていましたが、上記のドメイン名は同じままでした。例えば:

  • hxxp://sery.brushupdata.com/B4BBDCC029E119719F065622
  • hxxp://sery.brushupdata.com/07FDB1B97D22EE6AF2482B1B
  • hxxp://sery.brushupdata.com/273CDC0B9C6218BC1187556D

私たちが観察した他のPlugXサンプルは、Windows Media Playerに注入され、次の2つのドメインとの接続を開始しました。

  • asmlbigip.com
  • asmlbigip.com

Winnti マルウェアを確認

観察された別のメカニズムは、* Potatoツールを使用して、取得したシステム権限でオペレーティングシステム上でサービスとしてプログラムを開始することでした[ T1543.003 ]。攻撃者が使用していたファイルは、DLLファイル形式(2458562ca2f6fabddae8385cb817c172)を使用していたバックドアのようでした。

DLLは悪意のあるサービスを作成するために使用され、その名前はservice.dll」です。作成されたサービスの名前「SysmainUpdate」は、正規のDLLsysmain.dllおよびSuperfetchサービスに関連する正規のサービス「SysMain」の名前を使用しています。dllは、コマンド「rundll32.exe SuperFrtch.dll、#1」を使用して実行されます。エクスポート関数の名前は「WwanSvcMain」です。  

モデルは、svchost.exeとservice.dllを利用する永続化手法を使用して、不正なサービスをインストールします。dllは、ターゲットシステムのフィンガープリントを作成し、サンドボックスでの分析を回避するためにいくつかのメカニズムを採用しているため、分析がより困難になっているようです。DLLは、実行時にデコードされたいくつかの難読化された文字列を埋め込みます。フィンガープリントが作成されると、マルウェアはAPI RegisterServiceHandlerA、SetServiceStatus、最後にCreateEventAを使用して悪意のあるサービスをインストールします。テクニックの説明はここにあります

マルウェアはまた、ペイロードを復号化してメモリに挿入します。次のスクリーンショットは、ルーチンの復号化を示しています。

図4 復号化ルーチン

このユニークなルーチンを分析したところ、ここで読むことができる出版物で類似点とその言及を発見しました。この記事で説明されているマルウェアは、Winntiマルウェアファミリーに起因しています。この記事で説明されているDLLで使用されている操作方法とコードは、私たちの分析と観察と非常によく似ています。

プロセスダンプは、さらなる指標も明らかにしました。まず、分析されたDLL「C:\ ProgramData \ Microsoft \ Windows \ SuperfRtch \ SuperfRtch.dat」に関連するアーティファクトが明らかになりました。このdatファイルがロードされたペイロードである可能性があると考えています。

次に、プロセスダンプを調査しているときに、データ抽出の試みの一部であるバックドアからのアクティビティを観察しました。これについては、この分析レポートで詳しく説明します。

コードの編集されたスニペットは次のようになります。

Creating archive ***.rar
Adding   [data from location]
  0%
  OK

Winntiマルウェアを発見した別の指標は、メモリのコマンドラインダンプで発見した次の実行パスでした。

cmd / c klcsngtgui.exe 1560413F7E <abbreviation-victim> .dat

ここで観察したのは、有効な実行可能ファイルであるペイロードのAES 256復号化キー(.datファイル)の使用でした。この場合、ペイロードファイルは、被害者の会社名の略語を使用して名前が付けられました。残念ながら、攻撃者はペイロードファイルをシステムから削除していました。ディスク/未割り当て領域が上書きされたため、ファイルカービングが機能しませんでした。ただし、メモリからトレースを再構築すると、Winnti4.0マルウェアを処理していることが明らかになりました。マルウェアは、ドライバーの場所が構成ファイルを指すSVCHOSTプロセスに注入されました。プロセスダンプで、OS、プロセッサ(アーキテクチャ)、ドメイン、ユーザー名などのシステム上のデータの漏えいを観察しました。

私たちを助けたもう1つの手がかりは、メモリ内の痕跡を発見したWinntiによるDNSトンネリングの使用でした。ハードコードされた208.67.222.222は、正規のOpenDNSDNSサーバーに解決されます。IPは、実行時にマルウェアによって生成されたリストにプッシュされます。マルウェアの開始時に、システムのDNSがリストに入力され、OpenDNSサーバーはC2ドメインが確実に解決されるようにするためのバックアップとしてのみ使用されます。

プロセスダンプのもう1つの指標は、Winnti4.0マルウェアによって使用されていることが確認されているUser-Agentを含むC2接続のセットアップでした。

Mozilla / 5.0(Windows NT 6.3; WOW64)AppleWebKit / 537.36(KHTML、Geckoなど)Chrome / 57.0.2987.133 Safari / 537.36

その他の永続化アクティビティ

WMIアクティビティ[ T1546.003 ]も、システム上でコマンドを実行することが観察されました。

永続性の観点から、キャンペーン期間中、スケジュールされたタスク[ T1053.005 ]とMimikatzの使用またはLSASSダンプの作成によって取得された有効なアカウントの使用[ T1078 ]が使用されていることが観察されました。


ラテラルムーブメント

横方向の動きの観点から、敵は取得した資格情報を使用して資産から資産へとホップしました。ある特定のケースでは、おなじみのファイル名「PsExec.exe」を確認しました。このSysInternalsツールは、敵対者による横方向の動きで使用されていることがよく見られますが、ネットワークのシステム管理者が使用することもできます。この場合、PsExec実行可能ファイルのファイルサイズは9.6 MBでしたが、元のPsExec(32ビットまたは64ビットバージョンによって異なります)の最大ファイルサイズは1.3MBでした。ファイルの最初の静的検査の結果、非常に高いエントロピースコア(7.99)を持つ実行可能ファイルに存在するコードのブロブが生成されました。コマンドラインからファイルを実行すると、次の出力が観察されました。

図5 PsExec

エラー通知と「Impacket」キーワードは私たちをひっくり返しました、そして掘り下げた後、私たちはもっと見つけました。偽のPsExecは、シェル/バックドア機能を備えたPsExecの代替となるオープンソースのPythonスクリプトです。次の場所のスクリプトを使用します:hxxps://github.com/SecureAuthCorp/impacket/blob/master/examples/psexec.pyi。Impacketからの低レベルのプロトコル相互作用が組み込まれているため、ファイルは大きくなります。スクリプトコードと組み合わせたPythonライブラリは、py2exeでコンパイルされます。このファイルは、最新の攻撃活動中にコンパイルされ、期限切れの証明書で署名されました。


データの漏えい

私たちが観察したところによると、敵対者は被害者のネットワークに存在し続けるという長期的な意図を持っていました。敵対者は、軍事的または知的財産/製造目的で使用される可能性のある独自の情報を盗むことに関心を持っていたと確信しています。

攻撃者はいくつかの手法を使用してデータを盗み出しました。場合によっては、バッチ(.bat)スクリプトが作成され、特定のネットワーク共有/フォルダーから情報を収集し、「rar」ツールを使用してそれらを特定のサイズに圧縮します[ T1020] [ T1030 ]。バッチスクリプトのコンテンツの例:

C:\ Windows \ web \ rar.exea- [編集済み] -r -v50000 [ターゲットディレクトリ]

また、前述のようにカスタムバックドアを使用した後、上記のコマンドの手動による亜種が発見された場合もあります。

バックドアを使用してローカルシステムでデータが収集されると、ファイルはバックドアを介して盗み出され、rarファイルが削除されました[ T1070.004 ]。Webサーバーのように外部向けの資産が使用された場合、データはインターネットインフォメーションサービス(IIS)Webサーバー内の場所に保存され、正確なファイルパスに向けてGETリクエストを使用してHTTP経由で抽出されました[ T1041 ] [ T1567] [ T1071 ] 。

IISログファイルの[編集済み] Webトラフィックの例:

日付時刻

リクエスト

TCP Src ポート

ソースIP

ユーザーエージェント

Redacted

GET / **** / [Redacted] .rar

80

180.50.*.*

MINIXL

Redacted

GET / **** / [Redacted] .rar

80

209.58.*.*

MINIXL

検出された送信元IPアドレスは、香港に拠点を置く2つの異なるISP / VPNプロバイダーに属していました。

User-Agentの値は、興味深い値「MINIXL」です。その価値を調査したところ、2015年にDell SecureWorksから同じユーザーエージェントについて言及しているブログを発見しましたが、ブログから言及されたアーティファクトの多くは、オペレーションハーベストの観察とTTPと重複していました[リンク]。

オープンソースデータベースから取得できるのは、この特定のユーザーエージェントの使用が非常に制限されており、APAC地域から発信されているように見えることです。


誰の仕業か

それは100万ドルの質問のようです。マカフィーでは、アトリビューションは私たちの主な焦点ではなく、お客様を保護することが私たちの優先事項です。私たちが気にしているのは、調査中にこれらの手法について学んだ場合、それらを計画して、攻撃のどの段階を判断するのに役立つ知識を持って、地上のIRチームまたは顧客のIRチームをサポートできるかということです。証拠は、履歴データとインテリジェンスを指し示し、それに基づいており、次のフェーズのブロックを支援し、より多くの証拠を発見します。

まず、MITRE ATT&CK Enterpriseのすべての手法とサブ手法をマッピングし、使用するツールを追加して、業界の過去の手法データと比較しました。最終的に、テクニックとサブテクニックを共有する4つのグループになりました。Winntiグループは、カスタムバックドアの独自の暗号化機能とWinntiマルウェアの使用の指標を発見したために追加されました。

図6 ATT&CK Techniqueの比較

私たちの結果を反映した図は、APT27とAPT41が、私たちが観察した(サブ)手法と重複する可能性が最も高い候補であることを示唆しています。

これらのグループはすべて特定のタイムゾーンにあるため、以下に関してフォレンジック調査からすべてのタイムスタンプを抽出しました。

  • ドメインの登録
  • マルウェアのタイムスタンプをコンパイル(欺瞞を考慮)
  • コマンドラインアクティビティのタイムスタンプ
  • データ漏えいのタイムスタンプ
  • 作成、削除などのマルウェアの相互作用のタイムスタンプ

これらすべてのタイムスタンプをUTCから前述のグループのタイムゾーンに変換すると、アクティビティに関する次のスキームになりました。

図7 犯罪者の操作時間

このキャンペーンでは、時折例外はあるものの、敵が月曜日から木曜日まで、通常は営業時間中にどのように機能するかを観察しました。

ATT&CK(サブ)テクニック、タイムスタンプ、およびPlugXやMimikatzなどのツールを相互に関連付けることは、可能性のある敵を特定するのに役立つ唯一の証拠指標ではありません。コマンドライン構文、特定のコードの類似性、他のグループと比較した場合のアクターの機能、および一意の識別子は、脅威インテリジェンスの「痛みのピラミッド」の最上位にあります。ピラミッドの下部は、ハッシュ、URL、ドメインについてです。これらの領域は非常に不安定で、敵が簡単に変更できます。

図8 Pyramid of Pain (痛みのピラミッド)

これらのアーティファクトを調査するだけでなく、仮説を立てる際に、考えられる地政学的利益と潜在的な欺瞞も考慮に入れました。これらすべてを計画したとき、前述の2つのグループのうちの1つが調査したキャンペーンの原因であると考えました。

ただし、私たちの焦点は帰属ではなく、攻撃の流れがどこにあるか、グループからの以前の攻撃の流れとの一致、次のステップをブロックするために使用している手法/ツール、またはそれらを見つける場所に関するものでした。「痛みのピラミッド」の上部に収集できる詳細が多ければ多いほど、可能性のある敵とそのTTPをより適切に判断できます。


さらなる発見

これでおしまいかというと、そうではなく、観察された(サブ)手法、マルウェアファミリ、およびコードを相互に関連付けながら、インテリジェンスを収集する主な動機を持つ、同じ国の同様のターゲットに対する別の標的型攻撃を発見しました。次の図では、攻撃者が使用しているツールの高レベルの比較を行いました。

図9 ツールの比較

一部のツールは各キャンペーンに固有ですが、それらがいつ使用されたかを考慮に入れると、それは理にかなっています。これは、アクターの開発と、横方向の動きを実行し、システムで必要なレベルのユーザー権限を取得するための新しいツールの使用を示しています。

全体として、同じ手口を観察しました。最初の足がかりが確立されると、攻撃者は最初にPlugXを展開して、被害者が早期に発見された場合に備えて、被害者のネットワークにいくつかのバックドアを作成します。その後、Mimikatzを使用してlsassをダンプし、有効なアカウントを取得しようとしていました。有効なアカウントが取得されると、被害者のネットワークに関する情報を取得するために、独自のツールのいくつかを含むいくつかのツールが使用されました。そこから、いくつかの共有/サーバーにアクセスし、情報を収集しました。その情報はrarファイルとして盗み出され、インターネットに直接接続されたサーバーに配置されて、「通常の」トラフィックに隠されました。次の図でそれを表します。

図10 攻撃フロー

2019/2020のケースでは、Winntiマルウェアファミリーの一部として分類されるマルウェアサンプルの使用も観察されました。次のコマンドで実行されたファイルがいくつか見つかりました。

Ins64.exe E370AA8DA0Jumper64.datを起動します

Winntiローダー「Ins64.exe」は値「E370AA8DA0」を使用して、AES-256-CTR復号化アルゴリズムを使用して.datファイルからペイロードを復号化し、実行を開始します。

このコマンドを実行してメモリを分析した後、svchostプロセスの1つにプロセスインジェクションがあり、次のパスから1つの特定のファイルがロードされていることがわかりました。

C:\ programdata \ microsoft \ windows \ caches \ ieupdate.dll

図11メモリキャプチャ

マルウェアは、C2サーバーに接続するためにUDPポートとTCPポートの両方を開き始めました。

UDPポート20502TCP
ポート20501

図12 C2へのネットワーク接続

マルウェアからのトラフィックをキャプチャすると、例として次のことがわかりました。

図13 C2へのWinntiHTTPトラフィック

パケットデータはカスタマイズされ、C2に向けていくつかのヘッダーを含むPOSTリクエストを介して送信されました。上のスクリーンショットでは、「POST /」の後の数字がランダムに生成されています。 
User-Agentは、複数の亜種で使用されているため、Winntiマルウェアを識別するための優れたネットワークインジケーターです。

Mozilla / 5.0(Windows NT 6.3; WOW64)AppleWebKit / 537.36(KHTML、Geckoなど)Chrome / 50.0.2661.94 Safari / 537.36

実際、同じユーザーエージェント値がOperation HarvestのWinntiサンプルで発見され、このマルウェアファミリーに典型的なようです。

Cookie値は、XOR値を使用してカスタマイズされたパケットサイズに関する情報を含む4つのDword16進値で構成されます。

Winntiのパケット構造については、このリンクから詳しく学びました。

ハンドシェイクについて学んだことを適用すると、トラフィックサンプルで次のことがわかりました。

Dword値0 = 52 54 00
36Dword値1 = 3e ff 06
b2Dword値2 = 99 6d 78
feDword値3 = 08 00
4500Dword値4 = 00 34 00 47

最初のハンドシェイクの順序:

サンプルや他のOSINTリソースとの相互相関に基づいて、これは確認済みのWinntiC2サーバーに接続するWinnti4.0サンプルであると確信しています。

識別されたC2サーバーは185.161.211.97TCP / 80でした。

イベントのタイムライン

この調査のタイムスタンプを分析すると、Harvestの操作で行ったように、以下の概要がわかりました。

図14 北京の労働時間のケース2019/2020

繰り返しになりますが、敵は北京のタイムゾーンの営業時間中に月曜日から金曜日まで活動していたことがわかりました。


結論

オペレーションハーベストは、攻撃者がデータを盗み出すために数年間アクセスを維持するという長期的なオペレーションです。盗まれたデータは、経済的目的での知的財産の盗難の一部であったか、軍事介入の場合に有益な洞察を提供したであろう。攻撃者は、この種の攻撃で非常に頻繁に見られる手法を利用しましたが、独特の新しいバックドアや既存のマルウェアファミリの亜種も使用しました。すべてのフォレンジックアーティファクトと相互相関を履歴データおよび地政学的データと組み合わせることで、この操作が経験豊富なAPTアクターによって実行されたと確信しています。

すべてのデータ、TTPなどをマッピングした後、2019/2020年に観察されたキャンペーンと非常に強い重複があることを発見しました。多くの(詳細な)技術的指標と手法が一致しています。また、それを見通しに入れて、時間の経過とともに、敵がスキルを適応させ、使用されているツールとテクニックを進化させていることを示しています。

別のメモとして、Winntiマルウェアの使用を観察しました。グループではなく、意図的に「マルウェア」という用語に言及します。Winntiマルウェアは、複数の攻撃者によって使用されることが知られています。すべての国民国家のサイバー攻撃活動の中に、ツール/マルウェアなどの作成を担当する部門/ユニットがあります。私たちは、それがまさにここでも観察されていることであると強く信じています。PlugX、Winnti、およびその他のいくつかのカスタムツールはすべて、同じツールにアクセスできるグループを指します。敵に「X」または「Y」という名前を付けるかどうかにかかわらず、長期的な目的が被害者のネットワークでの永続性と政治的/戦略的または製造上の決定を行うために必要なインテリジェンスの獲得とする、中国の攻撃者が仕掛けていると考えています。


MITRE ATT&CK Techniques

Technique ID

Technique Title

Context Campaign

T1190

Exploit Public-facing application

Adversary exploited a web-facing server with application

T1105

Ingress Tool transfer

Tools were transferred to a compromised web-facing server

T1083

File & Directory Discovery

Adversary browsed several locations to search for the data they were after.

T1570

Lateral Tool Transfer

Adversary transferred tools/backdoors to maintain persistence

T1569.002

System Services: Service Execution

Adversary installed custom backdoor as a service

T1068

The exploitation of Privilege Escalation

Adversary used Rotten/Bad Potato to elevate user rights by abusing API calls in the Operating System.

T1574.002

Hijack Execution Flow: DLL Side-Loading

Adversary used PlugX malware that is famous for DLL-Side-Loading using a valid executable, a DLL with the hook towards a payload file.

T1543.003

Create or Modify System Process: Windows Service

Adversary launched backdoor and some tools as a Windows Service including adding of registry keys

T1546.003

Event-Triggered Execution: WMI Event Subscription

WMI was used for running commands on remote systems

T1053.005

Scheduled task

Adversary ran scheduled tasks for persistence of certain malware samples

T1078

Valid accounts

Using Mimikatz and dumping of lsass, the adversary gained credentials in the network

T1020

Automated exfiltration

The PlugX malware exfiltrated data towards a C2 and received commands to gather more information about the victim’s compromised host.

T1030

Data transfer size limits

Adversary limited the size of rar files for exfiltration

T1070.004

Indicator removal on host

Where in the beginning of the campaign the adversary was sloppy, during the last months of activity they became more careful and started to remove evidence

T1041

Exfiltration over C2 channel

Adversary used several C2 domains to interact with compromised hosts.

T1567

Exfiltration over Web Service

Gathered information was stored as ‘rar’ files on the internet-facing server, whereafter they were downloaded by a specific ip range.

T1071.004

Application layer protocol: DNS

Using DNS tunneling for the C2 traffic of the PlugX malware


Indicators of Compromise (IOCs)

Note: the indicators shared are to be used in a historical and timeline-based context, ranging from 2016 to March 2021.


Operation Harvest:

PlugX C2:

sery(.)brushupdata(.)com

Dnssery(.)brushupdata(.)com

Center(.)asmlbigip(.)com

Tools:
Mimikatz
PsExec
RottenPotato
BadPotato


Operation 2019/2020

PlugX malware:
f50de0fae860a5fd780d953a8af07450661458646293bfd0fed81a1ff9eb4498
26e448fe1105b5dadae9b7607e3cca366c6ba8eccf5b6efe67b87c312651db01
e9033a5db456af922a82e1d44afc3e8e4a5732efde3e9461c1d8f7629aa55caf
3124fcb79da0bdf9d0d1995e37b06f7929d83c1c4b60e38c104743be71170efe

Winnti:
800238bc27ca94279c7562f1f70241ef3a37937c15d051894472e97852ebe9f4
c3c8f6befa32edd09de3018a7be7f0b7144702cb7c626f9d8d8d9a77e201d104
df951bf75770b0f597f0296a644d96fbe9a3a8c556f4d2a2479a7bad39e7ad5f

Winnti C2: 185.161.211.97

Tools:
PSW64                        6e983477f72c8575f8f3ff5731b74e20877b3971fa2d47683aff11cfd71b48c6
NTDSDumpEx     6db8336794a351888636cb26ebefb52aeaa4b7f90dbb3e6440c2a28e4f13ef96
NBTSCAN                  c9d5dc956841e000bfd8762e2f0b48b66c79b79500e894b4efa7fb9ba17e4e9e
NetSess   ddeeedc8ab9ab3b90c2e36340d4674fda3b458c0afd7514735b2857f26b14c6d
Smbexec                   e781ce2d795c5dd6b0a5b849a414f5bd05bb99785f2ebf36edb70399205817ee
Wmiexec                   14f0c4ce32821a7d25ea5e016ea26067d6615e3336c3baa854ea37a290a462a8
Mimikatz
RAR command-line
TCPdump

 

※本ページの内容は2021年9月15日(EDT)更新の以下のMcAfee Enterprise Blogの内容です。
原文:Operation ‘Harvest’: A Deep Dive into a Long-term Campaign
著者: