
यह DLL हाईजैकिंग और "Trusted Directories" सत्यापन के दुरुपयोग का उपयोग करके UAC को बायपास करने का एक PoC है।
यह एक PoC है जो UAC को DLL हाईजैकिंग और "Trusted Directories" सत्यापन का दुरुपयोग करके बाईपास करता है।
पायथन स्क्रिप्ट CsvToHeader.py का उपयोग हेडर फ़ाइल जनरेट करने के लिए किया जा सकता है। डिफ़ॉल्ट रूप से यह CSV फ़ाइल dll_hijacking_candidates.csv का उपयोग करेगा जिसे यहाँ पाया जा सकता है: dll_hijacking_candidates.csv.
स्क्रिप्ट प्रत्येक पोर्टेबल एक्ज़ीक्यूटेबल (PE) के लिए निम्नलिखित शर्तों की जाँच करेगी:
asInvokerhighestAvailablerequireAdministrator<autoElevate>true</autoElevate>
-c आर्गुमेंट निर्दिष्ट किया है, तो स्क्रिप्ट जाँच करेगी कि हाईजैक करने के लिए DLL PE तालिका से आयातित DLLs की सूची में है या नहीं।> python .\CsvToHeader.py -h
usage: CsvToHeader.py -f [DLL_PATH] -c
CsvToHeader can be used to generate a header file from a CSV.
optional arguments:
-h, --help show this help message and exit
-f [DLL_PATH] Path of the csv to convert (default="dll_hijacking_candidates.csv")
-c Enable import dll in PE (default=False)
-v, --version Show program's version number and exit
हेडर फ़ाइल जनरेट करने के लिए आप निम्नलिखित कमांड का उपयोग कर सकते हैं:
python CsvToHeader.py > dll_hijacking_candidates.h
उपयोग की जाने वाली फ़ाइलें DLLHijacking.exe और test.dll हैं।
DLLHijacking.exe वह फ़ाइल है जिसका उपयोग संवेदनशील PE की सूची जनरेट करने के लिए किया जाएगा। यह निम्नलिखित चरणों को निष्पादित करेगा:
CreateFakeDirectory
एक फ़ंक्शन जो C:\windows \system32 में एक निर्देशिका बनाता है।
नई निर्देशिका में फ़ाइलें कॉपी करें
C:\windows\system32\[TARGET.EXE] से C:\windows \system32\[TARGET.EXE] तक[CUSTOM_DLL_PATH] से C:\windows \system32\[TARGET.DLL] तकट्रिगर
C:\windows \system32\[TARGET.EXE] से एक्ज़ीक्यूटेबल चलाएँ
CleanUpFakeDirectory
वह फ़ंक्शन जो चरण 1 में बनाई गई निर्देशिका और चरण 2 की फ़ाइलों को हटाता है।
CheckExploit
यह देखने के लिए C:\ProgramData\exploit.txt फ़ाइल की सामग्री की जाँच करें कि क्या एक्सप्लॉइट सफल रहा।
DLLHijacking.exe हमेशा एक लॉग फ़ाइल exploitable.log जनरेट करेगा जिसमें निम्नलिखित सामग्री होगी:
उदा.
1,computerdefaults.exe,PROPSYS.dll
0,computerdefaults.exe,Secur32.dll
चलाने का कमांड:
DLLHijacking.exe [DLL_PATH]
यदि कोई आर्गुमेंट पास नहीं किया जाता है, तो स्क्रिप्ट DLL test.dll का उपयोग करेगी जो DLLHijacking.exe के संसाधन में संग्रहीत है।
Windows 10 Pro (10.0.19043 N/A Build 19043) पर परीक्षण किया गया।

test.dll एक सरल डायनामिक लाइब्रेरी है जिसका उपयोग यह देखने के लिए किया जाएगा कि क्या एक्सप्लॉइट सफल है।
DLL निम्नलिखित सामग्री वाली एक फ़ाइल C:\ProgramData\exploit.txt बनाएगी:
एक्सप्लॉइट पूरा होने पर यह फ़ाइल हटा दी जाएगी।
यह परियोजना केवल शैक्षिक और नैतिक परीक्षण उद्देश्यों के लिए बनाई गई है। बिना पूर्व आपसी सहमति के लक्ष्यों पर हमला करने के लिए इस सॉफ़्टवेयर का उपयोग अवैध है।
अंतिम उपयोगकर्ता की जिम्मेदारी है कि वह सभी लागू स्थानीय, राज्य और संघीय कानूनों का पालन करे।
डेवलपर्स कोई देयता नहीं मानते हैं और इस प्रोग्राम के किसी भी दुरुपयोग या क्षति के लिए जिम्मेदार नहीं हैं।