الأمن السيبرانيالاختراقات والثغرات

ثغرة أمنية جديدة في نظام الإبلاغ عن أخطاء ويندوز تسمح للمهاجمين بالتصعيد للحصول على صلاحيات SYSTEM الكاملة

تم اكتشاف ثغرة أمنية جديدة لتحليل تصعيد الامتيازات المحلية في خدمة Windows Error Reporting (WER)، تسمح للمهاجمين بالحصول بسهولة على صلاحيات SYSTEM الكاملة.

تم تتبع هذه الثغرة تحت الرمز CVE-2026-20817، وقد اعتُبرت خطيرة من الناحية الهيكلية لدرجة أن شركة Microsoft قررت إزالة الميزة المتأثرة بالكامل بدلًا من محاولة إصلاحها عبر تحديث برمجي تقليدي.

توجد هذه الثغرة الأمنية داخل المكتبة التنفيذية الرئيسية لخدمة الإبلاغ عن الأخطاء في ويندوز، وتحديدًا في الملف WerSvc.dll.

وبحسب باحثي الثغرات الأمنية Denis Faiustov و Ruslan Sayfiev من شركة GMO Cybersecurity، فإن الخدمة تعاني من معالجة غير صحيحة للصلاحيات غير الكافية عند التعامل مع بعض طلبات العملاء.

هذا الضعف المعماري يوفر مسارًا موثوقًا يمكن من خلاله لمستخدم محلي ذو صلاحيات منخفضة تشغيل أوامر بامتيازات مرتفعة.

تاريخيًا، كانت خدمة Windows Error Reporting هدفًا متكررًا لهجمات تصعيد الامتيازات بسبب تعقيد آلية الاتصال بين العمليات داخل النظام.

لاستغلال هذه الثغرة تحديدًا، يجب على المهاجم أولًا الاتصال بمنفذ ALPC باستخدام واجهة NtAlpcConnectPort API، ثم إرسال الحمولة الخبيثة باستخدام واجهة NtAlpcSendWaitReceivePort API.

ويجب أن تحتوي بنية البيانات الخبيثة على قيمة MessageFlags الصحيحة تمامًا، إضافة إلى حشو بنيوي محدد، حتى يتمكن المهاجم من تفعيل منطق المعالجة الضعيف داخل الخدمة.

آلية الاستغلال

تكمن جوهر هذه الثغرة في التلاعب برسائل Advanced Local Procedure Call (ALPC) المرسلة إلى نقطة النهاية \WindowsErrorReportingServicePort.

يقوم المهاجم بإنشاء رسالة تحتوي على كائن File Mapping، ما يؤدي إلى دفع الدالة الداخلية ElevatedProcessStart إلى تكرار مقبض الوصول (handle) وقراءة معاملات سطر الأوامر الخبيثة باستخدام واجهة MapViewOfFile API.

وفي النهاية يتم استدعاء الدالة CreateElevatedProcessAsUser، والتي تقوم دون قصد بتشغيل التطبيق الشرعي WerFault.exe بصلاحيات SYSTEM العالية، ولكن مع معاملات يتحكم بها المهاجم.

كيفية معالجة الثغرة

اكتشف محللو الأمن الذين أجروا مقارنة ثنائية (Binary Diffing) بين الإصدارين 10.0.26100.7309 و 10.0.26100.7623 من ملف WerSvc.dll أن شركة Microsoft اتبعت أسلوبًا غير معتاد في معالجة المشكلة.

فبدلًا من إضافة فحوصات صلاحيات أو عمليات تنقية للمدخلات، قام المطورون بإضافة اختبار ميزة صارم باسم __private_IsEnabled() يقوم بتعطيل وظيفة SvcElevatedLaunch بشكل كامل.

وفي حال تنفيذ الكود بعد التحديث، تقوم الدالة بإرجاع رمز الخطأ 0x80004005 (E_FAIL) مباشرة، ما يؤدي فعليًا إلى إغلاق سطح الهجوم بالكامل عبر إزالة الميزة المتسببة في الثغرة.

تحويل الثغرة إلى أداة هجومية والكشف عنها

على الرغم من أن الثغرة تنجح في إجبار النظام على تشغيل WerFault.exe بصلاحيات SYSTEM، إلا أن المهاجمين يحتاجون إلى استخدام خيارات محددة في سطر الأوامر مع بعض الحيل المتقدمة داخل نظام ويندوز لتحقيق تنفيذ أوامر عشوائية.

أثناء عملية الاستغلال، تستخدم خدمة WER تقنية انتحال معرف العملية الأب (Parent Process ID Spoofing)، لجعل العملية المرتفعة الجديدة تبدو وكأنها ناتجة مباشرة عن برنامج العميل منخفض الصلاحيات.

وبما أن هذه التقنية تُستخدم بكثرة من قبل البرمجيات الخبيثة الحديثة، فإن حلول الحماية مثل Microsoft Defender تستطيع اكتشاف هذا السلوك ورفع تنبيهات فورية.

تحذير للباحثين الأمنيين

يجب على المختصين في الأمن السيبراني توخي الحذر الشديد عند دراسة هذه الثغرة.

فقد ظهرت عدة مستودعات مزيفة وربما خبيثة لملفات Proof-of-Concept الخاصة بالثغرة CVE-2026-20817 على منصات مثل GitHub.

وغالبًا ما تحتوي هذه المشاريع المضللة على برمجيات خبيثة مخفية، مما يشكل تذكيرًا مهمًا بضرورة عزل جميع الأدوات الأمنية التي يتم تنزيلها وتحليلها بشكل ثابت (Static Analysis) قبل تشغيلها.

مقالات ذات صلة

زر الذهاب إلى الأعلى