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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Shhhloader — Syscall Shellcode Loader (कार्य प्रगति पर) | Kitploit
उपकरण/GitHubGitHub/icyguider/shhhloader
शेलकोड
GitHubicyguider/shhhloader

Shhhloader

Syscall Shellcode Loader (कार्य प्रगति पर)

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

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

सभी देखें →

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

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

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

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

Shhhloader

Shhhloader एक कार्य प्रगति पर शेलकोड लोडर है। यह रॉ शेलकोड को इनपुट के रूप में लेता है और एक C++ स्टब संकलित करता है जो AV/EDR को बायपास करने के लिए कई अलग-अलग चीजें करता है। शामिल पायथन बिल्डर किसी भी Linux सिस्टम पर काम करेगा जिसमें Mingw-w64 स्थापित हो।

1/25/24 संपादन: Shhhloader अब PoolParty वैरिएंट 7 का समर्थन करता है! एक विकल्प भी जोड़ा गया है जो PoolParty को Module Stomping के साथ जोड़ता है ताकि निष्पादित शेलकोड को अनबैक्ड मेमोरी में रहने से रोका जा सके। डिफेंडर ATP के खिलाफ इस नई इंजेक्शन विधि का प्रदर्शन करने वाला एक वीडियो नीचे देखें:

वीडियो देखें
root@kitploit:~
┳┻|
┻┳|
┳┻|
┻┳|
┳┻| _
┻┳| •.•)  - श्श्श्श, AV हमें सुन सकता है! 
┳┻|⊂ノ   
┻┳|
usage: Shhhloader.py [-h] [-p explorer.exe] [-m QueueUserAPC] [-u] [-w] [-nr] [-ns] [-l] [-v] [-sc GetSyscallStub] [-d] [-dp apphelp.dll] [-s domain]
                     [-sa testlab.local] [-o a.exe] [-pp explorer.exe] [-ppv] [-np] [-cp] [-td ntdll.dll] [-ef NtClose]
                     file

ICYGUIDER'S CUSTOM SYSCALL SHELLCODE LOADER

positional arguments:
  file                  File containing raw shellcode

options:
  -h, --help            show this help message and exit
  -p explorer.exe, --process explorer.exe
                        Process to inject into (Default: explorer.exe)
  -m QueueUserAPC, --method QueueUserAPC
                        Method for shellcode execution (Options: PoolPartyModuleStomping, PoolParty, ThreadlessInject, ModuleStomping, QueueUserAPC,
                        ProcessHollow, EnumDisplayMonitors, RemoteThreadContext, RemoteThreadSuspended, CurrentThread) (Default: QueueUserAPC)
  -u, --unhook          Unhook NTDLL in current process
  -w, --word-encode     Save shellcode in stub as array of English words
  -nr, --no-randomize   Disable syscall name randomization
  -ns, --no-sandbox     Disable sandbox checks
  -l, --llvm-obfuscator
                        Use Obfuscator-LLVM to compile stub
  -v, --verbose         Enable debugging messages upon execution
  -sc GetSyscallStub, --syscall GetSyscallStub
                        Syscall execution method (Options: SysWhispers2, SysWhispers3, GetSyscallStub, None) (Default: GetSyscallStub)
  -d, --dll             Generate a DLL instead of EXE
  -dp apphelp.dll, --dll-proxy apphelp.dll
                        Create Proxy DLL using supplied legitimate DLL (File must exist in current dir)
  -s domain, --sandbox domain
                        Sandbox evasion technique (Options: sleep, domain, hostname, username, dll) (Default: sleep)
  -sa testlab.local, --sandbox-arg testlab.local
                        Argument for sandbox evasion technique (Ex: WIN10CO-DESKTOP, testlab.local)
  -o a.exe, --outfile a.exe
                        Name of compiled file

PPID Spoofing:
  -pp explorer.exe, --ppid explorer.exe
                        Parent process to use for PPID Spoofing (Default: explorer.exe)
  -ppv, --ppid-priv     Enable spoofing for privileged parent process (Disabled by default)
  -np, --no-ppid-spoof  Disable PPID spoofing

ThreadlessInject:
  -cp, --create-process
                        Create process instead of injecting into existing one
  -td ntdll.dll, --target-dll ntdll.dll
                        Target DLL containing export function to overwrite
  -ef NtClose, --export-function NtClose
                        Export function to overwrite

विशेषताएं:

  • 10 अलग-अलग शेलकोड निष्पादन विधियां (PoolParty, PoolPartyModuleStomping, ThreadlessInject, ModuleStomping, QueueUserAPC, ProcessHollow, EnumDisplayMonitors, RemoteThreadContext, RemoteThreadSuspended, CurrentThread)
  • PPID स्पूफिंग
  • तृतीय-पक्ष DLL ब्लॉक करना
  • KnownDLLs के माध्यम से NTDLL अनहुक करना
  • SysWhispers2, SysWhispers3, और GetSyscallStub
  • SW2 और SW3 के लिए API हैशिंग
  • संकलन-समय स्ट्रिंग एन्क्रिप्शन
  • Obfuscator-LLVM (OLLVM) समर्थन
  • स्वचालित DLL प्रॉक्सी जनरेशन
  • Havoc C2 फ्रेमवर्क एकीकरण
  • Syscall नाम यादृच्छिकीकरण
  • शेलकोड को अंग्रेजी शब्द सरणी के रूप में संग्रहीत करना
  • डायनामिक कुंजी पीढ़ी के साथ XOR एन्कोडिंग
  • लोडेड DLL, डोमेन, उपयोगकर्ता, होस्टनाम और सिस्टम गणना के माध्यम से सैंडबॉक्स चोरी

ThreadlessInject विधि द्वारा Havoc बीकन को IE में इंजेक्ट करने का PoC वीडियो नीचे देखें, जो माइक्रोसॉफ्ट डिफेंडर फॉर एंडपॉइंट (MDE) EDR में कोई अलर्ट और न्यूनतम ईवेंट उत्पन्न नहीं करता है (4/3/2023 को रिकॉर्ड किया गया):

वीडियो देखें

Module Stomping इंजेक्शन तकनीक का प्रदर्शन करने वाला नीचे दिया गया वीडियो DLL प्रॉक्सीिंग के माध्यम से निष्पादित (8/9/2022 को रिकॉर्ड किया गया):

वीडियो देखें

Shhhloader को @jakobfriedl द्वारा एक मॉड्यूल के माध्यम से Havoc C2 फ्रेमवर्क में भी एकीकृत किया गया है। मॉड्यूल का प्रदर्शन करने वाला वीडियो नीचे देखें:

वीडियो देखें

ज्ञात समस्याएं/नोट्स:

  • PoolParty इंजेक्शन विधियां वर्तमान में मौजूदा प्रक्रिया में इंजेक्ट करने के लिए कॉन्फ़िगर की गई हैं। इसलिए, आपको उस प्रक्रिया का नाम प्रदान करने के लिए -p फ्लैग का उपयोग करना होगा जिसे आप जानते हैं या संदेह है कि लक्ष्य सिस्टम पर पहले से चल रहा है।
  • PoolParty इंजेक्शन विधियां बड़ी शेलकोड फ़ाइलों जैसे sliver (~11MB) के साथ काम नहीं करेंगी।
  • ThreadlessInject शेलकोड निष्पादन विधि को वर्तमान में एक गैर-निलंबित प्रक्रिया में इंजेक्ट करना होगा। यदि "-cp" विकल्प प्रदान किया जाता है तो यह आपके लिए स्वचालित रूप से किया जाता है। मुझे उम्मीद है कि जल्द ही इसे निलंबित प्रक्रियाओं के साथ काम करने का तरीका ढूंढ लूंगा।
  • Havoc C2 मॉड्यूल वर्तमान में रॉ शेलकोड फ़ाइल के बजाय एक लिस्टनर निर्दिष्ट करने पर लटक जाता है। यह जल्द ही ठीक होने की उम्मीद है।
  • विंडोज डिफेंडर इस उपकरण द्वारा उत्पन्न अधिकांश फ़ाइलों का पता लगाएगा, इसलिए कृपया "DETECTED!!!" कहते हुए कोई समस्या पोस्ट न करें। नए विकल्पों और सुविधाओं के साथ प्रयोग करें जब तक कि आपको कुछ काम करने वाला न मिल जाए; उन्हें एक कारण से जोड़ा गया था :)। उत्पन्न फ़ाइल को मेमोरी में निष्पादित करना भी इन डिटेक्शन से बचने का एक अच्छा तरीका है।
  • Obfuscator-LLVM (OLLVM) SW2 और SW3 के साथ संगत नहीं है क्योंकि clang इनलाइन असेंबली को कैसे संभालता है। वर्तमान में उन्हें संगत बनाने की कोई योजना नहीं है; उपयोगकर्ता को इन सुविधाओं को एक साथ उपयोग करने से रोकने के लिए जांच जोड़ी गई है।
  • मेरे कोड में बहुत सारे बग हैं। कृपया किसी महत्वपूर्ण चीज़ के लिए उपयोग करने से पहले सब कुछ पहले से परीक्षण करें, और कृपया कोई समस्या खोलते समय यथासंभव अधिक जानकारी प्रदान करें। (धन्यवाद!)

नियोजित अपडेट:

  • हार्डवेयर ब्रेकपॉइंट (HWBP) syscall विकल्प
  • मानक WinAPI फ़ंक्शन के बजाय syscall का उपयोग करके प्रक्रिया बनाना
  • ThreadlessInject को अन्य शेलकोड इंजेक्शन तकनीकों (जैसे ModuleStomping) के साथ एकीकृत करना
  • अधिक मॉड्यूलर और पठनीय बनाने के लिए कोड को रिफैक्टर करना
  • Havoc C2 मॉड्यूल में बग ठीक करना
  • बेहतर प्रोग्रामिंग सीखकर अनगिनत बग ठीक करना ;)

वैकल्पिक: Obfuscator-LLVM फ्लैग का उपयोग करने के लिए, आपके सिस्टम पर wclang के साथ इसे स्थापित होना चाहिए। मुझे यह थोड़ा परेशानी भरा लगा है, लेकिन आप थोड़ी दृढ़ता से इसे कर सकते हैं। यहां वह चरण-दर-चरण दिया गया है जिसका उपयोग मैंने अपने Kali Linux सिस्टम पर OLLVM की llvm-13.x शाखा स्थापित करने के लिए किया:

विवरण देखें
root@kitploit:~
# Clone and Run CMake
git clone -b llvm-13.x https://github.com/heroims/obfuscator.git
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_NEW_PASS_MANAGER=OFF ../obfuscator/llvm/

# Configure CMake and Compile OLLVM
export clang_build_dir=$(cd ../; pwd)/obfuscator/clang
sed -i 's/LLVM_TOOL_CLANG_BUILD:BOOL=OFF/LLVM_TOOL_CLANG_BUILD:BOOL=ON/g' CMakeCache.txt
sed -i "s|LLVM_EXTERNAL_CLANG_SOURCE_DIR:PATH=|LLVM_EXTERNAL_CLANG_SOURCE_DIR:PATH=$clang_build_dir|g" CMakeCache.txt
make -j7

# ONCE COMPILED, BACKUP ORIGINAL CLANG BINARIES
mv /usr/bin/clang /usr/bin/clang13.0.1
mv /usr/bin/clang++ /usr/bin/clang++13.0.1

# Then in OLLVM build/bin dir, copy the newly build clang bins
cp bin/clang /usr/bin/clang
cp bin/clang++ /usr/bin/clang++

# Then install wclang
cd ..
git clone https://github.com/tpoechtrager/wclang.git
cd wclang/
cmake -DCMAKE_INSTALL_PREFIX=_prefix_ .
make
make install
export wclang_path=$(pwd)/_prefix_/bin
echo "export PATH=$wclang_path:$PATH" >> ~/.bashrc
export PATH=$wclang_path:$PATH

# Then backup original lib files
cp -R /lib/llvm-13/lib/clang/13.0.1/include/ /lib/llvm-13/lib/clang/13.0.1/include_backup/

# Finally in the OLLVM build/bin/lib/clang/13.0.1/ dir, copy the include folder
cd ../build/lib/clang/13.0.1/
cp -R include/ /lib/llvm-13/lib/clang/13.0.1/

शायद इसे करने का कोई बेहतर तरीका है, लेकिन यह वही है जो मेरे लिए काम आया। यदि आपको समस्याएं हैं, तो कोशिश करते रहें और सुनिश्चित करें कि आप x86_64-w64-mingw32-clang++ -v चला सकते हैं और इसके आउटपुट में "Obfuscator-LLVM" या "heroims" शामिल है। दुर्भाग्य से मेरे पास उन व्यक्तियों की सहायता करने का समय नहीं है जिन्हें अधिक सहायता की आवश्यकता हो सकती है, लेकिन आप मेरे Nimcrypt2 रेपो पर इस मुद्दे को पढ़ने का प्रयास कर सकते हैं, जहां कुछ उपयोगकर्ताओं ने अपने सिस्टम पर इसे करने का तरीका खोज लिया।

अभिवादन और श्रेय:

  • @Jackson_T उनकी अद्भुत परियोजना SysWhispers के लिए: https://github.com/jthuraisamy/SysWhispers
  • @FalconForceTeam उनके syscall जनरेशन टूल के लिए जो SysWhispers2 का समर्थन करता है: https://github.com/FalconForceTeam/SysWhispers2BOF
  • @snovvcrash उनकी DInjector परियोजना के लिए, जिसका उपयोग मैंने कई शामिल इंजेक्शन तकनीकों के लिए टेम्पलेट के रूप में किया: https://github.com/snovvcrash/DInjector
  • @Cerbersec उनकी Ares परियोजना के लिए, जिसका कोड मैंने PPID स्पूफिंग, तृतीय-पक्ष DLL ब्लॉक करने और सैंडबॉक्स चोरी के लिए उपयोग किया: https://github.com/Cerbersec/Ares
  • @spotheplanet रन-टाइम पर डिस्क से ntdll Syscall Stubs पुनर्प्राप्त करने पर उनके ब्लॉग पोस्ट के लिए: https://www.ired.team/offensive-security/defense-evasion/retrieving-ntdll-syscall-stubs-at-run-time
  • @_RastaMouse Module Stomping पर उनके कोड और लेख के लिए जिसे मैंने C++ में पोर्ट किया: https://offensivedefence.co.uk/posts/module-stomping/
  • @s4ntiago_p उनकी NanoDump परियोजना और विशेष रूप से randomize_sw2_seed.py स्क्रिप्ट के लिए: https://github.com/helpsystems/nanodump
  • @skadro-official उनकी skCrypter परियोजना के लिए जिसका यह उपकरण संकलन-समय स्ट्रिंग एन्क्रिप्शन के लिए उपयोग करता है: https://github.com/skadro-official/skCrypter
  • @_EthicalChaos_ उनकी ThreadlessInject परियोजना के लिए:
टूल डाउनलोड करें
https://github.com/CCob/ThreadlessInject
  • 0xLegacyy ThreadlessInject के BOF संस्करण के लिए: https://github.com/iilegacyyii/ThreadlessInject-BOF
  • @D1rkMtr उनके ntdll अनहुकिंग संग्रह परियोजना के लिए: https://github.com/TheD1rkMtr/ntdlll-unhooking-collection
  • @KlezVirus उनकी SysWhispers3 परियोजना के लिए: https://github.com/klezVirus/SysWhispers3
  • @jakobfriedl Shhhloader के लिए Havoc C2 मॉड्यूल बनाने के लिए
  • @_0xDeku विंडोज थ्रेड पूल (PoolParty) का उपयोग करके प्रक्रिया इंजेक्शन पर उनके शोध और कोड के लिए: https://github.com/SafeBreach-Labs/PoolParty
  • @0xEr3bus उनके PoolParty BOF के लिए जिसका संदर्भ के रूप में उपयोग किया गया: https://github.com/0xEr3bus/PoolPartyBof