Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Get-PDInvokeImports — PowerShell मॉड्यूल जो .NET असेंबलियों में P/Invoke, Dynamic P/Invoke, और D/Invoke की स्वचालित पहचान के लिए है। अनमैनेज्ड API कॉल्स, MDTokens, और DnSpy बुकमार्क्स में एक्सपोर्ट स्थानों को मैलवेयर विश्लेषण के लिए प्रकट करता है। | Kitploit
उपकरण/GitHubGitHub/dump-guy/get-pdinvokeimports
स्थैतिक विश्लेषणरिवर्स इंजीनियरिंगमालवेयर विश्लेषणबाइनरी विश्लेषण
GitHubdump-guy/get-pdinvokeimports

Get-PDInvokeImports

PowerShell मॉड्यूल जो .NET असेंबलियों में P/Invoke, Dynamic P/Invoke, और D/Invoke की स्वचालित पहचान के लिए है। अनमैनेज्ड API कॉल्स, MDTokens, और DnSpy बुकमार्क्स में एक्सपोर्ट स्थानों को मैलवेयर विश्लेषण के लिए प्रकट करता है।

रिपॉजिटरी देखें

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
5464 साल पहलेKitploit द्वारा समीक्षित

Get-PDInvokeImports

विवरण:

Get-PDInvokeImports एक उपकरण (PowerShell मॉड्यूल) है जो असेंबली में P/Invoke, Dynamic P/Invoke और D/Invoke के उपयोग का स्वचालित पता लगाने में सक्षम है। यह उन सभी स्थानों को दिखाता है जहाँ से उन्हें संदर्भित किया जाता है और सभी को DnSpy_Bookmarks.xml में निर्यात करता है।

यह PS मॉड्यूल .NET असेंबलियों को रिवर्स करने के दौरान असेंबली में उपयोग किए गए अप्रबंधित API फ़ंक्शनों के कॉल को तेज़ी से प्रकट करने के लिए उपयोगी और सहायक हो सकता है। कभी-कभी मैलवेयर असेंबलियाँ जंक कोड से भरी होती हैं जहाँ मुख्य कार्यक्षमता सीधे WIN API या NTAPI कॉल द्वारा कार्यान्वित की जाती है।
Get-PDInvokeImports आपको तेज़ी से अवलोकन प्राप्त करने में सक्षम बनाता है कि असेंबली में कौन से P/Invoke, Dynamic P/Invoke और D/Invoke का उपयोग किया गया है - यह दिखाएगा कि कौन से फ़ंक्शन उपयोग किए गए हैं + MDTokens, वे कहाँ घोषित हैं, और कोड से वे सभी स्थान जहाँ उपयोग किए गए हैं।
यह कोड से संदर्भित P/Invoke, Dynamic P/Invoke और D/Invoke के सभी स्थानों को DnSpy Bookmarks.xml में निर्यात करने में सक्षम बनाता है।

उदाहरण: 1MB की असेंबली की कल्पना करें जो जंक कोड + CF अस्पष्टता से भरी हो जहाँ मुख्य कार्यक्षमता अप्रबंधित WinAPI\NTAPI कॉल के माध्यम से प्राप्त की जाती है।

यह PS मॉड्यूल PowerShell में लिखा गया है और Windows PowerShell (.NET Framework) और PowerShell Core (.NET, .NET Core पर आधारित) के साथ पूरी तरह से संगत है। यह असेंबली को पार्स करने के लिए dnlib और dnlib को लोड करने के लिए .NET रिफ्लेक्शन का उपयोग करता है। Dnlib .NET फ्रेमवर्क और .NET स्टैंडर्ड के लिए उपलब्ध है - इसका सीधा अर्थ है कि कोई व्यक्ति Windows और Linux OS पर dnlib के आधार पर इस PS मॉड्यूल का उपयोग कर सकता है।

P/Invoke, Dynamic P/Invoke और D/Invoke क्या हैं?

बहुत संक्षेप में, ये संभावित कार्यान्वयन हैं जिनके द्वारा कोई प्रबंधित कोड से अप्रबंधित कोड को कॉल कर सकता है (सरलीकृत - .NET से सीधे WinAPI/NTAPI कॉल करने के लिए उपयोग किया जा सकता है)
उनमें से कुछ को लागू करना आसान है, कुछ AV डिटेक्शन और हुकिंग से बचने में बेहतर हैं।

अधिक जानकारी:

P/Invoke - [PInvoke]
D/Invoke - [DInvoke]
Dynamic P/Invoke - [Dynamic PInvoke]

स्थापना:

[Releases] में निर्दिष्ट प्लेटफ़ॉर्म के लिए पहले से संकलित dnlib + स्क्रिप्ट Get-PDInvokeImports.ps1 शामिल हैं।
Windows – [release] डाउनलोड करें (Windows PowerShell या PowerShell Core से उपयोग करें)
Linux – [release] डाउनलोड करें (PowerShell Core से उपयोग करें)

यदि आवश्यक हो - स्वयं dnlib संकलित करें (Windows – .NET Framework, Linux-netstandard)

उपयोग:

वीडियो: [YouTube]

[पैरामीटर] -PathToAssembly

अनिवार्य पैरामीटर।
स्कैन करने के लिए असेंबली पथ निर्दिष्ट करता है।

[पैरामीटर] -PathToDnlib

वैकल्पिक पैरामीटर।
dnlib.dll का सिस्टम पथ।

यदि PowerShell dnlib.dll के स्थान से चल रहा है - इस पैरामीटर को अनदेखा किया जा सकता है अन्यथा इस पैरामीटर को निर्दिष्ट करें।

[पैरामीटर] -ExportDnSpyBookmarks

वैकल्पिक पैरामीटर।
कोड से संदर्भित सभी पाए गए P/Invoke, Dynamic P/Invoke और D/Invoke स्थानों को DnSpy Bookmarks XML फ़ाइल (DnSpy_Bookmarks.xml) में निर्यात करने के लिए उपयोग किया जाता है।

DnSpy-Analyze-UsedBy के समान (पूरे कोड में सभी PInvoke और DInvoke के उपयोग का अच्छा अवलोकन)

इसलिए इसे Bookmarks विंडो के माध्यम से DnSpy में आयात करना संभव है (DnSpy -> View -> Bookmarks -> Bookmark Window -> Import bookmarks from file -> DnSpy_Bookmarks.xml चुनें)

[उदाहरण]

root@kitploit:~
PS> Import-Module .\Get-PDInvokeImports.ps1
PS> Get-PDInvokeImports -PathToAssembly 'C:\testfiles\malware.exe'
PS> Get-PDInvokeImports -PathToAssembly .\malware.exe –ExportDnSpyBookmarks
PS> Get-PDInvokeImports -PathToAssembly 'C:\testfiles\malware.exe' -PathToDnlib "C:\dnlib.dll" –ExportDnSpyBookmarks

Linux उदाहरण:

Windows उदाहरण:

टिप्पणियाँ

पता लगाना कुछ सामान्य अस्पष्टताओं को हराने के लिए पर्याप्त मजबूत होना चाहिए।
SmartAssembly, ConfuserEx आदि जैसे सबसे सामान्य ऑफस्केटर्स के साथ परीक्षण किया गया।

पता लगाने के आंतरिक: P/Invoke का पता PinvokeImpl विशेषता के माध्यम से लगाया जाता है जो हमेशा प्रस्तुत होना चाहिए।
D/Invoke का पता "UnmanagedFunctionPointerAttribute" विशेषता और "CallingConvention" के माध्यम से लगाया जाता है (यह कुछ परिस्थितियों में पराजित हो सकता है - लेकिन मैं इसे RedTeam की कल्पना पर छोड़ता हूं (मैं वैसे भी आपको हरा दूंगा))
डायनामिक P/Invoke का पता DefinePInvokeMethod() को संदर्भित करने वाली methodX और methodX को संदर्भित करने वाली सभी methodY खोजने पर आधारित है।

निर्भरताएँ:

[dnlib] (.NET मेटाडेटा रीडर/राइटर जो ऑबफस्केटेड असेंबलियों को भी पढ़ सकता है)
[DnSpyEx - वैकल्पिक]

टूल डाउनलोड करें