
إثبات مفهوم لتجاوز PPL باستغلال استدعاء النظام NtUserGetWindowProcessHandle للحصول على مقبض للعمليات المحمية في Windows دون امتيازات المسؤول.
PPLwindow هو إثبات مفهوم (Proof-of-Concept) لتجاوز PPL يؤثر على Windows 10 1809 حتى Windows 11 23H2. إن استدعاء النظام NtUserGetWindowProcessHandle من برنامج التشغيل win32kfull.sys لا يتحقق بشكل صحيح مما إذا كانت العملية عملية محمية على إصدارات Windows المذكورة. يمكن استغلال ذلك للحصول على مقبض عملية (process handle) بصلاحيات PROCESS_QUERY_LIMITED_INFORMATION | PROCESS_VM_OPERATION | PROCESS_VM_READ | PROCESS_VM_WRITE | PROCESS_DUP_HANDLE لعملية محمية من عملية غير محمية.
تحتاج العملية المحمية المستهدفة إلى نافذة لكي يعمل هذا التجاوز. يستغل PoC الملف WerFaultSecure.exe ويحقق PP-WinTcb. لا يتطلب هذا التجاوز أي صلاحيات مسؤول (admin). تم إصلاحه في Windows 11 24H2.
رأيت هذا المنشور من James Forshaw: https://infosec.exchange/@tiraniddo/115539156769921108 كان رد فعلي الأول: انتظر لحظة. أنا أعرف هذا. لقد وجدت هذا بالفعل في 2023 مع CVE-2023-41772، لكنني لم أتمكن من العثور على عملية محمية كهدف صالح. لذا شكرًا لـ James Forshaw على إيجاد هدف جيد (WerFaultSecure.exe). أخبرت Microsoft بهذا عندما أبلغت عن CVE-2023-41772. قد يكون هذا هو السبب وراء إصلاحه في Windows 11 24H2.
بالنسبة لـ Windows 10 1809 / Windows Server 2019، يمكنك استخدام ملفات WerFaultSecure.exe و wer.dll الثنائية من Windows 10 21H2 / Windows Server 2022. ضع كلا الملفين الثنائيين في مجلد وقدم المسار إلى WerFaultSecure.exe كأول وسيطة سطر أوامر (command line argument) إلى PPLwindow.
