DCShadow
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
यह AD में एक नया डोमेन कंट्रोलर पंजीकृत करता है और निर्दिष्ट वस्तुओं पर गुण (SIDHistory, SPNs...) को धकेलने के लिए इसका उपयोग करता है बिना किसी लॉग के जो संशोधनों के बारे में हो। आपको DA विशेषाधिकार की आवश्यकता है और रूट डोमेन के अंदर होना चाहिए। ध्यान दें कि यदि आप गलत डेटा का उपयोग करते हैं, तो बहुत ही खराब लॉग दिखाई देंगे।
हमला करने के लिए आपको 2 mimikatz उदाहरणों की आवश्यकता है। इनमें से एक RPC सर्वरों को SYSTEM विशेषाधिकार के साथ शुरू करेगा (आपको यहां उन परिवर्तनों को इंगित करना होगा जिन्हें आप करना चाहते हैं), और दूसरा उदाहरण मानों को धकेलने के लिए उपयोग किया जाएगा:
ध्यान दें कि elevate::token
mimikatz1
सत्र में काम नहीं करेगा क्योंकि यह थ्रेड के विशेषाधिकारों को बढ़ाता है, लेकिन हमें प्रक्रिया के विशेषाधिकारों को बढ़ाने की आवश्यकता है।
आप एक "LDAP" ऑब्जेक्ट भी चुन सकते हैं: /object:CN=Administrator,CN=Users,DC=JEFFLAB,DC=local
आप DA से या इस न्यूनतम अनुमतियों वाले उपयोगकर्ता से परिवर्तन धकेल सकते हैं:
डोमेन ऑब्जेक्ट में:
DS-Install-Replica (डोमेन में प्रतिकृति जोड़ें/हटाएं)
DS-Replication-Manage-Topology (प्रतिलिपि टोपोलॉजी प्रबंधित करें)
DS-Replication-Synchronize (प्रतिलिपि समन्वय)
कॉन्फ़िगरेशन कंटेनर में साइट्स ऑब्जेक्ट (और इसके बच्चे):
CreateChild and DeleteChild
DC के रूप में पंजीकृत कंप्यूटर का ऑब्जेक्ट:
WriteProperty (लिखें नहीं)
लक्ष्य ऑब्जेक्ट:
WriteProperty (लिखें नहीं)
आप Set-DCShadowPermissions का उपयोग करके इन विशेषाधिकारों को एक अप्रिविलेज्ड उपयोगकर्ता को दे सकते हैं (ध्यान दें कि इससे कुछ लॉग छोड़ेंगे)। यह DA विशेषाधिकारों की तुलना में बहुत अधिक प्रतिबंधात्मक है।
उदाहरण के लिए: Set-DCShadowPermissions -FakeDC mcorp-student1 SAMAccountName root1user -Username student1 -Verbose
इसका मतलब है कि उपयोगकर्ता नाम student1 जब मशीन mcorp-student1 में लॉग इन होता है, तो उसके पास ऑब्जेक्ट root1user पर DCShadow विशेषाधिकार हैं।
हमें अपने उपयोगकर्ता के SID के साथ निम्नलिखित ACEs को अंत में जोड़ने की आवश्यकता है:
डोमेन ऑब्जेक्ट पर:
(OA;;CR;1131f6ac-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)
(OA;;CR;9923a32a-3607-11d2-b9be-0000f87a36b2;;UserSID)
(OA;;CR;1131f6ab-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)
हमलावर कंप्यूटर ऑब्जेक्ट पर: (A;;WP;;;UserSID)
लक्षित उपयोगकर्ता ऑब्जेक्ट पर: (A;;WP;;;UserSID)
कॉन्फ़िगरेशन कंटेनर में साइट्स ऑब्जेक्ट पर: (A;CI;CCDC;;;UserSID)
किसी ऑब्जेक्ट का वर्तमान ACE प्राप्त करने के लिए: (New-Object System.DirectoryServices.DirectoryEntry("LDAP://DC=moneycorp,DC=loca l")).psbase.ObjectSecurity.sddl
ध्यान दें कि इस मामले में आपको कई परिवर्तन करने की आवश्यकता है, केवल एक नहीं। इसलिए, mimikatz1 सत्र (RPC सर्वर) में उस परिवर्तन के साथ /stack
पैरामीटर का उपयोग करें जिसे आप करना चाहते हैं। इस तरह, आपको सभी अटके हुए परिवर्तनों को करने के लिए केवल एक बार /push
करने की आवश्यकता होगी।
DCShadow के बारे में अधिक जानकारी ired.team पर।
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE) GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)