Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
SharpWhispers — نسخة بلغة C# من SysWhispers2. تستخدم SharpASM للعثور على كهوف الكود لتنفيذ كعب استدعاء النظام. | Kitploit
أدوات/GitHubGitHub/secforce/sharpwhispers
التهرب من IDS/IPSشيل كودما بعد الاستغلالالفريق الأحمرتطوير الحمولات
GitHubsecforce/sharpwhispers

SharpWhispers

نسخة بلغة C# من SysWhispers2. تستخدم SharpASM للعثور على كهوف الكود لتنفيذ كعب استدعاء النظام.

عرض المستودع
11217منذ 3 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

SharpWhispers

LOGO

نسخة C# من SysWhispers2.

تستخدم SharpASM للعثور على فجوات الكود (code caves) لتنفيذ كعب استدعاء النظام (system call stub).

اقرأ مقال المدونة للتفاصيل التقنية: https://www.secforce.com/blog/sharpasm-sharpwhispers/

المتطلبات

  • Visual Studio
  • .NET Framework >= 3.5
  • Python3

الاستخدام

root@kitploit:~

   ______               _      ____   _                    
  / __/ /  ___ ________| | /| / / /  (_)__ ___  ___ _______
 _\ \/ _ \/ _ `/ __/ _ \ |/ |/ / _ \/ (_-</ _ \/ -_) __(_-<
/___/_//_/\_,_/_/ / .__/__/|__/_//_/_/___/ .__/\__/_/ /___/
                 /_/                    /_/                

@d_glenx
@SECFORCE_LTD

=============================================================


usage: SharpWhispers.py [-h] [-p PRESET] [-f FUNCTIONS] -o OUT_FILE

optional arguments:
  -h, --help            show this help message and exit
  -p PRESET, --preset PRESET
                        Preset ("all", "common", "dinvoke")
  -f FUNCTIONS, --functions FUNCTIONS
                        Comma-separated functions
  -o OUT_FILE, --out-file OUT_FILE
                        Output basename (w/o extension)

يتم توفير تعليمات إنشاء مشروع Visual Studio هنا

يتم توفير مثال أساسي لحقن العمليات هنا

الإعدادات المسبقة

في الوقت الحالي، تحتوي ملفات json على البيانات اللازمة لتوليد 33 استدعاء نظام.

ملاحظة: الإعداد المسبق All يحتوي على مجموعة فرعية من جميع استدعاءات النظام.

All

root@kitploit:~
==== System Calls Imported ====

==[DInvoke]==
[i] Number of Delegates: 13

NtCreateThreadEx
NtCreateSection
NtUnmapViewOfSection
NtMapViewOfSection
NtQueryInformationProcess
NtOpenProcess
NtAllocateVirtualMemory
NtFreeVirtualMemory
NtQueryVirtualMemory
NtProtectVirtualMemory
NtWriteVirtualMemory
NtReadVirtualMemory
NtOpenFile

==[Additional]==
[i] Number of Delegates: 20

NtOpenThread
NtQueueApcThread
NtOpenSection
NtSuspendThread
NtQueryInformationFile
NtSetContextThread
NtResumeProcess
NtOpenProcessToken
NtWaitForMultipleObjects
NtQueryDirectoryFile
NtAdjustPrivilegesToken
NtQuerySystemInformation
NtDeviceIoControlFile
NtResumeThread
NtCreateProcess
NtSuspendProcess
NtGetContextThread
NtClose
NtQueryInformationThread
NtTestAlert

Common

root@kitploit:~
NtCreateThreadEx
NtCreateSection
NtUnmapViewOfSection
NtMapViewOfSection
NtQueryInformationProcess
NtAllocateVirtualMemory
NtFreeVirtualMemory
NtProtectVirtualMemory
NtWriteVirtualMemory
NtOpenFile
NtReadVirtualMemory
NtQueryVirtualMemory
NtOpenProcess

DInvoke

root@kitploit:~
NtCreateThreadEx
NtCreateSection
NtUnmapViewOfSection
NtMapViewOfSection
NtQueryInformationProcess
NtOpenProcess
NtAllocateVirtualMemory
NtFreeVirtualMemory
NtQueryVirtualMemory
NtProtectVirtualMemory
NtWriteVirtualMemory
NtReadVirtualMemory
NtOpenFile

القوالب

Delegates.cs

يتم توليده ديناميكيًا

يحتوي على مفوضيات (delegates) استدعاءات النظام المطلوب توليدها.

PEB.cs

يعتمد على SharpASM

أداة مساعدة للحصول على عنوان PEB باستخدام ASM.

SharpASM.cs

يحتوي على الكود لاستدعاء ASM ديناميكيًا في c#.

يمكن استخدام الدالة public static IntPtr callASM(byte[] stub) لاستدعاء الشيل كود (shellcode) عن طريق تمرير مصفوفة بايتات.

SharpWhispers.cs

يتم توليده ديناميكيًا - يقوم البرنامج النصي بتوليد بذرة عشوائية (random seed) لتجزئة أسماء استدعاءات النظام

يحتوي على الكود لاسترجاع أرقام استدعاءات النظام باستخدام ElephantSe4l وتقنيته (كود منقول من SysWhispers2).

Syscalls.cs

يعتمد على SharpASM

يحتوي على الكود لتنفيذ استدعاءات النظام ديناميكيًا باستخدام ASM.

يحتوي أيضًا على مغلفات (wrappers) لاستدعاءات النظام (مثل Syscall.NtAllocateVirtualMemory) (يتم توليده ديناميكيًا)

أنواع بيانات DInvoke

يتم توليده ديناميكيًا

يمكن استخدام ملفات مخرجات SharpWhispers مباشرة في مشروع C#. أنواع البيانات المطلوبة هي مجموعة فرعية من أنواع البيانات المعرفة في مشروع DInvoke (بعض أنواع البيانات مستعارة في الواقع من مشروع Rastamouse المصغر) وذلك لتقليل سطح الاكتشاف. يتم تعريف أنواع البيانات في مساحة الاسم SharpWhisper.Data لتجنب التداخل مع تعريفات DInvoke.

ملاحظة: يتم توليد أنواع البيانات فقط عند الحاجة (أي إذا كان استدعاء النظام يحتاج إلى نوع بيانات) لتقليل سطح الاكتشاف.

تُستخدم القوالب التالية لتوليد أنواع البيانات المطلوبة:

  • TypedefsNative.cs
  • TypedefsPE.cs
  • TypedefsWin32.cs
تنزيل الأداة