
वर्चुअल मशीन निरीक्षण, ट्रेसिंग और डीबगिंग
Icebox एक वर्चुअल मशीन इंट्रोस्पेक्शन समाधान है जो आपको किसी भी प्रक्रिया (कर्नेल या उपयोगकर्ता) को गुप्त रूप से ट्रेस और डीबग करने में सक्षम बनाता है। यह प्रोजेक्ट Winbagility पर आधारित है।
सहायक फ़ाइलें:
एक पूर्ण आरंभ मार्गदर्शिका यहाँ लिखी गई है।
अन्यथा, हमारे samples फ़ोल्डर की जाँच करें। आप इन निर्देशों का पालन करके इन नमूनों को बना सकते हैं, बशर्ते आपने आवश्यकताएँ स्थापित कर ली हों।
यदि आप Windows अतिथि का उपयोग कर रहे हैं, तो आप पर्यावरण चर _NT_SYMBOL_PATH को ऐसे फ़ोल्डर पर सेट करना चाह सकते हैं जिसमें आपके अतिथि का pdb हो। कृपया ध्यान दें कि icebox सेटअप विफल हो जाएगा यदि उसे आपके अतिथि के कर्नेल का pdb नहीं मिलता है।
vm_resume:
vm_resume बस आपके VM को रोकता और फिर से शुरू करता है।
cd icebox/bin/$ARCH/
./vm_resume <vm_name>
nt_writefile:
nt_writefile तब ब्रेक करता है जब कोई प्रक्रिया ntdll!NtWriteFile को कॉल करती है, और वर्तमान निर्देशिका में आपके होस्ट पर एक फ़ाइल में लिखी गई सामग्री को डंप करता है।
cd icebox/bin/$ARCH/
./nt_writefile <vm_name> <process_name>
heapsan:
heapsan किसी प्रक्रिया से ntdll मेमोरी आवंटन पर ब्रेक करता है और प्रत्येक पॉइंटर के पहले और बाद में पैडिंग जोड़ता है। यह अभी भी अधूरा है और अभी तक कोई जाँच नहीं करता है।
cd icebox/bin/$ARCH/
./heapsan <vm_name> <process_name>
wireshark:
wireshark तब ब्रेक करता है जब ndis ड्राइवर नेटवर्क पैकेट पढ़ता या भेजता है और एक wireshark ट्रेस (.pcapng) बनाता है। भेजा गया प्रत्येक पैकेट आवश्यकता होने पर कर्नेल से उपयोगकर्ता स्तर तक एक कॉलस्टैक से जुड़ा होता है।
cd icebox/bin/$ARCH/
./wireshark <name> <path_to_capture_file>