
एक BRAWL स्वचालित प्रतिद्वंद्वी अनुकरण अभ्यास से डेटा
साइबर सुरक्षा शोधकर्ताओं के लिए एक चुनौतीपूर्ण समस्या है जो पहचान और प्रतिक्रिया क्षमताएँ विकसित कर रहे हैं, वह है एक यथार्थवादी वातावरण ढूँढना जिसमें वे अपनी परिकल्पनाओं और क्षमताओं का परीक्षण कर सकें।
सबसे सस्ता तरीका एक छोटे प्रयोगशाला नेटवर्क पर क्षमताओं का परीक्षण करना है। लेकिन इस वातावरण में वास्तविक उद्यम नेटवर्क के पैमाने और वास्तविक वातावरण के शोर का अभाव है जो पहचान को और अधिक कठिन बनाता है। कई मायनों में, सबसे अच्छा वातावरण कई उद्यम-पैमाने के नेटवर्क पर एक नियंत्रित लेकिन यथार्थवादी हमलावर और उपयोगकर्ताओं, सिस्टम प्रशासकों और तृतीय-पक्ष सॉफ्टवेयर/उपकरणों से वास्तविक शोर के साथ परीक्षण करना होगा। इस वातावरण में परीक्षण की चुनौती यह है कि यह महंगा है और कुछ परिदृश्यों में उच्च जोखिम वाला है।
BRAWL एक समझौता बनाने का प्रयास करता है जो एक क्लाउड वातावरण में स्वचालित रूप से एक उद्यम नेटवर्क बनाने के लिए एक सिस्टम बनाता है। OpenStack वर्तमान में एकमात्र समर्थित वातावरण है, लेकिन इसे इस तरह से डिज़ाइन किया जा रहा है कि भविष्य में अन्य क्लाउड वातावरणों को आसानी से समर्थन दिया जा सके। BRAWL एक विश्लेषण नेटवर्क भी बनाता है जिसमें LogStash और Kafka का उपयोग करके एक डेटा इन्जेस्ट और प्रोसेसिंग पाइपलाइन शामिल है। विश्लेषण नेटवर्क के भाग के रूप में, यह Elasticsearch और Kibana का उपयोग करके एक इवेंट स्टोरेज और सर्च सिस्टम बनाता है। BRAWL Windows इमेज के साथ एक उद्यम नेटवर्क "गेम बोर्ड" चालू करता है। इन इमेज में Microsoft Sysmon और अन्य सेंसर पहले से इंस्टॉल और कॉन्फ़िगर किए गए हैं ताकि डेटा इन्जेस्ट फ्रेमवर्क में लॉग अग्रेषित किए जा सकें।
BRAWL में बॉट्स की अवधारणा भी है, जो लाल, नीले या भूरे रंग के हो सकते हैं। लाल बॉट आक्रामक होते हैं, नीले बॉट रक्षात्मक होते हैं, और भूरे बॉट वैध उपयोगकर्ता व्यवहार का अनुकरण करते हैं ताकि शोर प्रदान किया जा सके जिससे पहचान अधिक कठिन हो जाए। जब कोई उपयोगकर्ता शोध परिकल्पनाओं का परीक्षण करना चाहता है, तो वे एक BRAWL बॉट लागू करते हैं। BRAWL बॉट खुद को BRAWL नियंत्रक के साथ पंजीकृत करता है, जो फिर गेम बोर्ड पर BRAWL बॉट्स के बीच गेम आयोजित करता है।
नोट: फ़ाइल आकार और GitHub कोटा के मुद्दों के कारण, हम सभी फ़ाइलों को git रिपॉजिटरी में सादे पाठ के रूप में छोड़ने के बजाय एक ज़िप फ़ाइल में रख रहे हैं। सारा डेटा इस फ़ाइल में है
इस रिलीज़ में BRAWL प्रोटोटाइप के कुछ डेटा शामिल हैं। हमने नीचे वर्णित एक छोटा उद्यम नेटवर्क बनाया। फिर हमने MITRE CALDERA शोध परियोजना का उपयोग एक लाल बॉट के रूप में करते हुए एक एकल गेम चलाया।
CALDERA एक संबंधित MITRE शोध परियोजना है जो Adversarial Tactics, Techniques, and Common Knowledge (ATT&CK) मॉडल की जानकारी के आधार पर प्रतिद्वंद्वी अनुकरण गतिविधि को स्वचालित करती है। यह ATT&CK रणनीति और तकनीकों का एक सेट लागू करता है और उन तकनीकों के संचालन को स्वचालित करने और एक उद्यम नेटवर्क के भीतर समझौता-पश्चात प्रतिद्वंद्वी व्यवहार उत्पन्न करने के लिए एक योजना प्रणाली (https://dl.acm.org/citation.cfm?id=2991111) का उपयोग करता है।
यह डेटा Creative Commons BY License के तहत जारी किया गया है
हमारा छोटा उद्यम नेटवर्क एक फ्लैट नेटवर्क है जिसमें एक डोमेन कंट्रोलर (dc.brawlco.com) और 16 वर्कस्टेशन शामिल हैं। प्रत्येक पीसी के पीसी नाम में प्राथमिक उपयोगकर्ता का नाम होता है (जैसे, उपयोगकर्ता beane आमतौर पर beane-pc में लॉग इन करता है)। उस उपयोगकर्ता के पास कंप्यूटर पर स्थानीय व्यवस्थापक विशेषाधिकार हैं।
सभी पीसी Windows 8.1 चला रहे हैं। डोमेन कंट्रोलर Windows Server 2012 R2 चला रहा है।
Windows 8 पीसी पर, हमने निम्नलिखित रजिस्ट्री कमांड का उपयोग करके WDigest को LSASS की मेमोरी में सादा टेक्स्ट पासवर्ड रखने में सक्षम बनाने के लिए परिवर्तन किए: reg ADD HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest\ /v UseLogonCredential /t REG_DWORD /d 1 /F
इस अभ्यास के लिए, CALDERA एकमात्र BRAWL बॉट था जो भाग ले रहा था। जबकि अवधारणात्मक रूप से BRAWL का उपयोग विभिन्न हमलावर व्यवहारों और पहचान का परीक्षण करने के लिए किया जा सकता है, MITRE के कई शोध प्रयास "उल्लंघन मान लें" दर्शन का पालन करते हैं। इसलिए हम अभ्यास की शुरुआत में नेटवर्क पर एक बॉक्स पर स्थानीय व्यवस्थापक के रूप में CALDERA को एक प्रारंभिक बिंदु देते हैं।
साथ ही, ग्रे बॉट के बिना विभिन्न होस्टों पर लॉगऑन करने के बिना, BRAWL गेम बोर्ड क्रेडेंशियल्स के दृष्टिकोण से बाँझ है जिन्हें लाल बॉट द्वारा चुराया और उपयोग किया जा सकता है। पार्श्व आंदोलन को सक्षम करने के लिए, BRAWL नियंत्रक psexec का उपयोग करके नेटवर्क से अन्य उपयोगकर्ताओं के क्रेडेंशियल्स के साथ होस्टों पर लॉगऑन इवेंट बनाता है।
CALDERA ने अभ्यास के दौरान निम्नलिखित ATT&CK तकनीकों का प्रदर्शन किया:
इस रिपॉजिटरी में पाँच प्रकार के डेटा हैं। प्रत्येक data/ फ़ोल्डर में अपनी फ़ाइल में निहित है।
| डेटा प्रकार | विवरण |
|---|---|
| game_metadata | BRAWL परिदृश्य का वर्णन करने वाला डेटा |
| sysmon | प्रत्येक वर्कस्टेशन पर चल रहे Sysmon से एकत्रित डेटा |
| win_event | Windows इवेंट लॉग |
| computer_properties | कस्टम स्क्रिप्ट से एकत्रित डेटा जो नेटवर्क में कंप्यूटरों के बारे में कुछ जानकारी प्रदान करता है |
| bsf | BRAWL शेयर्ड फ़ॉर्मेट (BSF) में लाल बॉट क्रियाएँ |
लाल बॉट और नीले बॉट को प्रोत्साहित किया जाता है कि वे अपनी गतिविधियों या पहचानों के बारे में जानकारी BRAWL शेयर्ड फ़ॉर्मेट (BSF) में लॉग करें। इसका लक्ष्य नीले बॉट की पहचान/क्रियाओं की तुलना लाल बॉट की क्रियाओं के साथ आसान बनाना है।
प्रारूप वर्तमान में विकास में है और भविष्य के डेटा सेट में बदल सकता है।
BSF के लिए फ़ील्ड नीचे डेटा स्रोत विवरण अनुभाग में वर्णित हैं।
BRAWL में विभिन्न इवेंट स्रोत समय को अलग-अलग तरीके से संभालते हैं। समय या तो वह समय है जब कोई इवेंट हमारे लॉगिंग इन्जेस्ट फ्रेमवर्क पर पहुँचा, या वह समय जब इवेंट होस्ट/एंडपॉइंट पर उत्पन्न हुआ, या नेटवर्क पर किसी बॉट द्वारा रिकॉर्ड किया गया समय। सामान्य तौर पर वे समय एक-दूसरे के कुछ मिलीसेकंड के भीतर होने चाहिए। जब संभव हो, लॉगिंग इन्जेस्ट फ्रेमवर्क इवेंट में संग्रहीत इवेंट समय का उपयोग करता है न कि इन्जेस्ट नोड्स पर इवेंट के पहुँचने के समय का। नीचे दी गई तालिका प्रत्येक डेटा प्रकार के लिए उपयोग की जाने वाली विधि का विवरण देती है।
| डेटा स्रोत | समय नोट्स |
|---|---|
| computer_properties | time फ़ील्ड से |
| game_metadata | इन्जेस्ट फ्रेमवर्क पर पहुँचने का समय |
| sysmon | utc_time फ़ील्ड से |
| win_event | Windows इवेंट समय से निकाला गया |
| bsf | @timestamp फ़ील्ड इन्जेस्ट फ्रेमवर्क पर पहुँचने का समय है। हालाँकि, समय-संबंधित BSF फ़ील्ड (जैसे happened_after,happened_before, आदि) वे समय हैं जब CALDERA के कमांड और कंट्रोल सर्वर पर समय के आधार पर इवेंट शुरू या समाप्त हुए। |