
NtUserGetWindowProcessHandle syscall का दुरुपयोग करके बिना admin privileges के संरक्षित Windows प्रक्रियाओं का handle प्राप्त करने वाला Proof-of-concept PPL bypass।
PPLwindow, Windows 10 1809 से Windows 11 23H2 को प्रभावित करने वाले PPL Bypass के लिए एक Proof-of-Concept है। win32kfull.sys ड्राइवर से NtUserGetWindowProcessHandle syscall उल्लिखित Windows संस्करणों पर यह ठीक से जाँच नहीं करता कि कोई प्रक्रिया संरक्षित प्रक्रिया है या नहीं। इसका दुरुपयोग करके एक असंरक्षित प्रक्रिया से संरक्षित प्रक्रिया के लिए PROCESS_QUERY_LIMITED_INFORMATION | PROCESS_VM_OPERATION | PROCESS_VM_READ | PROCESS_VM_WRITE | PROCESS_DUP_HANDLE के साथ एक प्रक्रिया हैंडल प्राप्त किया जा सकता है।
इस bypass के काम करने के लिए लक्षित संरक्षित प्रक्रिया को एक विंडो की आवश्यकता होती है। PoC, WerFaultSecure.exe का शोषण करता है और PP-WinTcb प्राप्त करता है। इस bypass के लिए किसी admin विशेषाधिकार की आवश्यकता नहीं है। इसे Windows 11 24H2 में ठीक कर दिया गया था।
मैंने James Forshaw की यह पोस्ट देखी: https://infosec.exchange/@tiraniddo/115539156769921108 मेरी पहली प्रतिक्रिया थी: एक सेकंड रुको। मैं यह जानता हूँ। मैंने इसे 2023 में CVE-2023-41772 के साथ पहले ही खोज लिया था, लेकिन एक वैध लक्ष्य के रूप में कोई संरक्षित प्रक्रिया नहीं ढूँढ सका। तो एक अच्छा लक्ष्य (WerFaultSecure.exe) खोजने के लिए James Forshaw को धन्यवाद। जब मैंने CVE-2023-41772 की रिपोर्ट की, तब मैंने Microsoft को इसके बारे में बताया। यही कारण हो सकता है कि इसे Windows 11 24H2 में ठीक किया गया।
Windows 10 1809 / Windows Server 2019 के लिए आप Windows 10 21H2 / Windows Server 2022 से WerFaultSecure.exe और wer.dll बाइनरीज़ का उपयोग कर सकते हैं। दोनों बाइनरीज़ को एक फ़ोल्डर में रखें और PPLwindow को पहले कमांड लाइन तर्क के रूप में WerFaultSecure.exe का पथ प्रदान करें।
