Nightmare-Eclipseという情報開示アクターが、最新のWindows向け概念実証(PoC)コード「LegacyHive」を公開しました。これはGreenPlasma、YellowKey、MiniPlasma、RoguePlanet、GreatXMLに続く一連の公開に続くものです。
従来の脆弱性開示とは異なり、LegacyHiveはメモリ破損のバグやロジックの欠陥を突くものではありません。正規のWindowsプロファイル初期化機能とレジストリハイブ読み込みの仕組みを悪用し、別のユーザーの環境を乗っ取る手法です。
LevelBlueのOpsIntel CTIチームとTHORチームは、2026年7月のPatch Tuesday更新を適用した完全にパッチ済みのWindowsシステム上でこの攻撃チェーンを再現し、記述どおりに動作することを確認しました。
LegacyHiveの実行には、低権限の攻撃者アカウントに加え、別のヘルパーアカウントの認証情報が必要で、攻撃は7段階にわたって展開されます。
まず、NtCreateDirectoryObjectExを使って\BaseNamedObjects\Restricted配下に隠しNTオブジェクトマネージャの名前空間を作成し、続いてNtCreateSymbolicLinkObjectでシンボリックリンクを構築してパス解決をリダイレクトします。
次に、Microsoftのレジストリオフラインアプリケーションプログラミングインターフェース(offreg.dll)を使ってヘルパーアカウントのntuser.datをオフラインで改変し、「User Shell Folders」配下の「Local AppData」の値を、攻撃者が制御する名前空間内のパスに書き換えます。
続いてUsrClass.datにバッチオプロックを設定し、改ざんしたハイブをWindowsがいつ読み込むかを正確に制御できるようにしたうえで、LOGON_WITH_PROFILEフラグ付きでCreateProcessWithLogonWを呼び出し、プロファイルの完全な読み込みを強制します。
成功したかどうかはRegOpenUserClassesRootで確認し、最後に一時ファイルを削除する一方で、永続的なレジストリのリダイレクトはそのまま残します。
ヘルパーアカウントがサインインすると、Windowsは「Local AppData」を本来のプロファイルパスではなく、攻撃者が制御するオブジェクトマネージャの名前空間へと解決してしまい、対象アカウントに紐づくリソースが露出することになります。
ここで使われる個々のAPI呼び出しは、単体で見ればいずれも正規のものであり、これがシグネチャベースのツールだけでは検知が難しい理由となっています。単独では悪意あるものと判断できないAPI呼び出しばかりであるため、防御側は静的シグネチャではなく振る舞いの相関分析によってこの活動を捉える必要があります。
最も強力な兆候は、NtCreateDirectoryObjectExとNtCreateSymbolicLinkObjectの両方の呼び出しを組み合わせて使うユーザーモードのプロセスです。正規のソフトウェアがシステムコンポーネント以外でこの二つを併用することはほとんどありません。
同様に有力な手がかりとなるのが、%LOCALAPPDATA%が標準的なファイルシステムパスではなく\BaseNamedObjects配下に解決されているVolatile Environmentレジストリキーです。さらに、ntuser.datやUsrClass.datが通常のプロファイルディレクトリ外でステージングされたりコピーされたりしている点も注目すべき兆候です。
seclogon経由でLOGON_WITH_PROFILEを使うアカウント間のCreateProcessWithLogonW呼び出しや、システムプロセス以外がoffreg.dllを読み込む動作も、この攻撃特有の振る舞いのパターンを裏付けるものです。
LevelBlueはバイナリ自体を対象としたYARAルールを公開し、あわせてVolatile Environmentのパスインジェクション、不審なハイブファイルパス、アカウントをまたぐseclogonの活動をそれぞれカバーする3つのSentinelOneハンティングクエリも提供しています。
この公開PoCの実行にはヘルパーアカウントの認証情報が必要であり、単独の攻撃手法というよりは侵害後に用いられる能力として位置づけられます。これはおそらく悪用の広がりを抑えるための意図的な制約と見られます。
LevelBlueは、対象となる実行ファイル(デモではnotepad.exe)は容易に差し替え可能だと指摘しており、検知は特定のバイナリではなく、オフラインでのハイブ改ざん、オブジェクトマネージャの操作、そして制御されたプロファイル読み込みというパターンそのものに着目すべきだとしています。
Microsoftはこの種の悪用に対する緩和策をまだ発表しておらず、現時点では振る舞いベースの検知が主要な防御手段となっています。
SOC調査の死角を減らし、ANY.RUNで脅威をより早く封じ込めることで、対応コストと業務への影響を抑えましょう。
翻訳元: https://cyberpress.org/legacyhive-abuses-windows-profile-loading/