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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
ExecuteAssembly — Load/Inject .NET असेंबलियों को; होस्ट (spawnto) प्रक्रिया द्वारा लोड किए गए CLR AppDomainManager का पुन: उपयोग करके, Stomping Loader/.NET assembly PE DOS हेडर्स को स्टॉम्प करना, .NET संबंधित मॉड्यूल को अनलिंक करना, ETW+AMSI को बायपास करना, NT स्टैटिक सिसकॉल (x64) के माध्यम से EDR हुक्स से बचना, और APIs (hash) को डायनेमिक रूप से रिजॉल्व करके इम्पोर्ट्स को छिपाना। | Kitploit
उपकरण/GitHubGitHub/med0x2e/executeassembly
विशेषाधिकार वृद्धिस्थायित्व तंत्रशोषणआईडीएस/आईपीएस से बचनापार्श्व आंदोलनशेलकोडपोस्ट-शोषणकमांड एंड कंट्रोलरेड टीमिंग

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

सभी देखें →

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

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

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

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

विवरण

शेलकोड जनरेशन
पेलोड डेवलपमेंट
GitHubmed0x2e/executeassembly

ExecuteAssembly

रिपॉजिटरी देखें
5971135 साल पहलेKitploit द्वारा समीक्षित

Load/Inject .NET असेंबलियों को; होस्ट (spawnto) प्रक्रिया द्वारा लोड किए गए CLR AppDomainManager का पुन: उपयोग करके, Stomping Loader/.NET assembly PE DOS हेडर्स को स्टॉम्प करना, .NET संबंधित मॉड्यूल को अनलिंक करना, ETW+AMSI को बायपास करना, NT स्टैटिक सिसकॉल (x64) के माध्यम से EDR हुक्स से बचना, और APIs (hash) को डायनेमिक रूप से रिजॉल्व करके इम्पोर्ट्स को छिपाना।

साझा करें

विवरण:

ExecuteAssembly, CS execute-assembly का एक विकल्प है, जो C/C++ में निर्मित है और इसका उपयोग .NET असेंबली को लोड/इंजेक्ट करने के लिए किया जा सकता है; होस्ट (spawnto) प्रक्रिया में लोडेड CLR मॉड्यूल/AppDomainManager को पुनः उपयोग करके, लोडर/.NET असेंबली PE DOS हेडर को स्टॉम्प करके, .NET से संबंधित मॉड्यूल को अनलिंक करके, ETW+AMSI को बायपास करके, NT स्टैटिक सिस्कॉल (x64) के माध्यम से EDR हुक से बचकर और superfasthash हैशिंग एल्गोरिथम के माध्यम से API को गतिशील रूप से हल करके इम्पोर्ट को छिपाकर।

TLDR (विशेषताएं):

  • PEB डेटा संरचनाओं से CLR से संबंधित मॉड्यूल अनलिंक करना। (पुष्टि के लिए PH के बजाय MS "ListDLLs" उपयोगिता का उपयोग करें)
  • .NET असेंबली और रिफ्लेक्टिव DLL हेडर स्टॉम्पिंग (MZ बाइट्स, e_lfanew, DOS हेडर, रिच टेक्स्ट, PE हेडर)।
  • EDR हुक को बायपास करने के लिए स्टैटिक हार्डकोडेड सिस्कॉल का उपयोग। (अभी केवल x64 समर्थन, WinXP से Win10 19042 तक)
  • CLR "AppDomain/AppDomainManager" गणना और पुनः उपयोग (ICLRMetaHost->EnumerateLoadedRuntimes), बस spawnto/होस्ट प्रक्रिया को ज्ञात Windows .NET प्रक्रिया पर सेट करें।
  • संबंधित हैश (SuperFastHash) का उपयोग करके WIN32 API का गतिशील समाधान (PEB)।
  • .NET असेंबली लोड करने से पहले AMSI और ETW पैचिंग।
  • लोड/उपयोग करने के लिए CLR संस्करण के लिए .NET असेंबली बाइट्स पार्सिंग और स्कैनिंग।
  • ETW बाईपास के लिए GetProcAddress/LoadLibrary/GetModuleHandle का कोई उपयोग नहीं।
  • v4 COM API और रिफ्लेक्टिव DLL इंजेक्शन का उपयोग करके CLR होस्टिंग

उपयोग:

  • x64(syscalls): यह संस्करण मुख्य रूप से EDR हुक को बायपास करने के लिए स्टैटिक सिस्कॉल के उपयोग पर निर्भर करता है, आप इस संस्करण का उपयोग केवल x64 संस्करण DLL बनाने के लिए कर सकते हैं (अभी केवल x64 समर्थन)।

  • x86|x64(PEB): रनटाइम पर PEB मॉड्यूल EAP तालिकाओं को चलकर और superfasthash हैश के माध्यम से API को हल करके आवश्यक API पतों को गतिशील रूप से प्राप्त करता है। हालाँकि, यह kernel32.dll या ntdll.dll पर रखे गए EDR हुक के लिए जिम्मेदार नहीं है, आप इस संस्करण का उपयोग x86 और x64 दोनों DLL बनाने के लिए या केवल x86 DLL बनाने और x64(syscalls) संस्करण का उपयोग x64 DLL बनाने के लिए कर सकते हैं ताकि सामान्य EDR हुक का ध्यान रखा जा सके।

  • VS2017 और/या Windows SDK 10.0.17134.0 (या संगत sdk संस्करण) का उपयोग करके आवश्यक DLL बनाएं।

  • सुनिश्चित करें कि gzip स्थापित है और निम्नलिखित आर्टिफैक्ट एक ही फ़ोल्डर में रखे गए हैं, फिर aggressor स्क्रिप्ट "ExecuteAssembly.cna" लोड करें:

    • ExecuteAssembly.cna

    • ExecuteAssembly-x64.dll

    • ExecuteAssembly-x86.dll

    • CLI विकल्प:

      --dotnetassembly: लोड/इंजेक्ट करने के लिए .NET असेंबली।

      --assemblyargs: .NET असेंबली तर्क।

      --unlink-modules: PEB डेटा संरचनाओं से CLR/MsCoree से संबंधित DLL जैसे .NET मॉड्यूल को अनलिंक करें।

      --stomp-headers: .NET असेंबली और रिफ्लेक्टिव DLL PE DOS हेडर को स्टॉम्प करें।

      --etw: विंडोज पर इवेंट ट्रेसिंग (ETW) को बायपास करें।

      --amsi: AMSI को बायपास करें।

      --spawnto: spawnto प्रक्रिया चुनें, डिफ़ॉल्ट रूप से निष्पादित होने पर CLR लोड करने वाले .NET बाइनरी की सूची:
            - PresentationHost.exe
            - stordiag.exe                                                               

  • spawnto-list.txt में अतिरिक्त MS बाइनरी जो डिफ़ॉल्ट रूप से CLR लोड करती हैं और spawnto के रूप में सेट करने के लिए अच्छे उम्मीदवार हैं, देखें। (ज्ञात LOLBins से बचें जब तक कि यह डेव की मशीन न हो)

उदाहरण:

  • ExecuteAssembly --dotnetassembly /tmp/Seatbelt.exe --assemblyargs LogonSessions --unlink-modules --stomp-headers --amsi --etw --spawnto PresentationHost.exe

  • ExecuteAssembly --amsi --etw --unlink-modules --stomp-headers --dotnetassembly /tmp/ghostpack/SharPersist.exe --assemblyargs -t reg -c "C:\Windows\SysWow64\mshta.exe C:\Users\admin\Downloads\Test2.hta" -k logonscript -m add --spawnto FileHistory.exe

  • ExecuteAssembly --unlink-modules --stomp-headers --dotnetassembly /tmp/ghostpack/SharPersist.exe --assemblyargs -t reg -k "logonscript" -v "C:\Windows\SysWow64\mshta.exe C:\Users\admin\Downloads\Test.hta" -m remove --spawnto FileHistory.exe

  • ExecuteAssembly --unlink-modules --amsi --dotnetassembly /tmp/ghostpack/SharpWMI.exe --assemblyargs action=query computername=localhost query="select * from win32_service" --spawnto FileHistory.exe

  • ExecuteAssembly --amsi --etw --dotnetassembly /tmp/ghostpack/SharpWMI.exe --assemblyargs action=query query="select * from win32_process" --spawnto PresentationHost.exe

C2 समर्थन:

मुख्य रूप से कोबाल्ट स्ट्राइक पर बनाया और परीक्षण किया गया था, हालाँकि इसे अन्य C2 फ्रेमवर्क (MSF ..etc) के साथ भी इस्तेमाल किया जा सकता है, बस ध्यान रखें कि रिफ्लेक्टिव DLL DLLMAIN एक-लाइनर पेलोड को पैरामीटर (lpReserved) के रूप में निम्नलिखित प्रारूप में (बिना ";" के) अपेक्षा करता है;

  • AMSI_FLAG|ETW_FLAG|STOMPHEADERS_FLAG|UNLINKMODULES_FLAG|LL_FLAG.LENGTH_FLAG.B64_ENCODED_COMPRESSED_PAYLOAD [SPACE SEPARATED ARGUMENTS]
    • AMSI_FLAG: 0|1 (या तो 0 या 1)
    • ETW_FLAG: 0|1
    • STOMPHEADERS_FLAG: 0|1
    • UNLINKMODULES_FLAG: 0|1
    • LENGTH_FLAG: .NET असेंबली का आकार बाइट्स में
    • LL_FLAG: LENGTH_FLAG की लंबाई (बस मेरे साथ सहन करें या दिखावा करें कि आपने यह नहीं पढ़ा)
    • B64_ENCODED_COMPRESSED_PAYLOAD: Gzip संपीड़ित और base64 एन्कोडेड .NET असेंबली।
    • [SPACE SEPARATED ARGUMENTS]: .NET असेंबली तर्क

परीक्षण नोट्स:

  • कोबाल्ट स्ट्राइक 4.x पर बिना किसी मैलेबल प्रोफाइल के परीक्षण किया गया।
  • कोबाल्ट स्ट्राइक 4.x पर निम्नलिखित मैलेबल प्रोफाइल (कई मेमोरी एवेज़न विकल्प सेट (userwx, startrwx ..etc)) के साथ परीक्षण किया गया;
    • https://github.com/threatexpress/malleable-c2/blob/master/jquery-c2.4.0.profile

TODO:

  • RFLL का एक विकल्प, BOF + नामित पाइप्स (लंबी अवधि के कार्यों के बारे में निश्चित नहीं)
  • स्टैटिक सिस्कॉल के लिए x86 समर्थन।
  • किसी भी लटकते पॉइंटर्स या मेम-लीक को ठीक करना और सफाई जो मैंने छोड़ दी :p

ज्ञात समस्याएं:

  • SharpHound v2 और v3 के लिए समर्थन (v2 पहले ठीक काम करता था, यह पता लगाने की आवश्यकता है कि क्या बदला)।
  • .NET असेंबली आकार सीमा ( < 1MB)

क्रेडिट/संदर्भ:

  • https://github.com/stephenfewer/ReflectiveDLLInjection
  • https://github.com/jthuraisamy/SysWhispers
  • https://github.com/etormadiv/HostingCLR
  • https://github.com/outflanknl/TamperETW/
  • https://github.com/LloydLabs/Windows-API-Hashing
  • http://www.rohitab.com/discuss/topic/42077-module-pebldr-hiding-all-4-methods-x64/
  • https://gist.github.com/christophetd/37141ba273b447ff885c323c0a7aff93
टूल डाउनलोड करें

- ScriptRunner.exe

- caitstatic.exe

- Microsoft.Uev.SyncController.exe

- TsWpfWrp.exe

- UevAgentPolicyGenerator.exe

- UevAppMonitor.exe

- FileHistory.exe

- UevTemplateBaselineGenerator.exe

- UevTemplateConfigItemGenerator.exe