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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Shinigami — एक गतिशील अनपैकिंग उपकरण | Kitploit
उपकरण/GitHubGitHub/buzzer-re/shinigami
गतिशील विश्लेषण (सैंडबॉक्सिंग)रिवर्स इंजीनियरिंगशेलकोडमालवेयर विश्लेषणबाइनरी विश्लेषण
GitHubbuzzer-re/shinigami

Shinigami

एक गतिशील अनपैकिंग उपकरण

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

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

सभी देखें →

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

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

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

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

Shinigami

Build Release

छवि विवरण

Shinigami एक प्रायोगिक उपकरण है जिसे प्रोसेस हॉलोइंग या सामान्य पैकर रूटीन के माध्यम से इंजेक्ट किए गए मैलवेयर इम्प्लांट्स का पता लगाने और अनपैक करने के लिए डिज़ाइन किया गया है।

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

यह उपकरण प्रोसेस हॉलोइंग से संबंधित NT फ़ंक्शनों को हुक करके और नई निष्पादन योग्य मेमोरी पेजों को पेज गार्ड बिट के साथ चिह्नित करके काम करता है। यह तकनीक Shinigami को अप्रत्यक्ष प्रवाह परिवर्तनों का पता लगाने की अनुमति देती है, जो आमतौर पर शेलकोड या अनपैक किए गए कोड के कारण होते हैं, जो अक्सर मैलवेयर का संकेत होते हैं। Shinigami लक्षित निष्पादन योग्य को निलंबित अवस्था में बनाता है और "Ichigo" नामक एक DLL लाइब्रेरी इंजेक्ट करता है। यह लाइब्रेरी स्वचालित रूप से इम्प्लांट का पता लगाने और निकालने के लिए हर आवश्यक फ़ंक्शन को हुक करती है। एक बार आर्टिफैक्ट पूरी तरह से निकाल लिया जाता है, तो उपकरण प्रक्रिया को समाप्त कर देता है।

Shinigami की प्रभावशीलता उस विशेष मैलवेयर के आधार पर भिन्न हो सकती है जिसे वह लक्षित कर रहा है। हालाँकि, यह किसी भी मैलवेयर विश्लेषण टूलकिट के लिए एक मूल्यवान अतिरिक्त है और प्रोसेस हॉलोइंग या सामान्य पैकर रूटीन का उपयोग करने वाले मैलवेयर का पता लगाने और विश्लेषण करने में उपयोगी साबित हो सकता है।

महत्वपूर्ण: यह एक डायनामिक अनपैकिंग उपकरण है और इसे आपके व्यक्तिगत मशीन या स्टैटिक विश्लेषण प्रयोगशाला में नहीं चलाया जाना चाहिए

वर्तमान अनपैक विधियाँ

Process Hollowing

प्रोसेस हॉलोइंग का उपयोग करके इंजेक्ट किए गए इम्प्लांट्स को निकालने के लिए Shinigami की मुख्य विधि में दो NT फ़ंक्शनों को हुक करना शामिल है: NtResumeThread और NtWriteVirtualMemory। यह इस प्रकार काम करता है:

  • NtResumeThread हुक

    • Shinigami पहले से आवंटित सभी मेमोरी को NtAllocateVirtualMemory के माध्यम से खोजता है ताकि यह जाँच सके कि उसमें DOS हेडर सिग्नेचर है या नहीं। यदि मिल जाता है, तो यह रिमोट PE फ़ाइल को निकालता है, उसे सेक्शन संरेखित करने के लिए पैच करता है, और इसे filename_dumped.bin प्रारूप के साथ डिस्क पर सहेजता है।
  • NtWriteVirtualMemory हुक

    • Shinigami NtWriteVirtualMemory को हुक करके पता लगाता है कि निष्पादन योग्य रिमोट प्रक्रिया में PE फ़ाइल लिखने की कोशिश कर रहा है या नहीं। यदि कोई PE फ़ाइल मिलती है, तो उसे Buffer पॉइंटर का उपयोग करके निकाला जाता है और डिस्क पर filename_before_written.bin के रूप में सहेजा जाता है, यह विकल्प केवल तभी उपयोग किया जाता है जब --stop-at-write फ्लैग पास किया गया हो।

जेनेरिक अनपैकर

Shinigami का जेनेरिक अनपैकर मॉड्यूल नई आवंटित मेमोरी क्षेत्रों को PAGE_GUARD बिट के साथ चिह्नित करता है, यह बिट तब भी लागू करता है जब किसी मौजूदा मेमोरी क्षेत्र की सुरक्षा को किसी निष्पादन योग्य चीज़ से बदल दिया गया हो। गार्ड पेजों का उपयोग करके, यह ट्रैक कर सकता है कि किस मेमोरी क्षेत्र का उपयोग कुछ शेलकोड या PE छवियों को आवंटित करने के लिए किया जाने वाला है।

पहचाने गए प्रत्येक शेलकोड के लिए, Shinigami कच्चे शेलकोड को डिस्क पर सहेजता है। यह PE फ़ाइलों को खोजने के लिए उस मेमोरी क्षेत्र को भी स्कैन करता है और उन्हें भी सहेजता है। Shinigami प्रत्येक अलग शेलकोड निष्पादन को एक नए चरण के रूप में मानता है, इसलिए अंत तक, आपकी कार्यशील निर्देशिका में filename_shellcode_STAGENUM.bin or .exe नामक फ़ाइलें होंगी।

उपयोग

उपकरण के पास कुछ विकल्प हैं:

Usage: Shinigami [--help] [--version] [--output VAR] [--stop-at-write] [--verbose] [--only-executables] [--exported VAR] program_name

Positional arguments:
  program_name                  Name of the program to execute

Optional arguments:
  -h, --help                    shows help message and exits
  -v, --version                 prints version information and exits
  -o, --output                  Directory to dump artefacts
  --stop-at-write               Unhollow: Stop the execution when the PE file is being to be written
  --verbose                     Display a verbose output
  -p, --only-executables        Only extract PE artefacts
  -e, --exported                Exported Function: Choose a exported function to execute if the target is a DLL (rundll will be used)

कुछ महत्वपूर्ण विकल्प हैं:

-o, --output: निकाले गए आर्टिफैक्ट्स को डंप करने के लिए निर्देशिका निर्दिष्ट करता है। डिफ़ॉल्ट रूप से, निकाले गए आर्टिफैक्ट्स को वर्तमान कार्यशील निर्देशिका में output नामक निर्देशिका में सहेजा जाएगा। आप इसके पथ को तर्क के रूप में पास करके एक अलग निर्देशिका निर्दिष्ट कर सकते हैं।

--stop-at-write: यह तर्क एक हॉलो किए गए प्रक्रिया को अनपैक करने के दौरान उपयोग किया जाता है। जब Shinigami पता लगाता है कि PE फ़ाइल हॉलो किए गए प्रक्रिया में लिखी जा रही है, तो यह निष्पादन रोक देगा और निकाली गई PE फ़ाइल को सहेज लेगा। यह विकल्प उपयोगी हो सकता है यदि आप पूरी हॉलो किए गए प्रक्रिया को निष्पादित करने से बचना चाहते हैं और केवल अनपैक किए गए कोड को निकालने की आवश्यकता है।

--verbose: एक विस्तृत आउटपुट प्रदर्शित करता है। यह डिबगिंग या Shinigami की आंतरिक कार्यप्रणाली को समझने के लिए उपयोगी हो सकता है।

उदाहरण उपयोग:

Unhollow

Dridex के विरुद्ध परीक्षण

एक्सट्रैक्शन पूरा होने के बाद, प्रक्रिया को समाप्त कर दिया जाता है और आपके पास (मुझे उम्मीद है) निकाली गई PE होगी:

डंप किया गया इम्प्लांट

पहचाना गया इम्प्लांट पहचान विधियों अनुभाग में वर्णित प्रारूप के अनुसार डंप किया जाएगा

अनपैकिंग

यहाँ वर्णित एक रैंडम लोडर को अनपैक करना

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

Emotet

Emotet DLL को अनपैक करना

Shinigami के पास DLL समर्थन और अलग किए गए DOS हेडर का उपयोग करके इंजेक्ट किए गए बाइनरी को पुनर्निर्मित करने की क्षमता भी है। विशेष रूप से, Emotet जैसे मैलवेयर नमूने इन-मेमोरी PE स्कैनर से बचने के लिए इस तकनीक का उपयोग करते हैं। Shinigami ऐसे लापता हिस्सों (DOS हेडर) का पता लगाता है और उन्हें पुनर्निर्मित करने के लिए ह्यूरिस्टिक्स का उपयोग करता है।

इंस्टॉल करना

अपना पसंदीदा संस्करण Release पृष्ठ से प्राप्त करें।

बिल्डिंग और हैकिंग

यह अद्भुत होगा यदि आप इस परियोजना की मदद करते हैं, इसलिए यदि आप चाहें तो यहाँ निर्भरताएँ और चरण हैं

  • C++ वर्कलोड के साथ Visual Studio >= 2019 इंस्टॉल करें।
  • Zydis इंस्टॉल करें, एक तेज़ और हल्का x86/x86-64 डिसअसेम्बलर, मैं vcpkg विधि का उपयोग करने की सलाह देता हूँ।
    • Zydis का उपयोग यह सुनिश्चित करने के लिए किया जाता है कि API हुकिंग अधिक सटीक हो और कॉपी करते समय कोई ऑपकोड न खोए।
  • Visual Studio में Shinigami.sln समाधान फ़ाइल खोलें और प्रोजेक्ट बनाएं/कोड करें।

कृपया किसी भी बदलाव के लिए एक issue या pull request खोलें जो आप करना चाहते हैं।

निष्कर्ष

यह बढ़िया मस्कट छवि Bleach से प्रेरित थी और Dall-E द्वारा उत्पन्न की गई थी।

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