
सुरक्षा टीमों के लिए ट्रिगर्स, SMART परिकल्पनाओं, व्यवहार्यता गेट्स, स्कोपिंग, हंट प्लान और परिणाम रिपोर्टिंग को कवर करने वाली एक संरचित, दोहराने योग्य थ्रेट हंटिंग कार्यप्रणाली का दस्तावेजीकरण करता है।
लीड थ्रेट हंटर के रूप में, मुझे शून्य से एक थ्रेट हंट प्रोग्राम बनाने का काम सौंपा गया था। इसमें इस बारे में बहुत सोच-विचार शामिल था कि थ्रेट हंटिंग वास्तव में क्या है और इसे सार्थक परिणामों में कैसे परिवर्तित किया जाए। थ्रेट हंटिंग, डिटेक्शन इंजीनियरिंग, साइबर थ्रेट इंटेलिजेंस (CTI), फोरेंसिक्स के विभिन्न तरीकों को पढ़ने में कई घंटे लगे, और यहां तक कि संयुक्त राज्य वायु सेना में अपने समय के अनुभव से भी। हालांकि, एक प्रोग्राम बनाने के दौरान, मुझे एहसास हुआ कि मुझे एक प्रक्रिया की आवश्यकता है, एक एकीकृत खतरा शिकार प्रक्रिया। मैंने इस प्रक्रिया को शिकार करने का एक संरचित और परिभाषित तरीका प्रदान करने और अंततः संगठन के लिए सार्थक परिणाम देने के लिए विकसित किया।
graph LR
Z[Step 0: Environment Context] --> A[Triggering Event]
A --> B[Hypothesis Development]
B --> C[Initial Assessment]
C --> D[Feasibility Assessment]
D --> E[Define Scope & Objectives]
E --> F[Formalize Hunt Plan]
F --> G[Execute Hunt]
G --> H[Document Outcomes]
H --> I[Report & Iterate]
I --> A
खतरे की तलाश (थ्रेट हंटिंग) उन खतरों की सक्रिय खोज है जो आपके नियंत्रणों को दरकिनार कर गए हैं। यह परिभाषा तय है; इसे एक कार्यक्रम के रूप में कैसे चलाया जाए, यह नहीं। यह प्रक्रिया एक संश्लेषण है, और तालिका इसका ईमानदार लेखा-जोखा है:
| स्रोत | यह यहाँ क्या योगदान देता है |
|---|---|
| Sqrrl / हंटिंग मैच्योरिटी मॉडल (बियांको) | मैच्योरिटी और मेट्रिक्स में उपयोग किया गया मुख्य लूप और मैच्योरिटी लैडर |
| TaHiTI | ट्रिगर एक सच्चे शुरुआती बिंदु के रूप में, और बंद होने पर आसन्न प्रक्रियाओं को सौंपना |
| PEAK | हंट टाइपिंग (परिकल्पना / बेसलाइन / मॉडल-सहायता प्राप्त) और परिणाम-केंद्रित "ज्ञान के साथ कार्य करें" बंद |
| AIMOD2 | अनुमानित उल्लंघन का आधार और टाइप की गई परिणाम श्रेणियां |
| OTHF | दोहराने योग्य टीम फ़ंक्शन के रूप में हंट चलाने के लिए परिचालन फ़्रेमिंग |
| यह प्रक्रिया जोड़ती है | चरण 0 पर्यावरण संदर्भ · एक कठिन व्यवहार्यता GO / NO-GO / CONDITIONAL गेट · टाइप किए गए परिणामों के साथ जीरा एपिक/स्टोरी/टास्क · एक रूब्रिक-गेटेड परिकल्पना और एक निर्दिष्ट डिटेक्शन हैंडऑफ़ |
भेद करने वाले अंतिम पंक्ति में हैं। बाकी सब दूसरों के काम पर आधारित है, जिसका उल्लेख संदर्भ में किया गया है।
हंट संचालन करने के लिए विभिन्न तरीकों का वर्णन किया गया है: संरचित, असंरचित, TTP-केंद्रित, इंटेल-केंद्रित, डेटा-संचालित, और इसी तरह। जबकि यह एकीकृत थ्रेट हंटिंग प्रक्रिया संरचित लग सकती है, इसका मतलब यह नहीं है कि आपकी परिकल्पना को असंरचित तरीके से डेटा द्वारा संचालित नहीं किया जा सकता है। इस प्रक्रिया का उद्देश्य विभिन्न प्रकार की थ्रेट हंटिंग को शामिल करना है, जिससे एक मॉड्यूलर दृष्टिकोण की अनुमति मिलती है। हम अपनी परिकल्पना का पूरी तरह से परीक्षण सुनिश्चित करने के लिए इन सभी तकनीकों का उपयोग करेंगे।
लक्ष्य थ्रेट हंटिंग के लिए एक मॉड्यूलर दृष्टिकोण है जहाँ कोई एक-आकार-सभी के लिए उपयुक्त नहीं है। अपने निपटान में सभी तकनीकों का उपयोग करें।
व्यवहार में, आपके द्वारा चुना गया हंट प्रकार इस बात पर निर्भर करता है कि आप DAIKI श्रृंखला (डेटा → सूचना → ज्ञान → अंतर्दृष्टि) में कहाँ से शुरू कर रहे हैं:
| हंट का प्रकार | शुरुआती बिंदु | विशेषताएँ |
|---|---|---|
| अन्वेषणात्मक (EDA) | कच्चा डेटा | बेसलाइनिंग, डेटा आकार को समझना, कोई पूर्व परिकल्पना नहीं |
| परिकल्पना-आधारित (HBO) | स्थितिजन्य जागरूकता | टीम के ज्ञान के आधार पर विश्वसनीय हमले के परिदृश्यों का परीक्षण |
| खतरे-सूचित (TIO) | कार्रवाई योग्य CTI | इंटेलिजेंस-संचालित, ज्ञात अभिनेता या TTP फोकस |
| पर्पल ऑपरेशंस (DPO) | रेड टीम अंतर्दृष्टि | संयुक्त आक्रामक/रक्षात्मक सत्यापन |
डेटा विज्ञान सिद्धांतों का पालन करते हुए, हंटिंग के प्रकार की परवाह किए बिना, आपको अपनी हंट से संबंधित डेटा स्रोतों का पता लगाने और समझने का लक्ष्य रखना चाहिए। इस रेपो में /Data_Analysis फ़ोल्डर उस अन्वेषण चरण के लिए सहायक तकनीकें और नोटबुक शामिल करता है।
इसके अतिरिक्त, थ्रेट इंटेलिजेंस चाहे शुरुआती बिंदु हो या न हो, संचालन को चलाने में मदद करने के लिए पूरी प्रक्रिया में निहित है। थ्रेट इंटेलिजेंस
नोट: जबकि आप आमतौर पर व्यवहार या TTPs पर ध्यान केंद्रित करना चाहते हैं, IoCs का अपना महत्व है यदि वे वास्तव में कार्रवाई योग्य और समय पर हों। जबकि एक वातावरण में IoCs की तलाश करना वास्तव में थ्रेट हंटिंग नहीं है, वे अभी भी उपयोगी जानकारी और एक और शुरुआती बिंदु प्रदान कर सकते हैं। वे हंट चक्र का हिस्सा हो सकते हैं, लेकिन पूरी हंट स्वयं नहीं।
किसी भी हंट के शुरू होने से पहले, पर्यावरण को कैप्चर करें ताकि हर डाउनस्ट्रीम आर्टिफैक्ट (क्वेरी, फ़ील्ड नाम, स्कोपिंग निर्णय) को उस जगह के अनुरूप बनाया जा सके जहाँ आप वास्तव में काम करते हैं, बजाय इसके कि इसे सामान्य रूप से लिखा जाए। मैंने इसे एक स्पष्ट कदम के रूप में जोड़ा क्योंकि मैं लगातार हंट योजनाएँ देखता था जो डेटा स्रोतों का संदर्भ देती थीं जो किसी के पास नहीं थीं, या पूरी तरह से गलत बोली में लिखी गई क्वेरीज़। यहाँ कुछ मिनट बाद में घंटों बचाते हैं।
कम से कम, दस्तावेज़:
| संदर्भ | यह क्यों मायने रखता है |
|---|---|
| SIEM / डेटा प्लेटफ़ॉर्म | Splunk SPL, KQL, Elastic DSL, और Chronicle प्रत्येक आपके द्वारा लिखी गई हर क्वेरी को आकार देते हैं |
| EDR प्लेटफ़ॉर्म | CrowdStrike, SentinelOne, Defender for Endpoint प्रत्येक अलग टेलीमेट्री फ़ील्ड नामों का उपयोग करते हैं |
| पर्यावरण प्रकार | ऑन-प्रेम, क्लाउड-नेटिव (AWS/Azure/GCP), या हाइब्रिड यह बदलता है कि कौन से लॉग मौजूद हैं |
| उद्योग ऊर्ध्वाधर | यह निर्धारित करता है कि कौन से खतरे वाले अभिनेता वास्तविक रूप से प्रासंगिक हैं |
| लॉग प्रतिधारण विंडो | यह निर्धारित करता है कि कौन सी समय सीमा वास्तव में क्वेरी करने योग्य है |
| हंट मैच्योरिटी स्तर | पहली बार के शिकारियों को मचान की आवश्यकता होती है; अनुभवी टीमें एक कंकाल चाहती हैं |
इसे एपिक के शीर्ष पर एक Environment Profile ब्लॉक के रूप में दस्तावेज़ करें। यदि आप तेजी से आगे बढ़ रहे हैं, तो न्यूनतम SIEM प्लेटफ़ॉर्म और पर्यावरण प्रकार है, इससे कम कुछ भी आपकी क्वेरीज़ को सामान्य बना देगा।
कई संगठनों में शिकार कर रहे हैं? (MSSP/MDR, संघबद्ध सहायक कंपनियां, या एक साझा SIEM प्लेटफ़ॉर्म।)
tenants/<id>/profile.yamlरजिस्ट्री में प्रति किरायेदार एक प्रोफ़ाइल रखें और प्रत्येक एपिक को प्रोफ़ाइल एम्बेड करने के बजायtenant: <id>का संदर्भ दें। व्यवहार्यता से पहले, प्राधिकरण की जाँच करें: RoE/अनुबंध कवरेज के बिना एक किरायेदार, या इसकीallowed_actionsके बाहर एक नियोजित कार्रवाई, अधिकृत नहीं है और वहीं रुक जाती है। एकल-संगठन टीमें इसे छोड़ सकती हैं। मल्टी-टेनेंट ऑपरेशन देखें।
TaHiTI फ्रेमवर्क से उधार लेते हुए, थ्रेट हंटिंग एक ट्रिगरिंग घटना से शुरू होती है। ये घटनाएँ एक हंट की शुरुआत को उचित ठहराती हैं। TaHiTI के अनुसार, ट्रिगर में शामिल हो सकते हैं:
हमारे संगठन के लिए, हम हितधारकों से प्रत्यक्ष आवश्यकताओं और पर्यावरण को प्रभावित करने वाले भेद्यता प्रकटीकरण जैसे कुछ अतिरिक्त ट्रिगर्स के साथ इनका उपयोग करते हैं।
कुछ फ्रेमवर्क प्रारंभिक परिकल्पना (यहाँ चरण 2) के साथ थ्रेट हंट शुरू करते हैं, लेकिन मैं पूछता हूँ: आप उस परिकल्पना तक कैसे पहुँचते हैं?
संभवतः एक ट्रिगरिंग घटना होती है जो प्रारंभिक परिकल्पना की ओर ले जाती है। जैसे आइजैक न्यूटन ने एक सेब को गिरते हुए देखा था, इससे पहले कि वह यह सोचता कि किस बल ने उसे नीचे खींचा, वह सेब ट्रिगरिंग घटना थी जिसने गुरुत्वाकर्षण के बारे में एक परिकल्पना को जन्म दिया। इसी तरह, हमारे पास एक ट्रिगर होना चाहिए इससे पहले कि हम एक परिकल्पना तक पहुँचें।
हंटिंग ट्रिगर्स (स्रोत: टारगेटेड हंटिंग इंटीग्रेटिंग थ्रेट इंटेलिजेंस (TaHiTI))