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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
NimShellcodeFluctuation — ShellcodeFluctuation PoC ported to Nim | Kitploit
उपकरण/GitHubGitHub/s3cur3th1ssh1t/nimshellcodefluctuation
ShellcodePost-ExploitationRed TeamingPayload DevelopmentAdversarial Attack
GitHubs3cur3th1ssh1t/nimshellcodefluctuation

NimShellcodeFluctuation

ShellcodeFluctuation PoC ported to Nim

रिपॉजिटरी देखें

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
7783 साल पहलेKitploit द्वारा समीक्षित

NimShellcodeFluctuation

मूल रेपो का Nim पोर्ट: https://github.com/mgeeky/ShellcodeFluctuation सभी टिप्पणियाँ मूल रेपो से ज्यों की त्यों कॉपी पेस्ट की गईं, क्योंकि उन्होंने वास्तव में मुझे इस तकनीक को समझने में मदद की। तकनीक के बारे में अधिक जानकारी के लिए मैं दृढ़ता से मूल रेपो की README पढ़ने की सलाह देता हूँ!

निर्भरताएँ इंस्टॉल करें:

root@kitploit:~
nimble install winim ptr_math

मैं इस तथ्य से पूरी तरह अवगत हूँ कि यह मेमोरी एन्क्रिप्शन तकनीक OpSec के मामले में सर्वोत्तम नहीं है। यह केवल उन्हीं क्षेत्रों को एन्क्रिप्ट करेगी जो इसके लिए परिभाषित किए गए हैं। इसलिए उदाहरण के लिए, C2-Implant में, Sleep पर सभी नए निष्पादित मॉड्यूल मेमोरी पते एन्क्रिप्ट नहीं होंगे। Heap-आधारित डिटेक्शन (जैसे Cobalt-Strike कॉन्फ़िग के लिए) के लिए आपको यहाँ Heap एन्क्रिप्शन जोड़ने की आवश्यकता होगी।

फिर भी, यह मेमोरी एन्क्रिप्शन तकनीक Sleep पर मुख्य C2-Implant के लिए स्वचालित मेमोरी स्कैनर डिटेक्शन से बचने के लिए पूरी तरह से उपयोग की जा सकती है। मैंने Covenant और एक कस्टमाइज़्ड स्टेजलेस Payload के साथ PoC का सफलतापूर्वक परीक्षण किया है इस तरह।

इस पोर्ट में एन्क्रिप्शन/डिक्रिप्शन कुंजी, Shellcode पता और सुरक्षा (RW) जैसे अधिक मानों को मैन्युअल रूप से परिभाषित करना होता है। मूल रेपो में Shellcode कॉलर-पता स्वचालित रूप से प्राप्त किया गया था।

Example.nim फ़ाइल में आरंभ करने के लिए आवश्यक सब कुछ मौजूद है। बेशक, C2-Shellcode का उपयोग करते समय आपको स्वयं Sleep को कॉल करने की आवश्यकता नहीं है (यह केवल PoC के लिए सब कुछ ट्रिगर करने हेतु है), यह आपके C2 द्वारा ही किया जाना चाहिए। फिलहाल यह केवल उन C2-फ्रेमवर्क के साथ संगत है जो Win32 Sleep फ़ंक्शन का उपयोग करते हैं, लेकिन यदि आप किसी अन्य फ़ंक्शन के लिए Hook संशोधित करते हैं तो यह उसी तरह काम करेगा।

root@kitploit:~

import winim
import Fluctuation

echo "Trying to hook Sleep"

if (hookSleep()):
    echo "Hooked Sleep successfully!"
    
    type
      PocArray = array[12, byte]
    let names: PocArray = [byte 0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA]
    g_fluctuationData.shellcodeAddr = unsafeAddr names[0]
    echo "Shellcode address:"
    echo repr(g_fluctuationData.shellcodeAddr)
    g_fluctuationData.shellcodeSize = size_t(len(names))
    echo "Shellcode Size:"
    echo repr(g_fluctuationData.shellcodeSize)
    when defined(amd64):
        g_fluctuationData.encodeKey = 0xDEADB33f
    when defined(i386):
        g_fluctuationData.encodeKey = 0xDEAD
    g_fluctuationData.currentlyEncrypted = false
    g_fluctuationData.protect = PAGE_READWRITE
    g_fluctuate = FluctuateToRW
    
    echo "Calling Sleep"
    Sleep(2500)
    echo "Everything went fine and as expected"
else:
    echo "Failed to hook Sleep"
    quit(1)

एन्क्रिप्शन PoC का परीक्षण उदाहरण के लिए इस प्रकार किया जा सकता है:

root@kitploit:~
nim c --debuginfo --linedir:on Example.nim

डीबगर के साथ शुरू करें:

root@kitploit:~
gdb Example.exe

Sleep से पहले और बाद में ब्रेकपॉइंट सेट करें:

root@kitploit:~
# Before encryption
break Example.nim:31
# After encryption
break Fluctuation.nim:98
# Original value restored
break Example.nim:33

उसके बाद प्रत्येक ब्रेकपॉइंट के लिए Shellcode-पते का मान इस प्रकार जाँचें:

सत्यापित करें

ज्ञात समस्याएँ/कार्य

NA पर Fluctuation अभी तक काम नहीं करता, क्योंकि मेरे परीक्षण में Vectored Exception Handler कभी ट्रिगर नहीं हुआ, बल्कि एप्लिकेशन क्रैश हो गया। भविष्य में कुछ और परीक्षण/समस्या निवारण करना होगा। बेझिझक स्वयं परीक्षण करें! :-)

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