
DCOM और DLL हैजैकिंग का उपयोग करके लेटरल मूवमेंट
हमने हाल ही में निम्नलिखित DCOM क्लासों की खोज की है जो DLL अपहरण के प्रति संवेदनशील हैं। यदि कोई हमलावर संबद्ध पथ में लिख सकता है, तो वे COM ऑब्जेक्ट को इंस्टैंशिएट करके पार्श्विक संचलन कर सकते हैं। कुछ क्लासों में DLL अपहरण के अतिरिक्त अवसर भी हैं जो यहाँ सूचीबद्ध नहीं हैं।
| क्लास | DLL पथ | प्रोसेस | आर्किटेक्चर |
|---|
| WordPad Document | C:\Program Files\Windows NT\Accessories\XmlLite.dll | wordpad.exe | x64 |
| CLSID_ContactReadingPane | C:\Program Files\Common Files\System\UxTheme.dll | prevhost.exe | x64 |
| User OOBE Create Elevated Object Server | C:\Windows\System32\oobe\USERENV.dll | dllhost.exe | x64 |
| MSDAINITIALIZE* | C:\Program Files\Common Files\System\Ole DB\bcrypt.dll | dllhost.exe | x64 |
| ShapeCollector Class | C:\Program Files\Common Files\Microsoft Shared\ink\DUI70.dll | ShapeCollector.exe | x64 |
| Microsoft WBEM Unsecured Apartment | C:\Windows\System32\wbem\wbemcomn.dll | unsecapp.exe | x64 |
| Microsoft WBEM Active Scripting Event Consumer Provider | C:\Windows\System32\wbem\wbemcomn.dll | scrcons.exe | x64 |
| Voice Toast Callback* | C:\Windows\System32\WinBioPlugIns\MFPlat.dll | svchost.exe | x64 |
| Add to Windows Media Player list | C:\Program Files (x86)\Windows Media Player\ATL.dll | setup_wm.exe | x86 |
| Windows Media Player Burn Audio CD Handler | C:\Program Files (x86)\Windows Media Player\PROPSYS.dll | wmplayer.exe | x86 |
* केवल Windows 11 और Windows Server 2022
इस रिपॉजिटरी में DLL की प्रतिलिपि बनाने और COM ऑब्जेक्ट को इंस्टैंशिएट करने के लिए एक Cobalt Strike BOF और Impacket स्क्रिप्ट शामिल है। एक्सपोर्ट परिभाषाएँ और एक बुनियादी DLL टेम्पलेट भी शामिल हैं।
परीक्षण के लिए एक सरल DLL टेम्पलेट शामिल किया गया है। आवश्यक एक्सपोर्ट फ़ॉरवर्ड संस्करणों के बीच थोड़े बदलते हैं, जिससे कभी-कभी अपहरण टूट जाता है। लक्ष्य DLL के लिए एक्सपोर्ट परिभाषाएँ उत्पन्न करने हेतु एक यूटिलिटी स्क्रिप्ट शामिल की गई है। Windows Server 2022/11 और 10 के लिए परिभाषा फ़ाइलें exports निर्देशिका में प्रदान की गई हैं। आप एक्सपोर्ट निर्देशिका का नाम निर्दिष्ट करने के लिए Makefile की पहली पंक्ति को संपादित कर सकते हैं। यदि आप Windows के किसी विशिष्ट संस्करण से DLL खोज रहे हैं, तो Winbindex एक बेहतरीन संसाधन है।
दोनों कार्यान्वयनों में आपको निम्नलिखित संक्षिप्त क्लास नामों में से एक निर्दिष्ट करना आवश्यक है:
upload-dll <class name> <target IP or hostname> [DLL path]
create-object <class name> <target IP or hostname>
dcomhijack.py -object <class name> [[domain/]username[:password]@]<targetName or address>
BOF और Impacket स्क्रिप्ट का परीक्षण निम्नलिखित Windows संस्करणों/आर्किटेक्चर के विरुद्ध किया गया था: