
एक Windows सेवा जो नकली SMB सत्र बनाती है ताकि उच्च-विशेषाधिकार वाले उपयोगकर्ता लॉगऑन का अनुकरण किया जा सके, हमलावरों को हनीपॉट मशीनों की ओर आकर्षित करके शीघ्र पहचान और घटना प्रतिक्रिया के लिए।
________ _________ _____ _ _____ __
/ ___| \/ || ___ \ / ___| (_) / ___| / _|
\ `--.| . . || |_/ / \ `--. ___ ___ ___ _ ___ _ __ \ `--. _ __ ___ ___ | |_ ___ _ __
`--. \ |\/| || ___ \ `--. \/ _ \/ __/ __| |/ _ \| '_ \ `--. \ '_ \ / _ \ / _ \| _/ _ \ '__|
/\__/ / | | || |_/ / /\__/ / __/\__ \__ \ | (_) | | | | /\__/ / |_) | (_) | (_) | || __/ |
\____/\_| |_/\____/ \____/ \___||___/___/_|\___/|_| |_| \____/| .__/ \___/ \___/|_| \___|_|
| |
|_|
स्वागत है! यह एक उपयोगिता है जिसे Visual Studio 2019 (या नए) के साथ संकलित किया जा सकता है। इस प्रोग्राम का लक्ष्य एक नकली SMB सत्र बनाना है। इसका प्राथमिक उद्देश्य हमलावरों को एक honey-device तक पहुँचने के लिए लुभाने का एक तरीका प्रदान करना है। यह प्रोग्राम बिना किसी वारंटी या गारंटी के आता है।
यह प्रोग्राम आपको कोड में थोड़ा संशोधन करने की आवश्यकता होगी। पंक्ति 144 पर, Windows API CreateProcessWithLogonW API को कॉल किया गया है, दो पैरामीटर डिफ़ॉल्ट रूप से प्रदान किए गए हैं - svc-admin (उपयोगकर्ता नाम) और contoso.com (डोमेन)। यह आवश्यक है कि आप इन मानों को अपने उत्पादन नेटवर्क से मेल खाने के लिए बदलें।
CreateProcessWithLogonW(L"DomainAdminUser", L"YourDomain.com", NULL, LOGON_NETCREDENTIALS_ONLY, <snip>);
कोड को संशोधित करने और इसे संकलित करने के बाद, आपको सेवा स्थापित करनी होगी। आप इसे निम्नलिखित कमांड से कर सकते हैं:
sc create servicename binpath="C:\ProgramData\Services\Inject\service.exe" start="auto"
प्रोग्राम के सही ढंग से काम करने की पुष्टि करने के लिए, आपको जांचना चाहिए कि सिस्टम पर कौन से सत्र मौजूद हैं। यह निम्नलिखित कमांड से किया जा सकता है:
C:\ProgramData\Services\Inject> net sessions
Computer User name Client Type Opens Idle time
-------------------------------------------------------------------------------
\\[::1] svc-admin 0 00:00:04
The command completed successfully.
आपको लगभग 13 मिनट बाद फिर से जांचना चाहिए कि एक नया सत्र बन गया है और प्रोग्राम ठीक से काम कर रहा है।
इसके पीछे का सिद्धांत यह है कि जब कोई प्रतिद्वंद्वी SharpHound चलाता है और सत्र एकत्र करता है और स्वामित्व वाले प्रिंसिपल्स से हमले के पथों का विश्लेषण करता है, तो वे पहचान सकते हैं कि एक उच्च विशेषाधिकार प्राप्त उपयोगकर्ता Tier-2 बुनियादी ढांचे (वर्कस्टेशन) पर साइन इन है, जिसे (ऐसा प्रतीत होता है) वे फिर एक्सेस कर सकते हैं और डोमेन एडमिन एक्सेस प्राप्त करने के लिए क्रेडेंशियल्स डंप कर सकते हैं।
उपरोक्त परिदृश्य में, एक हमलावर ने उपयोगकर्ता "[email protected]" से समझौता किया है जो lab-wkst-2.contoso.com पर एक स्थानीय व्यवस्थापक है। उपयोगकर्ता svc-admin lab-wkst-2.contoso.com पर लॉग इन है, जिसका अर्थ है कि हमलावर को केवल वर्कस्टेशन में साइन इन करना है, Mimikatz चलाना है और क्रेडेंशियल्स डंप करना है। तो, आप इसकी निगरानी कैसे करते हैं?
इस उपकरण का कार्यान्वयन महत्वपूर्ण है, वैसे ही निगरानी भी है। यदि आप बिना निगरानी के उपकरण लागू करते हैं, तो यह प्रभावी रूप से बेकार है; इसलिए निगरानी अनिवार्य है। इस होस्ट की निगरानी का सबसे प्रभावी तरीका किसी भी लॉगऑन पर सतर्क करना है। यह प्रोग्राम बिना किसी उपयोगकर्ता गतिविधि वाले होस्ट पर सबसे अच्छा उपयोग किया जाता है जो मानक कॉर्पोरेट निगरानी उपकरणों (EDR, AV, Windows Event Log Forwarding, आदि) के साथ डोमेन से जुड़ा होता है। यह अत्यधिक अनुशंसित है कि आपके पास ईमेल अलर्ट, SMS अलर्ट, और यदि संभव हो तो कई अन्य हों ताकि यह सुनिश्चित किया जा सके कि इस मशीन से संबंधित घटनाओं को जल्द से जल्द ट्रायेज किया जाए क्योंकि वास्तविक प्रतिद्वंद्वी के प्रश्न में वर्कस्टेशन से जुड़ने की सबसे अधिक संभावना है।
माइक्रोसॉफ्ट को सेवा टेम्पलेट कोड और उत्कृष्ट Windows API दस्तावेज़ीकरण प्रदान करने के लिए धन्यवाद।