Windows ゼロデイ脆弱性 LegacyHive:User Profile Service を介した管理者権限の取得

New Windows LegacyHive 0-Day Vulnerability Allows Hackers to Gain Admin Access

2026/07/17 CyberSecurityNews — Windows のゼロデイ脆弱性 LegacyHive (MSNightmare) は、User Profile Service を悪用する攻撃者に対して、ローカル権限昇格/管理者アカウントの改竄/管理者レベルでのコード実行を許すものである。LegacyHive により標的とされるのは、ログオン/ログオフのタイミングでユーザー・プロファイルとレジストリ・ハイブをロード/アンロードする、Windows User Profile Service (ProfSvc) である。

MSNightmare GitHub アカウントの公開 Proof of Concept (PoC) は、このバグを 「Windows user profile service における、任意のハイブ読み込みを伴う権限昇格の脆弱性」と説明している。

現実として、LegacyHive を悪用する低権限ユーザーは、別ユーザーのレジストリ・ハイブ “UsrClass.dat” を、自身の HKEY_CLASSES_ROOT へマウントできる。それにより、標的ユーザーのアプリケーション・データとコンフィグが、自分自身のものであるかのように露出する。

セキュリティ研究者 Will Dormann は、”LegacyHive.exe” を別の標準ユーザーの認証情報で実行し、管理者アカウント名を指定した。続いて、そのユーザーとして “regedit.exe” を起動することで、非管理者による管理者の Classes レジストリ・ハイブへのアクセスが可能であることを実証した。

While the tool runs, a new pair of 1003 registry keys is loaded into HKEY_USERS, but their contents remain inaccessible (source : infosec.exchange/@wdormann)
While the tool runs, a new pair of 1003 registry keys is loaded into HKEY_USERS, but their contents remain inaccessible (source: Wdormann)
Windows LegacyHive ゼロデイ脆弱性

UsrClass.dat に対する読み取り専用アクセスだけでは、直ちにパスワード・ハッシュの露出や直接的な認証情報の窃取につながるわけではない。しかし、このアクセスは強力なプリミティブを生み出す。つまり、非管理者が管理者の Classes レジストリ・ハイブを変更し、アプリケーションや COM オブジェクトを起動する方法を、そのアカウントでハイジャックできる。

Will Dormann が示したのは、たとえば非管理者が管理者のハイブ内で “.txt” ファイルの関連付けを変更し、テキスト・エディタの代わりに “calc.exe” を起動させられることだ。それが意味するのは、任意コードを管理者のワークフローに組み込めることである。

さらに危険なのは、管理者のログイン時に自動的にロードされる COM オブジェクトまたはシェル・エクステンションを、攻撃者が上書きできる点である。それにより、ハイジャックされたハイブは、通常のサインイン中に管理者権限で実行される、永続化およびコード実行のメカニズムへと変容する。

この手法の実行は、正規の管理者アカウントのコンテキストで、その管理者自身のマシン上で発生するため、通常のアクティビティに見えてしまう可能性がある。そのため、Endpoint Detection and Response (EDR) ツールにより、不審フラグが付けられる可能性が低くなる。

Nightmare Eclipse の公開 PoC は、意図的に簡略化されている。別の標準ユーザーの認証情報を必要とし、UsrClass.dat ハイブに限定され、一般化された任意のハイブ・ロードのロジックは省かれている。

LegacyHive loads an admin user's Classes registry hive, allowing another user to access it via Regedit (source : infosec.exchange/@wdormann)
LegacyHive loads an admin user’s Classes registry hive, allowing another user to access it via Regedit (source: Wdormann)

オリジナルのエクスプロイトでは、追加のユーザー認証情報は不要であり、ProfSvc に任意のハイブをロードさせることが可能だと、この研究者は主張している。さらに、NT AUTHORITY\SYSTEM としてのカーネル・レベルの偽装も達成可能であり、影響範囲はユーザーの Classes を大きく超えて拡大するという。

2026年7月 Patch Tuesday で、Microsoft の数百件の CVE を修正しているが、LegacyHive に関しては、完全にパッチが適用された、最新の Windows デスクトップ/サーバ・エディションで動作すると報告されている。なお、この開示の時点で、LegacyHive に対しては専用のセキュリティ・ブリテンがなく、 CVE も割り当てられていなかった。

Microsoft は、「この脆弱性の報告を認識しており、これらの主張の妥当性と潜在的な適用可能性を積極的に調査している」と公に述べている。しかし、ユーザー組織としては、この公式修正に依存することはできない。

Process Monitor などのツールを用いた、LegacyHive に対する初期のリバース・エンジニアリングで示されたのは、 ProfSvc が標的ユーザーの UsrClass.dat を解決およびオープンする方法が、Windows Object Manager とレジストリ・ハイブロード・ルーチンを通じて悪用されていることだ。

The initial access to usrClass.dat failed with ACCESS DENIED, but retrying as NT AUTHORITY\SYSTEM succeeded, granting file access( source : infosec.exchange/@wdormann)
The initial access to usrClass.dat failed with ACCESS DENIED, but retrying as NT AUTHORITY\SYSTEM succeeded, granting file access (source: Wdormann)

Will Dormann が観測したのは、低権限 ID を用いて標的管理者のハイブを開こうとする最初の試行が、ACCESS DENIED 応答を返すことだ。

しかし、偽装された NT AUTHORITY\SYSTEM コンテキスト下での後続の再試行は成功し、ハイブはマウントされた状態を維持し、攻撃者が制御するユーザーからのアクセスが可能になる。

この挙動は、ファイル/レジストリ操作におけるカーネル仲介型の偽装や、レースコンディションによる SYSTEM レベルの取得で悪用され得るという、Windows に長く存在する課題と一致している。このパターンは、任意ファイル作成と Classes ハイブのハイジャックに関する Project Zero の研究で、以前にも文書化されている。

LegacyHive は、このパターンを ProfSvc に対して再利用するものにも見える。その結果、任意のハイブロードを介した、未パッチのローカル権限昇格のルートであると、研究者が説明する事態に至っている。

LegacyHive は、ローカル侵害後に悪用され得る脆弱性である。したがって攻撃者は、このバグを悪用する前に、Windows システムへのアクセスと、少なくとも 1 つの非管理者アカウントを有している必要がある。しかし、その後は、高権限ユーザーを侵害し、権限を昇格させる経路が提供される。

Microsoft がパッチを出荷するまで、防御側として取るべき対応は、特権アカウントに対するローカルログインの制限/管理者用ワークステーションのセグメント化/レジストリハイブ変更に関する監視の強化/管理者プロファイル内の COM オブジェクト登録変更の綿密な監視などにより、リスクを低減することだ。

ユーザー組織にとって必要なことは、NightmareEclipse のツール/LegacyHive/RoguePlanet/Defender エクスプロイトが発見されたシステムを、侵害されている可能性があるものとして扱うことである。

完全にパッチ適用済みの Windows ビルドに対する、実際に機能する PoC のリリースという、研究者 Will Dormann の実績を正しく評価すべきだ。