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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
vba2clr — Running .NET from VBA | Kitploit
उपकरण/GitHubGitHub/med0x2e/vba2clr
Scripting & AutomationPost-ExploitationRed TeamingPayload DevelopmentAdversarial Attack
GitHubmed0x2e/vba2clr

vba2clr

Running .NET from VBA

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

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

सभी देखें →

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

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

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

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

TLDR:

बस VBA पर CLR (.NET) असेंबलियों को स्थानीय और दूरस्थ रूप से लोड करने के विभिन्न तरीकों के साथ प्रयोग कर रहा हूँ, AccessVBOM (विज़ुअल बेसिक प्रोजेक्ट के लिए प्रोग्रामेटिक एक्सेस विश्वसनीय नहीं है) को दरकिनार करने के बाद AppDomain.ExecuteAssembly या किसी अन्य सुविधाजनक विधि का उपयोग करके।

  • vba2clr.*.vba:
    • AccessVBOM रेजिस्ट्री कुंजी को 1 पर सेट करता है
    • एक Word.Application COM ऑब्जेक्ट को इंस्टैंशिएट करता है। (यह Excel.Application MS PowerPoint, Access आदि हो सकता है)।
    • स्ट्रिंग से मैक्रो जोड़ता है (मैक्रो b64/hex एन्कोडेड ExecuteAssembly.vba के अनुरूप है)
    • wordObj.Application.Run... का उपयोग करके ExecuteAssembly.vba मैक्रो चलाता है

VBA से .NET:

  • ExecuteAssembly.clr.2.0.vba: .NET 3.5 तक

    • आवश्यक mscordlib संदर्भ जोड़ता है
    • आवश्यक ऑब्जेक्ट्स को इंस्टैंशिएट करता है (IDomain, ICRHost)
    • आवश्यक AppDomain.ExecuteAssembly तर्कों को दो अलग-अलग ऐरे (variables, types) में पैक करता है।
    • AppDomain.ExecuteAssembly(Arg1, Arg2) (VFTable ऑफ़सेट 51) को कॉल करने के लिए DispCallFunc का उपयोग करता है, जहाँ Arg1 ".NET Assembly URL" या "Local Path" है और Arg2 रिटर्न वैल्यू है।
    • AppDomain विधियों के VFTable ऑफ़सेट AppDomain IDL _AppDomain.idl पर जाँचे जा सकते हैं, बस ध्यान रखें कि AppDomain इंटरफ़ेस IUnknown इंटरफ़ेस से इनहेरिट करता है, इसलिए फ़ंक्शन/विधियों के VTable ऑफ़सेट तीसरे ऑफ़सेट से शुरू होते हैं, ऐसा इसलिए है क्योंकि IUnknown से इनहेरिट करने वाले इंटरफ़ेस के vtable में पहले 3 एंट्री QueryInterface, AddRef, Release विधियों के लिए सेट होती हैं।
    • फ़ंक्शंस/विधियों के VTable ऑफ़सेट निकालने के लिए WinDbg या IDA को विकल्प के रूप में भी उपयोग किया जा सकता है।
  • ExecuteAssembly.clr.x.vba: .NET 2, 3.5 और 4.x का समर्थन करता है

OPSEC नोट्स:

  • Word.Application (या Excel.Application ..आदि) के लिए COM ऑब्जेक्ट बनाने से मुख्य WinWord.exe प्रक्रिया के बजाय svchost.exe की चाइल्ड प्रक्रिया के रूप में एक अतिरिक्त WinWord.exe स्पॉन होता है।
  • AccessVBOM रजिस्ट्री कुंजी को WScript.Shell का उपयोग करके COM के माध्यम से संशोधित/पुनर्स्थापित किया जाता है, win32 APIs का उपयोग करना एक बेहतर विकल्प हो सकता है।
  • VBA पर win32 APIs का उपयोग करके CLR को होस्ट करना स्पष्ट रूप से AccessVBOM रजिस्ट्री कुंजी को अपडेट करने की तुलना में सुरक्षित है, इसे किसी और दिन के लिए छोड़ दूँगा...
  • अन्य .NET APIs जैसे System.CodeDom.Compiler का उपयोग VBA से c# कोड को कंपाइल/निष्पादित करने के लिए किया जा सकता है, नीचे संदर्भ देखें;

संदर्भ:

  • https://github.com/jet2jet/vb2clr
  • https://github.com/med0x2e/NET-Assembly-Inject-Remote
टूल डाउनलोड करें