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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
DotNetHookerToolkit — Frida-आधारित .NET Framework injector और managed method hooking toolkit runtime tracing, native entrypoint resolution, और Windows processes के dynamic analysis के लिए। | Kitploit
उपकरण/GitHubGitHub/sensepost/dotnethookertoolkit
गतिशील विश्लेषण (सैंडबॉक्सिंग)कोड विश्लेषणशोषणरिवर्स इंजीनियरिंगडीबगर्सपेनिट्रेशन टेस्टिंगबाइनरी विश्लेषण
GitHubsensepost/dotnethookertoolkit

DotNetHookerToolkit

Frida-आधारित .NET Framework injector और managed method hooking toolkit runtime tracing, native entrypoint resolution, और Windows processes के dynamic analysis के लिए।

रिपॉजिटरी देखें
1146 महीने पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें

InjectorCli + ManagedHookHostProj

इस रिपॉजिटरी में दो प्रोजेक्ट शामिल हैं जिन्हें एक साथ उपयोग करने के लिए डिज़ाइन किया गया है:

  • InjectorCli: एक .NET Framework 4.8 कंसोल इंजेक्टर जो frida-clr (Frida.dll) पर बनाया गया है।
  • ManagedHookHostProj: एक .NET Framework 4.8 सहायक DLL जिसमें मूल निर्यात (via 3F .NET DllExport) होते हैं, जिसका उपयोग प्रबंधित विधियों को मूल प्रवेश बिंदुओं पर हल करने के लिए किया जाता है ताकि Frida संलग्न हो सके।
  • TestTarget32: हुकिंग का परीक्षण करने के लिए एक उदाहरण .NET Framework 4.8 प्रोग्राम।

ये प्रोजेक्ट विंडोज को लक्षित करते हैं और मानते हैं कि आप उन प्रक्रियाओं को इंस्ट्रूमेंट कर रहे हैं जिनके मालिक हैं या जिनका परीक्षण करने की अनुमति है।

दो प्रोजेक्ट क्यों हैं

Frida मूल कोड पतों को हुक करता है। .NET Framework पर, प्रबंधित विधियाँ JIT-संकलित होकर मूल कोड में बदल जाती हैं, लेकिन:

  • Frida .NET Framework के लिए कोई स्थिर "नाम से प्रबंधित विधि हुक करें" API प्रदान नहीं करता है।
  • विधि के JIT संकलन होने तक विधि पते ज्ञात नहीं होते।

इसलिए समग्र पैटर्न इस प्रकार है:

  1. InjectorCli का उपयोग करके किसी लक्ष्य को संलग्न/स्पॉन करें और Frida JavaScript एजेंट लोड करें।
  • लक्ष्य के अंदर, ManagedHookHostProj.dll का उपयोग करके:
    • रिफ्लेक्शन द्वारा एक प्रबंधित विधि खोजें।
    • इसे JIT (PrepareMethod) करने के लिए बाध्य करें।
    • विधि का मूल प्रवेश बिंदु (GetFunctionPointer) लौटाएँ।
  • एजेंट में वापस, Interceptor.attach(entrypoint, ...) को कॉल करें ताकि कॉल को ट्रेस कर सकें/आर्ग लॉग कर सकें/(वैकल्पिक रूप से) व्यवहार बदल सकें।
  • वे एक साथ कैसे काम करते हैं (डेटा प्रवाह)

    InjectorCli (C#)

    • Frida.DeviceManager बनाता है और एक डिवाइस चुनता है।
    • किसी प्रक्रिया को स्पॉन या अटैच करता है।
    • आपकी JavaScript फ़ाइल से Frida.Script बनाता है और लोड करता है।
    • script.Message के माध्यम से एजेंट से संदेश प्रिंट करता है।

    एजेंट (JavaScript)

    • सीधे सामान्य Win32 API (जैसे CreateFileW, MessageBoxW) को हुक कर सकता है।
    • वैकल्पिक रूप से प्रबंधित हेल्पर DLL को Module.load() कर सकता है।
    • NativeFunction के माध्यम से निर्यातित सहायकों (जैसे ResolveMethod) को कॉल करता है।
    • CLR स्ट्रिंग लेआउट पार्सिंग के बजाय सहायक-प्रबंधित UTF-16 बफ़र (DescribeObjectUtf16 + FreeUtf16) का उपयोग करता है।
    • विफल होने पर GetLastErrorUtf16 का उपयोग करके हेल्पर डायग्नोस्टिक्स पूछ सकता है।
    • हुक लगाने के लिए लौटाए गए पतों का उपयोग करता है।

    ManagedHookHostProj (निर्यात के साथ C# क्लास लाइब्रेरी)

    • लक्ष्य के CLR के अंदर चलता है।
    • आपके इच्छित विधि को नाम (+ वैकल्पिक ओवरलोड सिग्नेचर) द्वारा खोजने के लिए रिफ्लेक्शन का उपयोग करता है।
    • JIT संकलन को बाध्य करता है और मूल प्रवेश बिंदु पता लौटाता है।
    • बाय-रेफ मानों के लिए सुरक्षित आदिम रीड/राइट निर्यात प्रदान करता है (ReadInt32 / WriteInt32 / WriteBool)।
    • थ्रेड-लोकल हेल्पर डायग्नोस्टिक्स (GetLastErrorUtf16, ClearLastError) को उजागर करता है।

    त्वरित प्रारंभ (32-बिट लक्ष्य)

    यह बताने के लिए कि ये सभी कैसे काम करते हैं, हम मान लेंगे कि लक्ष्य प्रक्रिया 32-बिट (WoW64) CPU आर्किटेक्चर के लिए संकलित है।

    1) frida-clr x86 बनाना

    • x86 लक्ष्य प्रक्रिया में इंजेक्ट करने के लिए आपको एक x86 Frida.dll चाहिए।
    • उदाहरण कमांड (विजुअल स्टूडियो डेवलपर कमांड प्रॉम्प्ट से):
    root@kitploit:~
    cd C:\path\to\frida-clr
    configure.bat --prefix="%CD%\dist-x86" --build=windows-x86-md
    
    cd build
    
    make.bat
    
    make.bat install
    

    पुष्टि करें कि आपके पास:

    • dist-x86\bin\Frida.dll (PE32)

    2) InjectorCli (x86) बनाना

    • आपको विजुअल स्टूडियो में InjectorCli.sln खोलना होगा, और बिल्ड लक्ष्य को Release | x86 पर सेट करना होगा।

    • या डेवलपर कमांड प्रॉम्प्ट से:

    root@kitploit:~
    msbuild \InjectorCli\InjectorCli.sln /p:Configuration=Release /p:Platform=x86
    
    • यदि आपका Frida.dll dist-x86\bin\Frida.dll पर नहीं है, तो InjectorCli.csproj में संदर्भ को तदनुसार अपडेट करें।

    3) (वैकल्पिक) ManagedHookHostProj (x86) बनाना

    • आपको विजुअल स्टूडियो में ManagedHookHostProj.sln खोलना होगा, और बिल्ड लक्ष्य को Release | x86 पर सेट करना होगा।

    • या डेवलपर कमांड प्रॉम्प्ट से:

    root@kitploit:~
    msbuild \ManagedHookHostProj\ManagedHookHostProj.sln /p:Configuration=Release /p:Platform=x86
    
    • फिर आप डेवलपर कमांड प्रॉम्प्ट में निम्नलिखित कमांड चलाकर निर्यात सत्यापित कर सकते हैं:
    root@kitploit:~
    dumpbin /exports examples\ManagedHookHostProj\bin\Release\ManagedHookHostProj.dll
    

    नोट: x86 + StdCall पर आप सजावटी निर्यात नाम देख सकते हैं (जैसे _ResolveMethod@16)। दिए गए एजेंट स्क्रिप्ट में एक फॉलबैक शामिल है जो सजावटी नामों का पता लगाता है।

    4) चलाएँ: मूल ट्रेसिंग (प्रबंधित सहायक की आवश्यकता नहीं)

    • मौजूदा PID से संलग्न करें:
    root@kitploit:~
    FridaClrInjector.exe --pid 1234 --script hooks\hook_createfilew.js
    
    • स्पॉन निलंबित करें, इंजेक्ट करें, फिर से शुरू करें:
    root@kitploit:~
    FridaClrInjector.exe --spawn "C:\Windows\SysWOW64\notepad.exe" --script hooks\hook_messagebox.js
    

    5) चलाएँ: प्रबंधित विधि समाधान + ट्रेसिंग (हेल्पर DLL का उपयोग करता है)

    • आपको पहले hook_managed.js को संपादित करना चाहिए, और सेट करना चाहिए:

      • helperDllPath को बिल्ट ManagedHookHostProj.dll पर।
      • targetAssemblyPath, targetTypeName, targetMethodName, paramSig.
    • फिर चलाएँ:

    root@kitploit:~
    FridaClrInjector.exe --pid 1234 --script "C:\path\to\hook_managed.js"
    

    सीमाएँ

    • इनलाइनिंग: छोटी विधियाँ Release बिल्ड में इनलाइन हो सकती हैं, और आपका हुक ट्रिगर नहीं होगा।
    • ओवरलोड: सही ओवरलोड चुनने के लिए paramSig का उपयोग करें, अन्यथा आप गलत को हुक कर सकते हैं।
    • बिटनेस मेल खाना चाहिए: x86 लक्ष्य के लिए x86 इंजेक्टर + x86 Frida.dll + x86 हेल्पर DLL आवश्यक है।
    • रॉ प्रबंधित संदर्भ नाजुक हैं: लीगेसी हेल्पर निर्यात (MakeString/Box*/DescribeObject) को केवल संगतता-मात्र माना जाना चाहिए।

    अधिक दस्तावेज़ीकरण

    • इंजेक्टर दस्तावेज़:

      • Injector README
      • यह कैसे काम करता है
      • समस्या निवारण
    • हेल्पर DLL दस्तावेज़:

      • Helper DLL README
      • यह कैसे काम करता है
      • समस्या निवारण
    • उदाहरण परीक्षण लक्ष्य दस्तावेज़:

      • TestTarget32 README
      • परीक्षण मामले चलाना
    टूल डाउनलोड करें