HiddenFace

ほぼこもセキュリティニュース By Terilogy Worx

HiddenFaceは、MirrorFace APTグループによって開発された高度に洗練されたバックドア型マルウェアです。
MirrorFaceは、少なくとも2019年には、すでに活動が確認されていた脅威アクターです。
このMirrorFaceが最近使用しているツールの一つに、HiddenFaceというものが確認されています。

いくつかの面で複雑な構造となっているHiddenFaceなのですが、その起動プロセスとインストールプロセスは、特に際立って複雑です。
概要だけ見てみましょう。

まずは、インストールプロセスです。

  • スケジュールされたタスクが仕掛けられる
    WindowsのOSでは、さまざまなスケジュールされたタスクが動作します。
    その中の一つとして紛れて仕掛けられます。
  • MSBuildが起動される
    MSBuildは、マイクロソフトのビルド環境であり、通常Visual Studioと一緒に使われます。
    Windows Vista以降のOSには、バンドルされている.NET Frameworkに対応するバージョンのMSBuildが標準的にインストールされています。
    MSBuildという名称から、開発者のPCにしか存在しないようにイメージするものですが、基本的にすべてのPCがターゲットの要素を満たしています。
  • 怪しいXMLを使う
    MSBuildの引数として悪意を持って用意されたXMLが使用されます。
  • FaceXInjectorが生成される
    FaceXInjectorはNOOPLDRとも呼ばれるローダーです。
  • FaceXInjectorが暗号化されたHiddenFaceを読み込む
    読み込まれるファイルはAESで暗号化されている状態のため、このままではまだ動作しません。
  • 環境固有の暗号化されたHiddenFaceを生成する
    感染環境の情報を取り入れたものが生成されますので、HASHの類での検出は絶望的です。
  • 環境固有の暗号化されたHiddenFace用のレジストリキーを生成する
    こちらも個別に生成されます。

次にマルウェアの起動です。

  • スケジュールされたタスクが仕掛けられる
  • MSBuildが起動される
  • 怪しいXMLを使う
  • FaceXInjectorが生成される
    ここまではインストールプロセスと同じです。
  • FaceXInjectorが暗号化されたHiddenFace用のレジストリキーを読み込む
    インストールで準備した固有のキーです。
  • 環境のプロセスにコードを挿入する
    perfmon.exeなどの環境に存在する標準ツールのプロセスにHiddenFaceのコードが挿入されます。

概要だけでこの状況です。
驚きの複雑さです。
他にも、ドメイン生成アルゴリズムを使ってC2との通信を確立する、443/TCPを使ったカスタムプロトコルでC2と通信する、Windows firewallの設定を勝手に変更する、などの特徴もあります。
これだけの複雑さのツールの開発には、大きなリソースが投入されていることでしょう。
単に脅威活動の分業化というようなことにとどまらず、脅威アクターの組織が高度化・巨大化してきているということなのかもしれません。

参考記事(外部リンク):Unmasking HiddenFace : MirrorFace’s most complex backdoor yet
jsac.jpcert.or.jp/archive/2024/pdf/JSAC2024_2_8_Breitenbacher_en.pdf