
Windows सिस्टम और API मॉनिटर के लिए Rust में स्टैंडअलोन ज़ीरो-ड्राइवर
Rust में उच्च-प्रदर्शन शून्य-ड्राइवर Windows सिस्टम और API मॉनिटर।
Windows के लिए आधुनिक strace और रीयल-टाइम Process Monitor। मूल Rust में निर्मित, किसी भी कर्नेल ड्राइवर की आवश्यकता नहीं, जिसमें रीयल-टाइम टर्मिनल यूज़र इंटरफ़ेस (TUI) और हेडलेस डायग्नोस्टिक्स के लिए अनबफ़र्ड स्ट्रीमिंग शामिल है।
तृतीय-पक्ष कर्नेल ड्राइवर (.sys) सिस्टम क्रैश (BSOD) का जोखिम उठाते हैं, हमले की सतह बढ़ाते हैं, और ड्राइवर-साइनिंग छूट की आवश्यकता होती है जो एंटरप्राइज़ वातावरण में निषिद्ध है। wstrace 100% यूज़रलैंड में गैर-आक्रामक Win32 डिबगिंग API और मूल Windows ETW इंटरफ़ेस का उपयोग करके चलता है।
मानक उपयोगकर्ता खाते wstrace run <binary> के माध्यम से किसी भी लक्ष्य को चला और ट्रेस कर सकते हैं। स्पॉन किए गए चाइल्ड प्रोसेस सीधे UAC प्रॉम्प्ट के बिना डिबगिंग हैंडल (PROCESS_ALL_ACCESS) विरासत में प्राप्त करते हैं। मॉड्यूल, थ्रेड, सॉकेट और I/O के लिए टेलीमेट्री पूरी तरह से अनप्रिविलेज्ड Win32 API पर निर्भर करती है।
एलिवेशन एक त्वरक है, गेट नहीं:
run, attach (उपयोगकर्ता सत्र), चाइल्ड प्रोसेस (-C), इंटरैक्टिव TUI और स्ट्रीमिंग के लिए पूर्ण ट्रेसिंग।wstrace all) अनलॉक करता है ताकि बैकग्राउंड OS सेवाओं और सिस्टम डेमॉन की निगरानी की जा सके।नवीनतम रिलीज़ को स्वचालित रूप से $HOME\.local\bin में इंस्टॉल करने और इसे अपने उपयोगकर्ता PATH में जोड़ने के लिए PowerShell में चलाएँ:
irm https://raw.githubusercontent.com/gilnett/wstrace/main/packaging/install.ps1 | iex
व्यक्तिगत बकेट के माध्यम से इंस्टॉल करें:
scoop bucket add gilnett https://github.com/gilnett/scoop-bucket
scoop install wstrace
या सीधे URL के माध्यम से इंस्टॉल करें:
scoop install https://raw.githubusercontent.com/gilnett/wstrace/main/packaging/scoop/wstrace.json
GitHub Releases से पहले से कंपाइल की गई स्टैंडअलोन बाइनरीज़ डाउनलोड करें।
सीधे GitHub से इंस्टॉल करें:
cargo install --git https://github.com/gilnett/wstrace.git
या क्लोन किए गए रिपॉज़िटरी से स्थानीय रूप से बनाएं:
cargo build --release
परिणामी बाइनरी target\release\wstrace.exe पर स्थित है।
[!NOTE] Winget और Scoop मैनिफ़ेस्ट प्रकाशित GitHub Releases के साथ स्वचालित रूप से सिंक्रनाइज़ होते हैं।
[!NOTE] आधिकारिक पैकेज सबमिशन वर्तमान में microsoft/winget-pkgs पर समीक्षा और सत्यापन के दौर से गुज़र रहा है। सामुदायिक मॉडरेटर द्वारा अनुमोदित और मर्ज किए जाने के बाद, इसे सीधे इस प्रकार इंस्टॉल किया जा सकेगा:
winget install gilnett.wstrace
scoop install .\packaging\scoop\wstrace.json
पुष्टि करें कि wstrace वर्तमान शेल में सुलभ है:
wstrace --version
वास्तविक समय Win32 और सिस्टम टेलीमेट्री के साथ लक्ष्य निष्पादन योग्य फ़ाइल लॉन्च करें:
wstrace run <executable_path> [-- <arguments>...]
| कुंजी | क्रिया | विवरण |
|---|---|---|
Ctrl+C | चयनित कॉपी करें | हाइलाइट किए गए इवेंट विवरण को Windows क्लिपबोर्ड में कॉपी करता है। |
Ctrl+A | सभी कॉपी करें | वर्तमान में फ़िल्टर किए गए सभी इवेंट को Windows क्लिपबोर्ड में कॉपी करता है। |
Ctrl+E / Space | पॉज़ / रिज़्यूम | आने वाली टेलीमेट्री को छोड़े बिना इवेंट दृश्य को फ़्रीज़ करता है। |
Ctrl+X | बफ़र साफ़ करें | डिस्प्ले बफ़र से वर्तमान इवेंट सूची को खाली करता है। |
Tab | श्रेणी चक्र | इवेंट फ़िल्टर करता है: ALL -> FILE -> REG -> NET -> PROC। |
f | केवल विफलताएँ | दृश्य को केवल विफल संचालनों तक सीमित करता है (जैसे एक्सेस अस्वीकृत, नहीं मिला)। |
Up / Down | नेविगेशन | गहन निरीक्षण के लिए एक इवेंट चुनता है। |
q / Esc | बाहर निकलें | ट्रेसिंग सत्र को साफ़-सुथरे ढंग से समाप्त करता है। |
सक्रिय प्रक्रियाओं, नए स्पॉन, निकास और लोड किए गए मॉड्यूल की सिस्टम-व्यापी रूप से वास्तविक समय में निगरानी करें:
wstrace all
किसी मौजूदा प्रक्रिया को PID या बाइनरी नाम से, उसे पुनः आरंभ किए बिना अटैच करें:
# Attach by PID
wstrace attach -p <PID>
# Attach by process name
wstrace attach -n <process_name.exe>
ANSI रंग कोड के साथ लाइव इवेंट्स को सीधे stdout पर लिखता है:
wstrace -m stream [-d <seconds>] run <executable_path>
व्यापक मैनुअल और उन्नत विकल्प: उन्नत पथ फ़िल्टरिंग (
--include/--exclude), चाइल्ड ट्रैकिंग (-C), JSON रिपोर्ट (--export-json), क्लिपबोर्ड निर्यात (--copy), और स्क्रिप्टिंग विकल्पों के लिए, CLI संदर्भ मैनुअल देखें याwstrace --helpचलाएँ।
packaging/install.ps1)ToolHelp32Snapshot, OpenProcess, VirtualQueryEx) और Windows के लिए इवेंट ट्रेसिंग (ETW)।x86_64-pc-windows-msvc (Intel / AMD 64-बिट)aarch64-pc-windows-msvc (Qualcomm Snapdragon X / Windows on ARM)wstrace को उच्च-सुरक्षा वाले एंटरप्राइज़ वातावरणों (बैंकिंग, रक्षा, स्वास्थ्य सेवा, और महत्वपूर्ण अवसंरचना) में परिनियोजन के लिए कठोर संस्थागत आवश्यकताओं को पूरा करने के लिए डिज़ाइन किया गया है:
wstrace 100% ऑफ़लाइन और स्टैंडअलोन है। यह शून्य रिमोट सर्वर बनाए रखता है, शून्य टेलीमेट्री या एनालिटिक्स आरंभ करता है, और शून्य आउटबाउंड नेटवर्क कॉल करता है। लाइव ट्रेसिंग के दौरान देखा गया कोई भी संवेदनशील डेटा (API टोकन, फ़ाइल पथ, क्रेडेंशियल, मेमोरी सामग्री) पूरी तरह से स्थानीय RAM तक सीमित रहता है और वर्कस्टेशन कभी नहीं छोड़ता।
पारंपरिक ट्रेसिंग उपयोगिताओं के विपरीत जो तृतीय-पक्ष .sys कर्नेल ड्राइवर स्थापित करती हैं—जिससे सिस्टम क्रैश जोखिम (Blue Screen of Death / BSOD) और ring-0 बैकडोर हमले की सतहें उत्पन्न होती हैं—wstrace शून्य कर्नेल ड्राइवरों के साथ संचालित होता है। यह विशेष रूप से गैर-आक्रामक यूज़रलैंड Win32 डिबगिंग और मूल Windows Kernel ETW उपभोक्ता इंटरफ़ेस पर निर्भर करता है।
ट्रेस टेलीमेट्री Windows उपयोगकर्ता सत्र और Mandatory Integrity Control (MIC) सीमाओं द्वारा सख्ती से सीमित है। गैर-विशेषाधिकार प्राप्त उपयोगकर्ता सत्र स्पष्ट व्यवस्थापक एलिवेशन के बिना उच्च-अखंडता वाली प्रक्रियाओं तक पहुँच या निरीक्षण नहीं कर सकते, जो न्यूनतम विशेषाधिकार के सिद्धांत का सख्ती से पालन करता है।