voidmap
एक बहुत ही सरल ड्राइवर मैनुअल मैपर जो CVE-2021-40449 का शोषण करके किसी दिए गए पते पर एक एकल दिए गए तर्क के साथ मनमाना फ़ंक्शन निष्पादित करवाता है। यह एक एक्सप्लॉइट PoC CallbackHell पर आधारित है। Windows 10 Pro For Workstations 1809 17763.379 (64-bit) पर परीक्षण किया गया है, लेकिन वास्तविक रूप से उस समय के आसपास के अधिकांश सिस्टम समर्थित होने चाहिए।
यह निम्नलिखित कार्य करता है:
- cr4 रजिस्टर मान को फिर से लिखकर SMEP (और संभवतः SMAP) को अक्षम करता है
- यूज़रमोड कोड में कूदता है जो वांछित ड्राइवर को मैन्युअल रूप से मैप करता है
- SMEP (और संभवतः SMAP) को फिर से सक्षम करता है
इस दृष्टिकोण के साथ दो मुख्य समस्याएँ हैं:
- मैन्युअल रूप से मैप किया गया ड्राइवर ExAllocatePool द्वारा आवंटित पूल में होगा। यदि आप इसे किसी अधिक गंभीर कार्य के लिए उपयोग करना चाहते हैं, तो आपको मेमोरी आवंटन का एक बेहतर तरीका खोजने पर विचार करना चाहिए ताकि इसे आसानी से डंप न किया जा सके।
- मूल cr4 मान पढ़ने का कोई आसान तरीका नहीं है, जिसका अर्थ है कि मुझे अपने सिस्टम पर मौजूद मान को हार्डकोड करना पड़ा। हालाँकि यह अधिकांश आधुनिक CPUs के लिए समान होना चाहिए, फिर भी आपको यह दोबारा जाँच लेना चाहिए कि मान सही है।
वीडियो:
