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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
DbgNexum — Windows Debugging API का उपयोग करके Shellcode इंजेक्शन | Kitploit
उपकरण/GitHubGitHub/dis0rder0x00/dbgnexum
पेलोड जनरेशनशोषणशेलकोडपोस्ट-शोषणपेनिट्रेशन टेस्टिंगरेड टीमिंगशेलकोड जनरेशनपेलोड डेवलपमेंटबाइनरी शोषण
GitHubdis0rder0x00/dbgnexum

DbgNexum

Windows Debugging API का उपयोग करके Shellcode इंजेक्शन

18339468 महीने पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
रिपॉजिटरी देखें
साझा करें

DbgNexum - शेलकोड इंजेक्शन

DbgNexum विंडोज डीबगिंग API और शेयर्ड मेमोरी (फ़ाइल मैपिंग) का उपयोग करके शेलकोड इंजेक्ट करने के लिए एक प्रूफ-ऑफ-कॉन्सेप्ट है। यह सीधे रिमोट मेमोरी को लिखने और पढ़ने से बचता है; इसके बजाय, यह टारगेट प्रोसेस को पेलोड को स्वयं लोड करने और निष्पादित करने के लिए बाध्य करने हेतु कॉन्टेक्स्ट मैनिपुलेशन का उपयोग करता है।

अवलोकन

इंजेक्टर एक टारगेट प्रोसेस से अटैच होता है और एक सस्पेंडेड थ्रेड बनाता है। डीबग लूप के माध्यम से, यह एक विशिष्ट रिटर्न एड्रेस पर निष्पादन को रोकने के लिए हार्डवेयर ब्रेकपॉइंट सेट करता है। प्रत्येक ट्रैप पर, इंजेक्टर फ़ंक्शन कॉल्स की नकल करने के लिए CPU रजिस्टरों को संशोधित करता है, जिससे टारगेट प्रोसेस के अंदर Windows API फ़ंक्शन कॉल्स का एक क्रम व्यवस्थित होता है।

इस README को लिखने के समय, मैंने इस तकनीक का परीक्षण MDE और Elastic के विरुद्ध किया, और इनमें से किसी ने भी इसका पता नहीं लगाया।

मुख्य विशेषताएँ

  • WriteProcessMemory / VirtualAllocEx का उपयोग नहीं: पेलोड को CreateFileMapping और MapViewOfFile के माध्यम से स्थानांतरित किया जाता है।
  • ReadProcessMemory का उपयोग नहीं: यह दृष्टिकोण थ्रेड कॉन्टेक्स्ट से सभी महत्वपूर्ण जानकारी प्राप्त करता है।

उपयोग

यह PoC एक XORed msfvenom शेलकोड का उपयोग करता है जो "calc.exe" चलाता है। लेकिन कृपया अपना स्वयं का शेलकोड उपयोग करें!

  1. अपना शेलकोड (और XOR कुंजी) shellcode.h में शामिल करें।
  2. टारगेट की प्रोसेस आईडी (PID) खोजें।
  3. इंजेक्टर चलाएँ:
root@kitploit:~
DbgNexum.exe <PID>

उदाहरण आउटपुट:

root@kitploit:~
[i] Section 'MZ' created and shellcode copied
[+] Bait thread created. Setting HWBP on FileTimeToSystemTime
[i] Execution Redirected:
|-> [0] Preparation & anchoring stack
|-> [1] Setting HWBP & buffer alloc
|-> [2] Copying File-Mapping name
|-> [3] Zeroing stack slot
|-> [4] Opening handle to named file mapping
|-> [5] Mapping payload into mem. with exec. perm.
|-> [6] Cleanup & shellcode execution
[+] Successfully detached from process 19256
[i] Orchestration complete.

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

निष्पादन प्रवाह इंजेक्टर के डीबग लूप और टारगेट प्रोसेस के बीच लगातार आगे-पीछे चलता रहता है।

इंजेक्शन के चरण

DebugLoop फ़ंक्शन में मुख्य इंजेक्शन लॉजिक होता है और यह "स्टेट मशीन" का संचालन करता है:

0. तैयारी:

  • इंजेक्टर प्रत्येक चरण के लिए पुनः उपयोग हेतु वर्तमान स्टैक पॉइंटर को सहेजता है।
  • एंकर किए गए स्टैक का रिटर्न एड्रेस प्राप्त करने के लिए, हम ट्रैप फ्लैग सेट करते हैं और निष्पादन को तात्कालिक ret कॉल पर सेट करते हैं।

1. मेमोरी आवंटन:

  • किसी कॉल किए गए फ़ंक्शन के लौटने पर सूचित होने के लिए एंकर किए गए स्टैक के रिटर्न एड्रेस पर HWBP सेट करें।
  • एक छोटा बफर आवंटित करने के लिए (स्वाभाविक रूप से) थ्रेड को LocalAlloc कॉल करने हेतु तैयार करें और बाध्य करें।

2. डेटा सेटअप:

  • पहले आवंटित बफर में स्ट्रिंग MZ की प्रतिलिपि बनाने के लिए थ्रेड को memcpy कॉल करने हेतु तैयार करें और बाध्य करें।

3. स्टैक तैयारी:

  • स्टैक स्लॉट को शून्य करने के लिए थ्रेड को memset कॉल करने के लिए बाध्य करें। यह चरण 5 की तैयारी है, जो MapViewOfFile को कॉल करेगा। चूंकि फ़ंक्शन 4 से अधिक आर्ग्युमेंट्स का उपयोग करेगा, इसलिए 5वाँ आर्ग्युमेंट स्टैक के माध्यम से पास किया जाता है (जिसे हम यहाँ सेट करते हैं)।

4. मैपिंग खोलें:

  • चरण 2 और 3 में "बनाए गए" MZ नाम का उपयोग करके थ्रेड को OpenFileMappingA कॉल करने के लिए बाध्य करें।

5. पेलोड मैप करें:

  • टारगेट को MapViewOfFile कॉल करने के लिए बाध्य करता है। यह शेयर्ड मेमोरी सेक्शन (जिसमें शेलकोड होता है) को EXECUTE अनुमतियों के साथ टारगेट के एड्रेस स्पेस में मैप करता है।

6. निष्पादन:

  • MapViewOfFile द्वारा लौटाए गए एड्रेस पर RIP को पुनर्निर्देशित करता है।
  • डीबग रजिस्टरों को साफ़ करता है और डिटैच हो जाता है।
टूल डाउनलोड करें