
EDRs के अंध स्थानों में संचालन में सहायक उपकरण
Pyramid निम्नलिखित से बना है:
Pyramid एक हस्ताक्षरित बाइनरी (जैसे python.exe) से आक्रामक टूलिंग निष्पादित करके, उनकी निर्भरताओं को मेमोरी में आयात करके, पोस्ट-एक्सप्लॉइटेशन कार्यों को एक चालाकीपूर्ण तरीके से करने के लिए उपयोगी है। यह इसलिए संभव है क्योंकि:
अधिक जानकारी के लिए कृपया DEFCON30 - Adversary village वार्ता "Python vs Modern Defenses" स्लाइड डेक और मेरे ब्लॉग पर यह पोस्ट देखें।
यह उपकरण EDRs के विरुद्ध एक बाईपास रणनीति प्रदर्शित करने के लिए बनाया गया था, जो कुछ ब्लाइंड-स्पॉट धारणाओं पर आधारित है। यह पहले से मौजूद तकनीकों और उपकरणों का एक संयोजन है, जो मेरी जानकारी के अनुसार एक नए तरीके से है जो रक्षा को बायपास करने में मदद कर सकता है। उपकरण का एकमात्र उद्देश्य समुदाय को इस प्रकार के उपयोग के बारे में जागरूकता बढ़ाने और समाधान में तेजी लाने में मदद करना है। यह कोई 0day नहीं है, यह कोई पूर्ण चमकदार C2 नहीं है, Pyramid EDRs के ब्लाइंड स्पॉट का शोषण कर सकता है और उपकरण को उन पर प्रकाश डालने के लिए सार्वजनिक किया गया है। एक रक्षा पैराग्राफ शामिल किया गया है, उम्मीद है कि अनुभवी ब्लू-टीमर्स योगदान दे सकते हैं और उस मुद्दे पर बेहतर संभावित समाधान प्रदान कर सकते हैं जिसे Pyramid उजागर करना चाहता है। सभी जानकारी केवल शैक्षिक उद्देश्यों के लिए प्रदान की गई है। निर्देशों का पालन अपने जोखिम पर करें। न तो लेखक और न ही उसका नियोक्ता किसी व्यक्ति या संगठन से उत्पन्न किसी भी प्रत्यक्ष या परिणामी क्षति या हानि के लिए जिम्मेदार है।
Pyramid का इन-मेमोरी लोडिंग प्रारंभ में xorrior के Empyre - Finder Class से प्रेरित और विस्तारित किया गया था।
snovvcrash ने मॉड्यूल mod-DonPAPI.py - mod-LaZagne.py - mod-clr.py का निर्माण किया।
Pyramid मॉड्यूल की क्षमताएँ सीधे Python इंटरप्रेटर से निष्पादित की जा सकती हैं और वर्तमान में हैं:
Pyramid HTTP सर्वर की मुख्य विशेषताएँ:
क्रैडल की मुख्य विशेषताएँ:
Pyramid का उपयोग लक्ष्य मशीन पर पहले से मौजूद Python इंटरप्रेटर के साथ किया जा सकता है, या एक आधिकारिक एम्बेडेबल Python पैकेज को अनज़िप करके और फिर Python डाउनलोड क्रैडल को निष्पादित करने के लिए python.exe चलाकर किया जा सकता है। यह असामान्य प्रक्रिया ट्री पैटर्न बनाने से बचने और सामान्य Python एप्लिकेशन उपयोग की तरह दिखने का एक सरल तरीका है।
Pyramid में डाउनलोड क्रैडल का उपयोग HTTP/S के माध्यम से एक Pyramid सर्वर तक पहुँचने और मॉड्यूल और निर्भरताएँ प्राप्त करने के लिए किया जाता है।
मॉड्यूल उस सुविधा के लिए विशिष्ट हैं जिसका आप उपयोग करना चाहते हैं और इसमें शामिल हैं:
Python निर्भरताएँ पहले से तय और संशोधित की गई हैं ताकि बिना किसी विरोध के मेमोरी में आयात किया जा सके।
वर्तमान में 8 Pyramid मॉड्यूल उपलब्ध हैं:
git clone https://github.com/naksyn/Pyramid
HTTP सर्वर के लिए SSL प्रमाणपत्र जनरेट करें:
openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365
यदि आप अपने स्वयं के हस्ताक्षरित SSL प्रमाणपत्र का उपयोग करना चाहते हैं तो सुनिश्चित करें:
उदाहरण के लिए, यदि आप Pyramid के साथ pythonmemorymodule का उपयोग करना चाहते हैं, तो अपने पेलोड को Delivery_files फ़ोल्डर में रखें, फिर pythonmemorymodule.py खोलें और स्क्रिप्ट के शीर्ष पर आवश्यक पैरामीटर कॉन्फ़िगर करें, जैसे पेलोड फ़ाइल का नाम और वह प्रक्रिया जिसे PE लोड होने के बाद कॉल करना है।
एक बार Pyramid सर्वर चल रहा है और Base स्क्रिप्ट तैयार है, तो आप Agent/cradle.py फ़ाइल में वेरिएबल pyramid_module सेट कर सकते हैं और इसे लक्ष्य पर निष्पादित कर सकते हैं।
क्रैडल को Python मानक लाइब्रेरीज़ के साथ चलाने के लिए बनाया गया है।