
कर्नेल और यूज़र मोड में WinDbg डिबगिंग में महारत हासिल करने के लिए वर्कशॉप सामग्री, जिसमें KdNet सेटअप, डेमो, और बाइनरी विश्लेषण हेतु Time Travel Debugging चैलेंज शामिल है।
इस रिपॉजिटरी में REcon 2024 में आयोजित "WinDbg के साथ बेहतर डिबगिंग के लिए टिप्स और ट्रिक्स" कार्यशाला के लिए तैयार की गई सामग्री शामिल है।
कार्यशाला की सामग्री का उद्देश्य kernel-mode में डिबगिंग करते समय WinDbg के लिए उपयोगी सुविधाएँ प्रदान करना है, लेकिन इसकी अवधारणाओं को user-mode डिबगिंग पर भी बड़ी आसानी से लागू किया जा सकता है।
KdNet वातावरण आसानी से सेट करने के लिए, निम्नलिखित संभव है:
bcdedit /dbgsettings का उपयोग करके इसे सेट करेंEnable-WindowsOptionalFeature -All -Online -LimitAccess -FeatureName Microsoft-Hyper-V # optional
Enable-WindowsOptionalFeature -All -Online -FeatureName Containers-DisposableClientVM # optional
CmDiag.exe DevelopmentMode -On
CmDiag.exe Debug -on –net –hostip $LocalHostIP –key 1.2.3.4
bcdedit /set {current} debug on)कार्यशाला की स्लाइड्स यहाँ उपलब्ध हैं:
WinDbg चीटशीट भी यहाँ पाई जा सकती है:
Demos फ़ोल्डर में कार्यशाला के दौरान विकसित और प्रदर्शित किया गया कुछ कोड मौजूद है।
कार्यशाला एक चैलेंज के साथ समाप्त हुई, जिसमें एक TTD ट्रेस शामिल था जिसे WinDbg का उपयोग करके खोला जा सकता है। कार्य में यह पता लगाना था कि TTD सत्र के दौरान क्या किया जा रहा था, और (अन्य प्रश्नों के अलावा) निम्नलिखित प्रश्नों के उत्तर देने थे:
सभी चरण पूरी तरह से WinDbg के अंतर्गत किए जा सकते हैं (और किए जाने चाहिए)।
समाधान स्क्रिप्ट उसी फ़ोल्डर में पाई जा सकती है।
यह रिपॉजिटरी Github पर रखी जाएगी, लेकिन इसे संग्रहीत कर दिया जाएगा। यदि आपके कोई प्रश्न हैं, तो बेझिझक मुझसे Twitter/X या Discord पर संपर्क करें।