
ETW और WPP ट्रेसिंग टूल सुरक्षा अनुसंधान के लिए। एकाधिक प्रदाताओं की सदस्यता लेता है, स्वचालित रूप से घटनाओं को JSON में पार्स करता है, और उन्नत फ़िल्टरिंग, बफरिंग, और stdout, फ़ाइल, या Windows इवेंट लॉग में SIEM इन्जेस्शन के लिए आउटपुट का समर्थन करता है।
मैंने इस प्रोजेक्ट को गैर-डेवलपर्स को विंडोज के लिए इवेंट ट्रेसिंग (ETW) और विंडोज प्रीप्रोसेसर ट्रेसिंग (WPP) पर शोध में गोता लगाने में मदद करने के लिए बनाया है।

Sealighter विस्तृत फ़िल्टरिंग और ETW और WPP प्रदाताओं और ईवेंट के ट्राइएज को सक्षम करने के लिए सुविधा-संपन्न Krabs ETW लाइब्रेरी का लाभ उठाता है।
आप यूज़र मोड प्रदाताओं, कर्नेल ट्रेसिंग और WPP ट्रेसिंग सहित कई प्रदाताओं की सदस्यता और फ़िल्टर कर सकते हैं, और ईवेंट को JSON के रूप में stdout, फ़ाइल या विंडोज इवेंट लॉग (उच्च-मात्रा वाले ट्रेस जैसे FileIO के लिए उपयोगी) में आउटपुट कर सकते हैं। प्रदाता द्वारा उत्पन्न किए जा सकने वाले ईवेंट या उनके प्रारूप का कोई ज्ञान आवश्यक नहीं है, Sealighter स्वचालित रूप से किसी भी ईवेंट को कैप्चर और पार्स करता है जो उसे पूछा जाता है।
फिर ईवेंट को Python, PowerShell में JSON से पार्स किया जा सकता है, या आगे की खोज के लिए Splunk या ELK को अग्रेषित किया जा सकता है।
फ़िल्टरिंग एक ईवेंट के विभिन्न पहलुओं पर की जा सकती है, इसकी ID या Opcode से, एक प्रॉपर्टी वैल्यू से मिलान करने तक, पूरे ईवेंट में एक मनमाना स्ट्रिंग खोज करने तक (WPP ट्रेस में उपयोगी या जब आप ईवेंट संरचना नहीं जानते हैं, लेकिन इसकी सामग्री का अंदाजा है)। आप कई फ़िल्टर को एक साथ चेन भी कर सकते हैं, या फ़िल्टर को नकार सकते हैं। आप प्रति ID अधिकतम ईवेंट को फ़िल्टर भी कर सकते हैं, जो समान ईवेंट से भर जाने के बिना किसी नए प्रदाता की जांच करने के लिए उपयोगी है।
ETW रेड और ब्लू दोनों टीमों के लिए एक अविश्वसनीय रूप से उपयोगी प्रणाली है। रेड टीमें विंडोज घटकों के आंतरिक कार्यों में अंतर्दृष्टि प्राप्त कर सकती हैं, और ब्लू टीमें संदिग्ध गतिविधि में मूल्यवान अंतर्दृष्टि प्राप्त कर सकती हैं।
एक सामान्य शोध लूप होगा:
logman query providers का उपयोग करके या बाइनरी में WPP ट्रेस की तलाश करके दिलचस्प ETW प्रदाताओं की पहचान करेंETW ईवेंट के साथ ऐसा करना कठिन हो सकता है, बिना कोड लिखे ETW API के साथ बातचीत करने और ईवेंट को पार्स करने के। यदि आप एक मजबूत प्रोग्रामर नहीं हैं (या API से निपटना नहीं चाहते हैं), तो आपके एकमात्र अन्य विकल्प पुराने अंतर्निहित विंडोज टूल्स के संयोजन का उपयोग करके डिस्क पर बाइनरी etl फ़ाइलों के रूप में लिखना है, फिर उनसे निपटना है। WPP ट्रेस समस्याओं को बढ़ा देते हैं, प्रदाता और उनके ईवेंट के बारे में लगभग कोई आसानी से मिलने वाला डेटा प्रदान नहीं करते हैं।
JDU2600's Event List और ETWExplorer जैसी परियोजनाएं कुछ स्थिर अंतर्दृष्टि देती हैं, लेकिन प्रदाताओं में अक्सर Event(1001) जैसे अस्पष्ट ईवेंट नाम होते हैं, जिसका अर्थ है कि सबसे दिलचस्प डेटा केवल गतिशील रूप से ट्रेस चलाकर और आउटपुट का अवलोकन करके दिखाई देता है।
एक तरह से, यह FuzzySec के SilkETW के समान स्थान पर काम करता है। लेकिन जहां Silk रक्षकों के लिए अधिक उत्पादन-तैयार है, वहीं यह मेरे जैसे शोधकर्ताओं के लिए डिज़ाइन किया गया है, और इस तरह इसमें कई विशेषताएं शामिल हैं जो मुझे Silk के साथ नहीं मिल सकती थीं, मुख्यतः टूल को संचालित करने के लिए उपयोग की जाने वाली विभिन्न लाइब्रेरी के कारण। कृपया अधिक जानकारी के लिए यहां देखें।
संभवतः कोई जो ETW की मूल बातें समझता है, और वास्तव में यह खोजने में गोता लगाना चाहता है कि आप इससे क्या डेटा प्राप्त कर सकते हैं, बिना कोड लिखे या मैन्युअल रूप से यह पता लगाए कि ईवेंट कैसे प्राप्त करें और पार्स करें।
कृपया निम्नलिखित पृष्ठ पढ़ें:
स्थापना - Sealighter चलाना कैसे शुरू करें, जिसमें एक सरल कॉन्फ़िगरेशन शामिल है, और यदि आवश्यक हो तो विंडोज इवेंट लॉगिंग कैसे सेट करें।
कॉन्फ़िगरेशन - Sealighter को कैसे कॉन्फ़िगर करें, जिसमें यह निर्दिष्ट करना शामिल है कि किन प्रदाताओं को लॉग करना है, और कहां लॉग करना है।
फ़िल्टरिंग - Sealighter द्वारा प्रदान किए जाने वाले सभी प्रकार के फ़िल्टरिंग में गहरा गोता।
बफ़रिंग - कई समान ईवेंट को एक के रूप में रिपोर्ट करने के लिए बफ़रिंग का उपयोग कैसे करें
डेटा पार्स करना - Sealighter से डेटा कैसे प्राप्त करें और पार्स करें।
परिदृश्य - मेरे शोध में Sealighter का उपयोग कैसे किया है, इसके उदाहरण परिदृश्यों का वॉकथ्रू।
सीमाएं - ऐसी चीजें जो Sealighter अच्छी तरह से या बिल्कुल नहीं करता है।
यह नाम Seafood Highlighter का संक्षिप्त रूप है, जिसे हम ऑस्ट्रेलिया में नकली केकड़े के मांस कहते हैं। चूंकि यह Krabs ETW पर बनाया गया है, मुझे लगा कि नाम मजाकिया है।
बेझिझक एक मुद्दा उठाएं, हालांकि जैसा कि मैंने तुलना दस्तावेज़ में कहा है, मैं केवल एक व्यक्ति हूं, और यह एक शोध-तैयार उपकरण है, उत्पादन-तैयार नहीं।