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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
InlineExecute-Assembly — Cobalt Strike BOF, इन-प्रोसेस .NET असेंबली निष्पादन के लिए, जिसमें AMSI/ETW बाईपास, कस्टम AppDomain, और नामित पाइप/मेलस्लॉट आउटपुट रीडायरेक्शन शामिल है। | Kitploit
उपकरण/GitHubGitHub/anthemtotheego/inlineexecute-assembly
पोस्ट-शोषणरेड टीमिंग
GitHubanthemtotheego/inlineexecute-assembly

InlineExecute-Assembly

Cobalt Strike BOF, इन-प्रोसेस .NET असेंबली निष्पादन के लिए, जिसमें AMSI/ETW बाईपास, कस्टम AppDomain, और नामित पाइप/मेलस्लॉट आउटपुट रीडायरेक्शन शामिल है।

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

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

सभी देखें →

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

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

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

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

InlineExecute-Assembly

InlineExecute-Assembly एक प्रूफ ऑफ कॉन्सेप्ट बीकन ऑब्जेक्ट फ़ाइल (BOF) है जो सुरक्षा पेशेवरों को प्रक्रिया में .NET असेंबली निष्पादन करने की अनुमति देता है, जो कोबाल्ट स्ट्राइक के पारंपरिक फोर्क और रन execute-assembly मॉड्यूल के विकल्प के रूप में काम करता है। InlineExecute-Assembly Main(string[] args) या Main() एंट्री पॉइंट वाली किसी भी असेंबली को निष्पादित करेगा। इससे आप अधिकांश जारी किए गए टूलिंग को बिना किसी पूर्व संशोधन के चला सकते हैं।

BOF स्वचालित रूप से यह निर्धारित करेगा कि आपकी असेंबली (v2.0.50727 या v4.0.30319) के लिए प्रक्रिया में कौन सा कॉमन लैंग्वेज रनटाइम (CLR) लोड करने की आवश्यकता है, और अधिकांश मामलों में, यदि कोई समस्या आती है तो यह सही ढंग से बाहर निकल जाना चाहिए। BOF कई फ्लैग का भी समर्थन करता है जो ऑपरेटर को .NET निष्पादन से पहले कई व्यवहार निर्धारित करने की अनुमति देते हैं, जिनमें शामिल हैं: मेमोरी पैचिंग के माध्यम से AMSI को अक्षम करना, मेमोरी पैचिंग के माध्यम से ETW को अक्षम और पुनर्स्थापित करना, बनाए जाने वाले CLR App Domain नाम का अनुकूलन, क्या आपकी असेंबली के कंसोल आउटपुट को नेम्ड पाइप या मेलस्लॉट पर निर्देशित करना है या नहीं, और ऑपरेटर को डिफ़ॉल्ट एंट्री पॉइंट Main(string[] args) को Main() पर स्विच करने की अनुमति देता है। उपयोग, उपयोग के मामलों और संभावित डिटेक्शन पर अधिक विवरण नीचे और https://securityintelligence.com/posts/net-execution-inlineexecute-assembly/ पर पाया जा सकता है।

अंत में, हमारे .NET असेंबली को हमारे बीकन इम्प्लांट के समान प्रक्रिया में निष्पादित करने का लाभ यह है कि हम Cobalt Strike के execute-assembly मॉड्यूल के डिफ़ॉल्ट व्यवहार से बचते हैं, जो CLR/.NET असेंबली को लोड/इंजेक्ट करने के लिए एक नई प्रक्रिया बनाता है। हालांकि, अन्य ऑप्सेक विचार अभी भी मौजूद हैं, उदाहरण के लिए, क्या जिस प्रक्रिया में हम निष्पादित कर रहे हैं वह सामान्य रूप से CLR लोड करती है या क्या हम जो .NET असेंबली निष्पादित कर रहे हैं उसके कोई ज्ञात सिग्नेचर हैं? इसलिए, नुकसान यह है कि यदि कुछ पकड़ा जाता है और मार दिया जाता है, उदाहरण के लिए AMSI द्वारा, तो आपका बीकन भी मारा जाता है।

विषय संदर्भ

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

  • HostingCLR - यहाँ - CLR/असेंबली निष्पादन तर्क
  • Dotnet-Loader-Shellcode - (@modexpblog द्वारा) - यहाँ - C में .NET निष्पादित करने के लिए COM इंटरफेस सहित सर्वांगीण उत्कृष्ट शोध -> असली MVP
  • Donut - (@TheRealWover और @modexpblog द्वारा) - यहाँ - COM इंटरफेस हेडर
  • Memory Patching AMSI Bypass - (@_RastaMouse द्वारा) - यहाँ - AMSI मेमोरी पैचिंग शोध
  • Metasploit-Execute-Assembly - (@b4rtik द्वारा) - यहाँ - संशोधित AMSI पैचिंग और .NET संस्करण खोजने के लिए फ़ंक्शन का उपयोग
  • ExecuteAssembly - (@med0x2e द्वारा) - यहाँ - संशोधित एग्रेसर स्क्रिप्ट
  • Hiding Your .NET ETW - (@xpn द्वारा) - यहाँ - उत्कृष्ट ETW शोध
  • ETW BOF - (@ajpc500 द्वारा) - यहाँ - संशोधित ETW पैचिंग
  • ExecuteAssembly_Mailslot - (@N4k3dTurtl3 द्वारा) - यहाँ - कंसोल रीडायरेक्शन के लिए मेलस्लॉट का उपयोग (संशोधित)
  • @freefirex2 - BOF के आंतरिक कार्य और चेतावनियाँ साझा करने के लिए पर्याप्त दयालु थे।

आरंभ करना

  1. inlineExecute-Assembly फ़ोल्डर को उसकी सभी सामग्री सहित उस सिस्टम पर कॉपी करें जिससे आप Cobalt Strike GUI एप्लिकेशन के माध्यम से कनेक्ट करने की योजना बना रहे हैं।
  2. inlineExecute-Assembly.cna एग्रेसर स्क्रिप्ट लोड करें
  3. अधिकांश बुनियादी निष्पादन के लिए inlineExecute-Assembly --dotnetassembly /path/to/assembly.exe चलाएँ (विशिष्ट फ्लैग उदाहरणों के लिए नीचे उपयोग के मामले देखें)

स्वयं बनाएँ

src निर्देशिका के अंदर x64 नेटिव टूल्स कमांड प्रॉम्प्ट फ़ॉर VS 2019 के माध्यम से नीचे दिए गए कमांड को चलाएँ:

cl.exe /c inlineExecute-Assembly.c /GS- /FoinlineExecute-Assemblyx64.o

src निर्देशिका के अंदर x86 नेटिव टूल्स कमांड प्रॉम्प्ट फ़ॉर VS 2019 के माध्यम से नीचे दिए गए कमांड को चलाएँ:

cl.exe /c inlineExecute-Assembly.c /GS- /FoinlineExecute-Assemblyx86.o

फ्लैग

--dotnetassembly        आपकी असेंबली का निर्देशिका पथ **आवश्यक**
--assemblyargs          पास करने के लिए असेंबली आर्गुमेंट
--appdomain             भेजे गए AppDomain का डिफ़ॉल्ट नाम बदलें (डिफ़ॉल्ट मान totesLegit है और इसे शामिल एग्रेसर स्क्रिप्ट द्वारा सेट किया गया है) *डोमेन हमेशा अनलोड होता है*
--amsi                  मेमोरी पैचिंग के माध्यम से AMSI को अक्षम करने का प्रयास करता है (यदि सफल रहा, तो AMSI प्रक्रिया के पूरे जीवन के लिए अक्षम रहेगा)
--etw                   मेमोरी पैचिंग के माध्यम से ETW को अक्षम करने का प्रयास करता है (यदि सफल रहा, तो ETW प्रक्रिया के पूरे जीवन के लिए अक्षम रहेगा जब तक कि वापस न लाया जाए)
--revertetw             मेमोरी पैचिंग के माध्यम से ETW को अक्षम करने का प्रयास करता है और फिर इसे मूल स्थिति में वापस पैच करता है
--pipe                  नेम्ड पाइप का डिफ़ॉल्ट नाम बदलें (डिफ़ॉल्ट मान totesLegit है और इसे शामिल एग्रेसर स्क्रिप्ट द्वारा सेट किया गया है)
--mailslot              कंसोल आउटपुट को रीडायरेक्ट करने के लिए मेलस्लॉट का उपयोग करने के लिए स्विच करता है। मेलस्लॉट का डिफ़ॉल्ट नाम बदलता है (यदि खाली छोड़ा जाता है, तो डिफ़ॉल्ट मान totesLegit है और इसे शामिल एग्रेसर स्क्रिप्ट द्वारा सेट किया गया है)
--main                  एंट्री पॉइंट को Main() में बदलता है (डिफ़ॉल्ट मान Main(string[] args) है)

उपयोग के मामले

.NET असेंबली निष्पादित करें

सिंटैक्स

beacon> inlineExecute-Assembly --dotnetassembly /root/Desktop/Seatbelt.exe

उपयोग के मामले

.NET असेंबली को तर्कों के साथ निष्पादित करें

सिंटैक्स

beacon> inlineExecute-Assembly --dotnetassembly /root/Desktop/Seatbelt.exe --assemblyargs AntiVirus AppLocker

उपयोग के मामले

.NET असेंबली को तर्कों के साथ निष्पादित करें और AMSI अक्षम करें

सिंटैक्स

beacon> inlineExecute-Assembly --dotnetassembly /root/Desktop/Seatbelt.exe --assemblyargs AntiVirus AppLocker --amsi

उपयोग के मामले

.NET असेंबली को तर्कों के साथ निष्पादित करें और ETW अक्षम करें

सिंटैक्स

beacon> inlineExecute-Assembly --dotnetassembly /root/Desktop/Seatbelt.exe --assemblyargs AntiVirus AppLocker --etw

उपयोग के मामले

.NET असेंबली को तर्कों के साथ निष्पादित करें और आउटपुट को डिफ़ॉल्ट नेम्ड पाइप के बजाय मेलस्लॉट के माध्यम से रीडायरेक्ट करें

सिंटैक्स

beacon> inlineExecute-Assembly --dotnetassembly /root/Desktop/Seatbelt.exe --mailslot

उपयोग के मामले

.NET असेंबली को तर्कों के साथ निष्पादित करें और एग्रेसर स्क्रिप्ट में सेट डिफ़ॉल्ट नेम्ड पाइप नाम बदलें

सिंटैक्स

beacon> inlineExecute-Assembly --dotnetassembly /root/Desktop/Seatbelt.exe --pipe forRealLegit

उपयोग के मामले

.NET असेंबली निष्पादित करें और एग्रेसर स्क्रिप्ट में सेट डिफ़ॉल्ट एप डोमेन बदलें

सिंटैक्स

beacon> inlineExecute-Assembly --dotnetassembly /root/Desktop/Seatbelt.exe --appdomain forRealLegit

उपयोग के मामले

.NET असेंबली को Main() एंट्री पॉइंट के साथ निष्पादित करें, डिफ़ॉल्ट Main(string[] args) के बजाय

सिंटैक्स

beacon> inlineExecute-Assembly --dotnetassembly /root/Desktop/simpleMain.exe --main

उपयोग के मामले

पूरी ताकत से काम करें (Go HAM)

सिंटैक्स

beacon> inlineExecute-Assembly --dotnetassembly /root/Desktop/Seatbelt.exe --assemblyargs AntiVirus AppLocker --amsi --etw --appdomain forRealLegit --mailslot forRealLegit
टूल डाउनलोड करें