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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
SysWhispers3 — SysWhispers on Steroids - प्रत्यक्ष सिस्टम कॉल के माध्यम से AV/EDR चोरी। | Kitploit
उपकरण/GitHubGitHub/klezvirus/syswhispers3
रक्षात्मक उपकरणपेलोड जनरेशनशोषणशेलकोडरेड टीमिंग
GitHubklezvirus/syswhispers3

SysWhispers3

SysWhispers on Steroids - प्रत्यक्ष सिस्टम कॉल के माध्यम से AV/EDR चोरी।

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

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

सभी देखें →

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

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

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

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

SysWhispers3

SysWhispers हेडर/ASM फ़ाइलें उत्पन्न करके एवेज़न में मदद करता है जिसका उपयोग इम्प्लांट सीधे सिस्टम कॉल करने के लिए कर सकते हैं।

आधिकारिक Discord चैनल

Discord पर आएं और जुड़ें!

Inceptor Server

आखिर मैंने SysWhispers2 में PR क्यों नहीं किया?

SysWhispers3 के एक स्वतंत्र संस्करण होने के कई कारण हैं, लेकिन सबसे महत्वपूर्ण ये हैं:

  • SysWhispers3 वास्तव में Inceptor द्वारा उपयोग किया जाने वाला "फ़ोर्क" है, और इसमें कुछ उपयोगिता क्लासेज़ शामिल हैं जो टूल के मूल संस्करण के लिए प्रासंगिक नहीं हैं।
  • SysWhispers2 NASM संकलन (gcc/mingw के लिए) का समर्थन करने की दिशा में आगे बढ़ रहा है, जबकि यह संस्करण विशेष रूप से MSVC का समर्थन करने के लिए डिज़ाइन और परीक्षण किया गया है (क्योंकि Inceptor निकट भविष्य में Windows-केवल फ्रेमवर्क रहेगा)।
  • SysWhispers3 में आंशिक रूप से लागू की गई सुविधाएँ (जैसे egg-hunting) शामिल हैं, जिन्हें टूल के मूल संस्करण में शामिल करना समझदारी नहीं होगी।

SysWhispers2 से अंतर

उपयोग SysWhispers2 के समान है, निम्नलिखित अपवादों के साथ:

  • यह x86/WoW64 का भी समर्थन करता है
  • यह syscalls निर्देशों को EGG से बदलने का समर्थन करता है (जिसे गतिशील रूप से बदला जाना है)
  • यह x86/x64 मोड में syscalls पर सीधे जंप का समर्थन करता है (WOW64 में यह लगभग मानक है)
  • यह रैंडम syscalls पर सीधे जंप का समर्थन करता है (@ElephantSeal के विचार से प्रेरित)

इन सुविधाओं की बेहतर व्याख्या ब्लॉग पोस्ट SysWhispers is dead, long live SysWhispers! में दी गई है।

परिचय

सुरक्षा उत्पाद, जैसे AV और EDR, आमतौर पर उपयोगकर्ता-मोड API फ़ंक्शन में हुक लगाते हैं ताकि प्रोग्राम के निष्पादन प्रवाह का विश्लेषण कर संभावित दुर्भावनापूर्ण गतिविधियों का पता लगा सकें।

SysWhispers2 एक ऐसा उपकरण है जो कोर कर्नेल इमेज (ntoskrnl.exe) में किसी भी सिस्टम कॉल के लिए हेडर/ASM जोड़े उत्पन्न करने के लिए डिज़ाइन किया गया है, जिसे सीधे C/C++ कोड से एकीकृत और कॉल किया जा सकता है, जिससे उपयोगकर्ता-लैंड हुक को दरकिनार किया जा सकता है।

हालाँकि, उपकरण कुछ ऐसे पैटर्न उत्पन्न करता है जिन्हें सिग्नेचर में शामिल किया जा सकता है, या ऐसा व्यवहार जो रनटाइम पर पता लगाया जा सकता है।

SysWhispers3, SysWhispers2 के ऊपर बनाया गया है, और इसमें पता लगाने के इन रूपों को बायपास करने के लिए कुछ उपयोगी सुविधाएँ एकीकृत की गई हैं।

स्थापना

root@kitploit:~
C:\> git clone https://github.com/klezVirus/SysWhispers3.git
C:\> cd SysWhispers3
C:\> python .\syswhispers.py --help

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

सहायता उपकरण के सभी उपलब्ध कमांड और सुविधाओं को दर्शाती है:

root@kitploit:~
C:\>python syswhispers.py -h

usage: syswhispers.py [-h] [-p PRESET] [-a {x86,x64}] [-m {embedded,egg_hunter,jumper,jumper_randomized}] [-f FUNCTIONS] -o OUT_FILE [--int2eh] [--wow64] [-v] [-d]

SysWhispers3 - SysWhispers on steroids

optional arguments:
  -h, --help            show this help message and exit
  -p PRESET, --preset PRESET
                        Preset ("all", "common")
  -a {x86,x64}, --arch {x86,x64}
                        Architecture
  -c {msvc,mingw,all}, --compiler {msvc,mingw,all}
                        Compiler
  -m {embedded,egg_hunter,jumper,jumper_randomized}, --method {embedded,egg_hunter,jumper,jumper_randomized}
                        Syscall recovery method
  -f FUNCTIONS, --functions FUNCTIONS
                        Comma-separated functions
  -o OUT_FILE, --out-file OUT_FILE
                        Output basename (w/o extension)
  --int2eh              Use the old `int 2eh` instruction in place of `syscall`
  --wow64               Use Wow64 to run x86 on x64 (only usable with x86 architecture)
  -v, --verbose         Enable debug output
  -d, --debug           Enable syscall debug (insert software breakpoint)

कमांड लाइन्स

मानक SysWhispers, एम्बेडेड सिस्टम कॉल (x64)

root@kitploit:~
# Export all functions with compatibility for all supported Windows versions (see example-output/).
py .\syswhispers.py --preset all -o syscalls_all

# Export just the common functions (see below for list).
py .\syswhispers.py --preset common -o syscalls_common

# Export NtProtectVirtualMemory and NtWriteVirtualMemory with compatibility for all versions.
py .\syswhispers.py --functions NtProtectVirtualMemory,NtWriteVirtualMemory -o syscalls_mem

केवल SysWhispers3 के नमूने

root@kitploit:~
# Normal SysWhispers, 32-bits mode
py .\syswhispers.py --preset all -o syscalls_all -m jumper --arch x86

# Normal SysWhispers, using WOW64 in 32-bits mode (only specific functions)
py .\syswhispers.py --functions NtProtectVirtualMemory,NtWriteVirtualMemory -o syscalls_mem --arch x86 --wow64

# Egg-Hunting SysWhispers, to bypass the "mark of the sycall" (common function)
py .\syswhispers.py --preset common -o syscalls_common -m egg_hunter

# Jumping/Jumping Randomized SysWhispers, to bypass dynamic RIP validation (all functions) using MinGW as the compiler
py .\syswhispers.py --preset all -o syscalls_all -m jumper -c mingw


स्क्रिप्ट आउटपुट

root@kitploit:~
PS C:\Projects\SysWhispers2> py .\syswhispers.py --preset common --out-file temp\syscalls_common -v 
                                                       
                  .                         ,--.
,-. . . ,-. . , , |-. o ,-. ,-. ,-. ,-. ,-.  __/
`-. | | `-. |/|/  | | | `-. | | |-' |   `-. .  \
`-' `-| `-' ' '   ' ' ' `-' |-' `-' '   `-'  '''
     /|                     |  @Jackson_T
    `-'                     '  @modexpblog, 2021

                      Edits by @klezVirus,  2022
SysWhispers3: Why call the kernel when you can whisper?


Common functions selected.

Complete! Files written to:
        temp\syscalls_common.h
        temp\syscalls_common.c
        temp\syscalls_common_.asm
Press a key to continue...

Visual Studio में आयात करना

  1. जनरेट की गई H/C/ASM फ़ाइलों को प्रोजेक्ट फ़ोल्डर में कॉपी करें।
  2. Visual Studio में, Project → Build Customizations... पर जाएं और MASM सक्षम करें।
  3. Solution Explorer में, .h और .c/.asm फ़ाइलों को क्रमशः हेडर और स्रोत फ़ाइलों के रूप में प्रोजेक्ट में जोड़ें।
  4. ASM फ़ाइल के गुणों पर जाएं, और Item Type को Microsoft Macro Assembler पर सेट करें।

Visual Studio के बाहर संकलन

Windows

64 बिट के लिए Makefile:

Makefile.msvc

root@kitploit:~
OPTIONS = -Zp8 -c -nologo -Gy -Os -O1 -GR- -EHa -Oi -GS-
LIBS = libvcruntime.lib libcmt.lib ucrt.lib kernel32.lib

program:
  ML64 /c syscalls-asm.x64.asm /link /NODEFAULTLIB /RELEASE /MACHINE:X64
  cl.exe $(OPTIONS) syscalls.c  program.c
  link.exe /OUT:program.x64.exe -nologo $(LIBS) /MACHINE:X64 -subsystem:console -nodefaultlib syscalls-asm.x64.obj syscalls.obj program.obj

32 बिट के लिए Makefile:

Makefile.msvc

root@kitploit:~
OPTIONS = -Zp8 -c -nologo -Gy -Os -O1 -GR- -EHa -Oi -GS-
LIBS = libvcruntime.lib libcmt.lib ucrt.lib kernel32.lib

program:
  ML /c syscalls-asm.x86.asm /link /NODEFAULTLIB /RELEASE /MACHINE:X86
  cl.exe $(OPTIONS) syscalls.c  program.c
  link.exe /OUT:program.x86.exe -nologo $(LIBS) /MACHINE:X86 -subsystem:console -nodefaultlib syscalls-asm.x86.obj syscalls.obj program.obj

nmake से संकलित करें:

root@kitploit:~
nmake -f Makefile.msvc

Linux

64 और 32 बिट दोनों के लिए Makefile:

Makefile.mingw

root@kitploit:~
CC_x64 := x86_64-w64-mingw32-gcc
CC_x86 := i686-w64-mingw32-gcc
OPTIONS := -masm=intel -Wall

program:
  $(CC_x64) syscalls.c program.c -o program.x64.exe $(OPTIONS)
  $(CC_x86) syscalls.c program.c -o program.x86.exe $(OPTIONS)

make से संकलित करें:

root@kitploit:~
make -f Makefile.mingw

सावधानियाँ और सीमाएँ

  • Egg-Hunter कार्यक्षमता इस उपकरण में लागू नहीं की गई है, यह Inceptor में है।
  • ग्राफिकल सबसिस्टम (win32k.sys) से सिस्टम कॉल समर्थित नहीं हैं।
  • Visual Studio 2019/2022 पर Windows 10 SDK के साथ परीक्षण किया गया।
  • NASM के लिए समर्थन की गारंटी नहीं है।
  • GCC और MinGW के लिए समर्थन की गारंटी नहीं है।

समस्या निवारण

SysWhispers2 से

  • प्रकार पुनर्परिभाषित त्रुटियाँ: यदि syscalls.h में typedefs पहले ही परिभाषित हो चुके हैं तो प्रोजेक्ट संकलित नहीं हो सकता।
    • सुनिश्चित करें कि केवल आवश्यक फ़ंक्शन शामिल हों (अर्थात --preset all शायद ही कभी आवश्यक हो)।
    • यदि कोई typedef किसी अन्य उपयोग किए गए हेडर में पहले से परिभाषित है, तो इसे syscalls.h से हटाया जा सकता है।

नया

  • --verbose के साथ, कोड जनरेशन के दौरान समस्या निवारण आउटपुट सक्षम किया जा सकता है।
  • --debug के साथ, उपकरण syscall स्टब में एक सॉफ्टवेयर ब्रेकपॉइंट सम्मिलित करेगा, ताकि WinDbg में डीबग करना आसान हो।
  • यदि संकलन के दौरान error A2084:constant value too large मिलता है, तो स्टब्स को पुनः जनरेट करें।

श्रेय

SysWhispers2

@Jackson_T और @modexpblog द्वारा विकसित, लेकिन कई अन्य लोगों के काम पर आधारित है:

  • @FoxHex0ne कई फ़ंक्शन प्रोटोटाइप और टाइपडेफ़ को मशीन-पठनीय प्रारूप में सूचीबद्ध करने के लिए।
  • @PetrBenes, NTInternals.net team, और MSDN अतिरिक्त प्रोटोटाइप और टाइपडेफ़ के लिए।
  • @Cn33liz प्रारंभिक Dumpert POC कार्यान्वयन के लिए।

SysWhispers2 (x86/WOW64)

  • @rooster x86/WOW64 संगत फ़ोर्क का नमूना बनाने के लिए।

अन्य

  • @ElephantSe4l syscalls पर जंप को रैंडमाइज़ करने के विचार के लिए।
  • @S4ntiagoP nanodump पर अविश्वसनीय कार्य के लिए, जिसने मुझे ढेरों विचार दिए।

लाइसेंस

मूल की तरह, यह प्रोजेक्ट भी Apache License 2.0 के तहत लाइसेंस प्राप्त है।

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