मॉड्यूलर Python3 आक्रमण फ्रेमवर्क जो SIEM प्लेटफार्मों (Splunk, Graylog, OSSIM, QRadar, McAfee) के शोषण को क्रेडेंशियल चोरी, पेलोड तैनाती और पोस्ट-एक्सप्लॉइटेशन मॉड्यूल के माध्यम से स्वचालित करता है।
MultiSIEM Modular Python3 Attack Framework
ElevenPaths द्वारा https://www.elevenpaths.com/
उपयोग: python3 ./siemsframework.py
SIEMs रक्षात्मक उपकरण हैं जिनका उपयोग साइबर सुरक्षा के क्षेत्र में तेजी से किया जा रहा है, विशेषकर बड़ी कंपनियों और उन कंपनियों द्वारा जो अत्यधिक महत्वपूर्ण प्रणालियों और नेटवर्कों की निगरानी करने का इरादा रखती हैं। हालांकि, एक हमलावर के दृष्टिकोण से, कॉर्पोरेट नेटवर्क के सिस्टम और खातों पर SIEMs को दी गई अनुमतियाँ उच्च होती हैं। इसके अलावा, SIEMs तक प्रशासनिक पहुँच का उपयोग उस सर्वर पर कोड निष्पादन प्राप्त करने के लिए किया जा सकता है जहाँ ऐसा SIEM स्थापित है, और कभी-कभी क्लाइंट मशीनों पर भी, यह मानते हुए कि एक SIEM Active Directory सर्वर, AWS सर्वर, डेटाबेस और नेटवर्क डिवाइस (उदाहरण के लिए, फायरवॉल और राउटर) जैसी घटनाओं को एकत्र करता है।
हमारी जाँच के दौरान, हमने बड़ी संख्या में आक्रमण वैक्टर का पता लगाया जो विभिन्न SIEMs पर उनसे समझौता करने के लिए उपयोग किए जा सकते हैं, उदाहरण के लिए:
• महत्वपूर्ण प्रणालियों (LDAP/AD सर्वर, डेटाबेस, नेटवर्क डिवाइस, AWS सर्वर) से SIEM में संग्रहीत उपयोगकर्ता खाते और पासवर्ड प्राप्त करना।
• SIEM स्थापित सर्वर से समझौता करने के उद्देश्य से विंडोज/लिनक्स रिवर्स शेल, विंडोज/लिनक्स बाइंड शेल या दुर्भावनापूर्ण स्क्रिप्ट जैसे दुर्भावनापूर्ण एप्लिकेशन विकसित और स्थापित करना।
• उन मशीनों से समझौता करने के उद्देश्य से विंडोज/लिनक्स रिवर्स शेल, विंडोज/लिनक्स बाइंड शेल या दुर्भावनापूर्ण स्क्रिप्ट जैसे दुर्भावनापूर्ण एप्लिकेशन विकसित और स्थापित करना जिनसे SIEM घटनाओं को एकत्र करता है।
• दुर्भावनापूर्ण क्रियाएँ या सूचनाएँ बनाना और लागू करना जो किसी दी गई घटना के घटित होने पर कमांड निष्पादित करने की अनुमति देती हैं, उदाहरण के लिए SIEM स्थापित सर्वर पर रिवर्स शेल प्राप्त करने के उद्देश्य से।
• OVA छवि विन्यास में डिफ़ॉल्ट पासवर्ड और SIEM कमजोरियों का लाभ उठाकर सर्वर, डेटाबेस या यहाँ तक कि SIEM वेब इंटरफ़ेस के एडमिन क्रेडेंशियल प्राप्त करना।
• एडमिन क्रेडेंशियल प्राप्त करने के लिए वेब या एडमिन इंटरफ़ेस, या SIEM क्लाइंट सॉफ़्टवेयर के विरुद्ध डिक्शनरी अटैक या ब्रूट-फ़ोर्स अटैक करना।
• SIEM स्थापित सर्वर से मनमानी फ़ाइलें पढ़ना।
• आगे के हमलों को अंजाम देने के लिए SIEM कॉन्फ़िगरेशन जानकारी और अन्य प्रासंगिक पैरामीटर प्राप्त करना।
जाँच के परिणामों के आधार पर, ओपन सोर्स SIEMs Framework टूल विकसित किया गया था। यह ElevenPaths की नवाचार और प्रयोगशाला टीम द्वारा Python3 में विकसित एक मॉड्यूलर टूल है। यह बाजार में मौजूद विभिन्न SIEMs (वाणिज्यिक और ओपन सोर्स दोनों) पर संभावित हमलों को स्वचालित करने की अनुमति देता है।
SIEMs Framework कई आक्रमण पेलोड का समर्थन करता है जिन्हें हमला किए जाने वाले SIEM और उसके ऑपरेटिंग सिस्टम के अनुसार चुना जा सकता है। PowerShell, Python, Bash, Exe और अन्य प्रारूपों में पेलोड उपलब्ध हैं। चयनित हमला निष्पादित होने के बाद, टूल परिणाम स्क्रीन पर दिखाता है और उसी SIEM पर किसी अन्य हमले को वापस करना और निष्पादित करना या समझौता करने के लिए दूसरा SIEM चुनना संभव है। इसका एक सरल, उपयोग में आसान और सहज इंटरफ़ेस है। वर्तमान में इसका उपयोग निम्नलिखित SIEMs के साथ किया जा सकता है: Splunk, Graylog और OSSIM।
SIEMs Framework को हमारे Github से .zip फ़ाइल डाउनलोड करके या रिपॉजिटरी को क्लोन करके डाउनलोड किया जा सकता है, और इसमें निम्नलिखित आवश्यकताएँ हैं जिन्हें pip3 install -r requirements.txt के माध्यम से स्थापित किया जा सकता है:
• splunk-sdk
• requests
• python-nmap
• colorama
• pandas
• paramiko
• pymongo
• qradar4py
• requests_mock
• urllib3
एक बार आवश्यकताएँ स्थापित हो जाने के बाद, टूल का उपयोग इस प्रकार किया जा सकता है: python3 ./siemsframework.py
जब टूल निष्पादित किया जाता है, तो मुख्य मेनू प्रदर्शित होता है, और वहाँ आपको चुनना होगा कि क्या आप किसी विशिष्ट IP को स्कैन करना चाहते हैं जहाँ एक SIEM होगा या उसके अंदर SIEMs का पता लगाने के लिए एक नेटवर्क को स्कैन करना चाहते हैं। एक विशिष्ट IP पते के भीतर SIEM को स्कैन करने और पता लगाने के लिए आपको विकल्प 1 का उपयोग करना होगा, और नेटवर्क स्कैन करने के लिए विकल्प 2 का।
विकल्प 1 “Scan and Detect SIEM” चुनने पर, टूल IP पता माँगता है ताकि समर्थित SIEMs के विशिष्ट पोर्ट को स्कैन कर सके और यह सत्यापित करने के लिए वेब या प्रबंधन इंटरफ़ेस से जुड़ सके कि यह वास्तव में एक SIEM है।
एक बार उपरोक्त विधियों का पालन करके SIEM का पता चल जाने के बाद, टूल लाल रंग में पता लगाए गए SIEM को दिखाता है और आपको उस SIEM के आक्रमण मॉड्यूल को लॉन्च करने का विकल्प देता है।
विकल्प 2 “Find SIEMs on the network” चुनने पर, टूल CIDR नोटेशन में स्कैन किए जाने वाले नेटवर्क को माँगता है, उदाहरण के लिए: 192.168.137.0/24। एक बार जानकारी दर्ज हो जाने के बाद, SIEMs Framework पहले सक्रिय सिस्टम का पता लगाने के लिए एक डिस्कवरी करता है; फिर, समर्थित SIEMs के डिफ़ॉल्ट पोर्ट स्कैन किए जाते हैं, और अंत में यह सत्यापित करने के लिए उन प्रत्येक सिस्टम के वेब या प्रबंधन इंटरफ़ेस से जुड़ता है कि यह वास्तव में एक SIEM है।
एक बार उपरोक्त विधियों का पालन करके SIEMs का पता चल जाने के बाद, टूल लाल रंग में पता लगाए गए SIEMs को दिखाता है और हमला किए जाने वाले SIEM का IP पता माँगता है।
“y” दर्ज करके और Splunk हमला मॉड्यूल के लॉन्च का चयन करने पर, टूल इस SIEM के विरुद्ध किए जाने वाले सभी संभावित हमलों को दिखाता है। पहले दो हमलों के लिए कोई क्रेडेंशियल आवश्यक नहीं हैं, लेकिन पाँचवें के लिए Splunk एडमिन विशेषाधिकार आवश्यक हैं।
इस हमला मॉड्यूल में Splunk के लिए dict.txt नामक एक विशिष्ट शब्दकोश है, जो 2018 में सबसे अधिक उपयोग किए जाने वाले 100 पासवर्ड और SIEM के व्यापार नाम और इसके एडमिन उपयोगकर्ता के विभिन्न क्रमपरिवर्तनों से बना है, जो अपरकेस और लोअरकेस अक्षरों में हैं, और स्वरों को संख्याओं से बदलते हैं। यदि आप उपरोक्त से भिन्न किसी अन्य सूची का उपयोग करना चाहते हैं, तो /splunk/dict.txt को किसी अन्य शब्द सूची से बदला जा सकता है, बशर्ते फ़ाइल का नाम रखा जाए। Splunk पासवर्ड नीति एडमिन भूमिका वाले उपयोगकर्ताओं पर लागू नहीं होती है, इसलिए पासवर्ड या खाता ब्लॉकिंग से संबंधित प्रतिबंध असफल पहुँच प्रयासों के कारण लागू नहीं होते हैं। डिक्शनरी अटैक शुरू करने से पहले, टूल जाँचता है कि क्या विश्लेषण किया जाने वाला Splunk में फ्री संस्करण है जो किसी भी प्रकार के प्रमाणीकरण का उपयोग नहीं करता है, या यदि यह अभी भी इस सॉफ़्टवेयर के सबसे पुराने संस्करणों का डिफ़ॉल्ट पासवर्ड “changeme” रखता है:
यदि विश्लेषण किए जाने वाले Splunk सर्वर में वेब इंटरफ़ेस सक्रिय है, तो यह मॉड्यूल प्रमाणीकरण की आवश्यकता के बिना स्वयं वेब इंटरफ़ेस से सर्वर और सत्र जानकारी प्राप्त करने की अनुमति देता है। Splunk वेब इंटरफ़ेस का डिफ़ॉल्ट पोर्ट 8000 है; इस मॉड्यूल का उपयोग करने के लिए उस पोर्ट को जानना और दर्ज करना आवश्यक है जहाँ वेब इंटरफ़ेस प्रकाशित है।
इस मॉड्यूल का उपयोग Splunk सर्वर या Universal Forwarder पर किया जा सकता है। इसका उपयोग करने के लिए, Splunk एडमिन क्रेडेंशियल आवश्यक हैं, और उन्हें उदाहरण के लिए डिक्शनरी अटैक (पहला हमला) के माध्यम से प्राप्त किया जा सकता है। मॉड्यूल का परिणाम वर्तमान Splunk स्थापना की जानकारी है: संस्करण, ऑपरेटिंग सिस्टम, Splunk कॉन्फ़िगरेशन और अधिक।
इस मॉड्यूल का उपयोग केवल Splunk सर्वर पर किया जाता है। इसका उपयोग करने के लिए, Splunk एडमिन क्रेडेंशियल आवश्यक हैं, और उन्हें उदाहरण के लिए डिक्शनरी अटैक (पहला हमला) के माध्यम से प्राप्त किया जा सकता है। मॉड्यूल का परिणाम उन सभी क्रेडेंशियल्स हैं जो Splunk पर उपयोग किए जाने वाले उन ऐप्स द्वारा संग्रहीत हैं जो उन उपकरणों से जुड़ने के लिए जिनसे घटनाएँ प्राप्त की जाती हैं।