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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/voidsecsoftwares/voidsyscall
تصعيد الامتيازاتأدوات التشفير/فك التشفيرآليات الاستمراريةالتهرب من IDS/IPSالحركة الجانبيةما بعد الاستغلالتحليل البرمجيات الخبيثةاختبار الاختراقالقيادة والسيطرةالفريق الأحمرتطوير الحمولاتحصان طروادة للوصول عن بعد
1819منذ يوم واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

voidsyscall

منصة زرع وC2 مدعومة باستدعاءات النظام عبر الأنظمة — استدعاءات نظام مباشرة (Win)، استدعاءات نظام خام (Linux)، قنوات HTTPS/DNS/ICMP. بدون طبقة winapi.

عرض المستودع

voidsyscall

go license platform c2 syscalls

صفر WinAPI. يتم حل كل بدائية NT في وقت التشغيل من ntdll في الذاكرة — يتم إصدار تعليمات SYSCALL مباشرة عبر stubs تجميع Plan9، لا يوجد جدول استيراد، لا يتم لمس أي خطافات usermode في ntdll. C2 عبر HTTPS / DNS / ICMP، AES-256-GCM لكل رسالة. أصلي على Windows. بناءات Linux. بناءات macOS.

هذا ليس مكتبة غلاف syscall. إنه إطار عمل implant كامل حيث كل عملية — من حقن الكود إلى قراءة الملفات إلى الاستمرارية في السجل — تمر عبر استدعاءات Nt* الخام التي يتم حلها عند الإقلاع من جدول تصدير ntdll الحالي. لا توجد استدعاءات WinAPI في الملف الثنائي. لا شيء لـ EDR ليضع خطافًا عليه في usermode.


ما بالداخل

محرك Syscall

  • حل SSN في وقت التشغيل: PEB → LDR → قاعدة ntdll → جدول تصدير PE → مطابقة تجزئة djb2 → فحص المقدمة بحثًا عن B8 xx xx 00 00 0F 05 (مباشر) أو 4C 8B D1 B8 xx xx 00 00 0F 05 (Hells Gate). يتم تجزئة كل اسم دالة في وقت الترجمة — لا توجد سلاسل نصية واضحة في الملف الثنائي.
  • استدعاء مباشر: تجميع Plan9 (asm_amd64.s) يحمّل SSN في EAX، يضبط 7 وسائط يدويًا، ينفذ SYSCALL. العودة عبر RAX/RDX.
  • استدعاء غير مباشر: يحدد موقع أداة 0F 05 C3 (syscall;ret) داخل ntdll، ويستدعي من خلالها. يهبط فخ المعالج داخل ntdll — يُظهر مكدس الاستدعاء إطارات ntdll، وليس إطارات implant. لا ينجو أي خطاف usermode.
  • بصمة SSN: يفرغ جميع SSNs المحلولة من بناء ntdll الحالي، ويولّد تجزئة بصمة. تصدير كـ hex، واستيراد على جهاز آخر. يكتشف عدم تطابق البناءات قبل أن يحرقك.
  • إزالة الخطافات: يقفل .text إلى RWX، وينسخ البايتات الأصلية من ntdll المعيّن على القرص، ويستعيد الحماية، ويفرغ icache، ويمحو ذاكرة SSN المؤقتة. كل خطاف usermode وضعه أي EDR يختفي.

الحقن — 4 طرق، تدوير متعدد الأشكال

يقوم الوكيل بالتدوير عبر تقنيات الحقن تلقائيًا. كل استدعاء يستخدم طريقة مختلفة — لا يبدو حقنان متشابهين في التحليل الجنائي.

مكافحة التحليل — أكثر من 13 طريقة كشف

يشغّل جميع الفحوصات، ويعيد تقرير تهديد مُقيَّم. تدمير ذاتي عند Critical.

عمليات Token

كلها عبر استدعاءات Nt*، بدون WinAPI.

  • EnablePrivilege(index) — ضبط أي امتياز بواسطة LUID
  • EnableAllTokenPrivileges() — 20 امتيازًا دفعة واحدة (Debug، Impersonate، TCB، Backup، Restore، إلخ.)
  • GetProcessTokenIntegrityLevel() — استعلام السلامة الإلزامية
  • StealProcessToken(pid) — فتح + تكرار token عملية أخرى
  • ImpersonateThread() / RevertToSelf()

عمليات VAD

  • EnumVirtualMemory() — التنقل في جميع المناطق الافتراضية عبر NtQueryVirtualMemory
  • FindWritableExecRegions() — العثور على مناطق PAGE_EXECUTE_READWRITE الملتزمة
  • HideRegion() — ضبط PAGE_NOACCESS لإخفاء الذاكرة من الماسحات
  • UnhideRegion() — استعادة الحماية الأصلية

إدخال/إخراج الملفات — كلها استدعاءات Nt*

NtCreateFile → NtReadFile / NtWriteFile → NtClose. صفر استدعاءات CreateFileA، ReadFile، WriteFile، أو DeleteFileW. ReadFileContents()، WriteFileContents()، DeleteFileNt()، FileExists().

استمرارية السجل — كلها استدعاءات Nt*

NtCreateKey → NtSetValueKey. AddRunKeyPersistence()، RemoveRunKeyPersistence(). لا RegCreateKeyEx، RegSetValueEx، أو أي استدعاءات Advapi32.

عمليات المقابض

  • EnumerateSystemHandles() — جميع المقابض المفتوحة في النظام عبر NtQuerySystemInformation(SystemHandleInformation)
  • FindEDRHandles() — يطابق PIDs المالك مع أكثر من 30 اسم عملية EDR معروف (MsSense، CrowdStrike، Sentinel، Cylance، Carbon Black، إلخ)
  • CloseEDRHandles() — يغلق مقابض المراقبة التي وضعها EDR في عمليتك
  • IsProcessMonitored() — فحص منطقي: هل نحن تحت المراقبة؟

تشفير الذاكرة

  • Vault: تشفير XOR في الذاكرة مع إعادة توليد المفتاح تلقائيًا على مؤقت. لا يتم تخزين النص الواضح خامًا أبدًا. إعادة التوليد تفك التشفير → تولّد مفتاحًا جديدًا → تعيد التشفير. تحصل تفريغات الكومة الجنائية بين فترات إعادة التوليد على بيانات تالفة.
  • SecureDelete: محو بثلاث تمريرات (عشوائي → أصفار → آحاد → أصفار) قبل NtFreeVirtualMemory.
  • StackEncrypt: تشفير المخازن المخصصة على المكدس قبل العودة. إعادة استخدام إطار المكدس يجعل التحليل الجنائي غير موثوق.

رقع AMSI / ETW / التهرب

  • PatchAMSI() — AmsiScanBuffer → MOV EAX, 0; RET
  • PatchETW() — EtwEventWrite → RET
  • PatchNtTraceEvent() — NtTraceEvent → RET
  • PatchDbgUiRemoteBreakin() — اختراق الخيط → RET
  • PatchInstrumentationCallbacks() — ThreadHideFromDebugger

قنوات C2

جميع القنوات تنفذ واجهة Channel. إضافة NTP أو DoH أو TURN تعني تنفيذ الواجهة — صفر تغييرات في الوكيل.

التشفير

AES-256-GCM AEAD لكل رسالة. nonce فريد من 12 بايت لكل رسالة. حلقة مفاتيح لكل implant. اشتقاق مفتاح قائم على عبارة المرور متاح. 3 اختبارات، جميعها ناجحة.


التخطيط

root@kitploit:~
voidsyscall/
  syscallwin/          Direct/indirect NT syscalls + evasion
    asm_amd64.s        Syscall/IndirectSyscall/ReadGSBase/SetGSBase/asm_cpuid/asm_rdtsc
    resolve.go         PEB→LDR→ntdll walk, PE export parse, SSN cache, prologue scan
    stubs.go           ~25 Nt* wrappers, DirectSyscall, IndirectSyscallByHash
    hash.go            djb2 hash (string + UTF-16 pointer)
    constants.go       MEM_*, PAGE_*, THREAD_*, TOKEN_*, OBJ_*, REG_*, FILE_*, STATUS_*
    unhook.go          UnhookNtdll, SelfDel
    peb.go             PEB patching (BeingDebugged, NtGlobalFlag, Heap, DebugPort)
    token.go           Privilege escalation, token theft, impersonation
    vad.go             VAD enumeration, hide/unhide regions
    files.go           File I/O via Nt* syscalls
    registry.go        Registry persistence via Nt* syscalls
    fingerprint.go     SSN dump, build fingerprint, hex export/import
    inject_advanced.go 4 injection methods: section mapping, hollow, APC, module stomp
    antianalysis.go    VM/sandbox/debug/timing detection, scored threat report
    handles.go         System handle enumeration, EDR handle killer
    memcrypt.go        Vault (re-keying XOR), SecureDelete, StackEncrypt, WipeMemory
  syscallnix/          Linux/darwin raw syscalls
  patches/             AMSI, ETW, NtTraceEvent, DbgUiRemoteBreakin, InstrumentationCallbacks
  loader/              CreateThread/APC/module-stomp injection
  channels/            HTTP, DNS (TXT), ICMP — Channel interface
  crypto/              AES-256-GCM, envelope, passphrase variant (3 tests)
  server/              SessionManager, Task Queue, interactive REPL
  agent/               Config, beacon loop, 10 task handlers
  cmd/server/main.go   CLI with REPL
  cmd/agent/main.go    Windows-only entrypoint

البناء

root@kitploit:~
GOOS=windows GOARCH=amd64 go build -ldflags="-s -w" -o voidsyscall-agent.exe   ./cmd/agent
GOOS=windows GOARCH=amd64 go build -ldflags="-s -w" -o voidsyscall-server.exe  ./cmd/server
GOOS=linux   GOARCH=amd64 go build -ldflags="-s -w" -o server-linux            ./cmd/server
GOOS=darwin  GOARCH=arm64 go build -ldflags="-s -w" -o server-darwin           ./cmd/server

التشويش باستخدام garble:

root@kitploit:~
GOOS=windows GOARCH=amd64 garble -literals -tiny build -ldflags="-s -w" \
    -o voidsyscall-agent.exe ./cmd/agent

الاستخدام

الخادم

root@kitploit:~
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes
./voidsyscall-server.exe --cert cert.pem --key key.pem --https-port 443

الوكيل

root@kitploit:~
./voidsyscall-agent.exe -c agent/example-config.json

بروتوكول المهام


تفاصيل حل SSN الداخلية

  1. ReadGSBase (asm) → GS:[0x60] → TEB
  2. TEB+0x60 → PEB. PEB+0x18 → Ldr
  3. التنقل في InMemoryOrderModuleList → مطابقة ntdll.dll عبر تجزئة djb2
  4. القاعدة → IMAGE_DOS_HEADER → e_lfanew → IMAGE_NT_HEADERS → DataDirectory[0] = جدول التصدير
  5. التنقل في AddressOfNames[]، djb2 لكل منها، مطابقة الهدف
  6. حل الترتيب → AddressOfFunctions[ordinal] → عنوان الدالة
  7. فحص المقدمة بحثًا عن B8 xx xx 00 00 0F 05 (مباشر)، B8 xx xx 00 00 C3 (early-ret)، أو 4C 8B D1 B8 xx xx 00 00 0F 05 (Hells Gate)

لا أسماء دوال في الملف الثنائي. فقط تجزئات djb2. تعليمة syscall تتجاوز كل خطاف usermode.


معالجات مهام الوكيل

root@kitploit:~
TaskShell       // exec via cmd.exe
TaskInject      // polymorphic: section/hollow/APC/stomp
TaskPatch       // AMSI/ETW/both
TaskEvasion     // PEB patches + VM/sandbox/debug/timing detection
TaskHandles     // enumerate + kill EDR monitoring handles
TaskFingerprint // dump SSN build fingerprint
TaskToken       // privilege escalation + impersonation
TaskVault       // encrypted in-memory storage
TaskSleep       // jitter-aware sleep
TaskExit        // clean shutdown

الحالة

تم الشحن: حلقة Beacon، قائمة انتظار المهام، 3 قنوات C2، 4 طرق حقن، أكثر من 10 فحوصات تهرب، تعداد/إغلاق المقابض، التلاعب بـ token، عمليات VAD، إدخال/إخراج الملفات، استمرارية السجل، بصمة SSN، تشفير الذاكرة، رقع AMSI/ETW، تشفير AES-GCM، إدارة الجلسات، REPL تفاعلي. 3 اختبارات تشفير ناجحة. go build نظيف على Windows.

ليس بعد: وكيل Linux مستقل (البناءات موجودة، لا منطق وكيل)، تدوير مفاتيح الجلسة، محمّل مرحلي، قنوات NTP/DoH، جدولة الاستمرارية.

شكر وتقدير

  • carved4/go-native-syscall
  • Enelg52/OffensiveGo
  • am0nsec/HellsGate
  • f1zm0/acheron
  • Sliver C2

الترخيص

MIT — LICENSE

تنزيل الأداة
الطريقةكيف تعمللماذا هي خفية
تعيين القسمNtCreateSection → NtMapViewOfSection (عن بعد) → NtCreateThreadExلا يوجد تخصيص RWX في VAD. القسم مدعوم بملف. ترى ماسحات الذاكرة PAGE_EXECUTE_READ، وليس PAGE_EXECUTE_READWRITE.
تفريغ العمليةNtCreateUserProcess (معلّق) → NtSuspendProcess → تصفير قاعدة الصورة → تخصيص + كتابة shellcode → NtSetContextThread (RIP = shellcode) → NtResumeProcessتظهر العملية كـ svchost.exe شرعي في taskmgr. تختلف محتويات الذاكرة فقط.
صف APCتعداد الخيوط عبر NtQuerySystemInformation → NtOpenThread → NtQueueApcThreadلا يتم إنشاء خيط جديد. لا TEB جديد. لا تخصيص مكدس جديد. يُطلق عندما يدخل الخيط في انتظار قابل للتنبيه.
دوس الوحدةتخصيص في الهدف → كتابة رأس PE أدنى + shellcode → NtCreateThreadEx عند نقطة الدخولتُظهر قائمة الوحدات اسم DLL معقول. رأس PE صالح بما يكفي لخداع تعداد الوحدات.
الفحصالطريقة
كشف VMفحص توقيع hypervisor في CPUID leaf 0x40000000 (VMware، VirtualBox، Hyper-V، KVM، Xen، QEMU، Parallels) + احتياطي leaf 0x40000001
كشف Sandboxعدد CPU، آثار السجل (VMware Tools، VBox Guest Additions، خدمات VMware/VBox)، فحص عمليات sandbox (أكثر من 30 اسمًا معروفًا: wireshark، procmon، x64dbg، ida، إلخ)
كشف DebuggerPEB.BeingDebugged، PEB.NtGlobalFlag، أعلام تصحيح الكومة، ProcessDebugPort، ProcessDebugObjectHandle، ProcessDebugFlags، نقطة توقف عتادية DR0-7، فحص التوقيت أحادي الخطوة
شذوذ التوقيتقائم على RDTSC: 50 عينة من زمن استجابة NtQuerySystemInformation، المتوسط/الانحراف المعياري، وضع علامة إذا تجاوزت أكثر من 10% من العينات تباين 3σ. يلتقط الحمل الزائد للأدوات.
تهرب PEBيرقّع أعلام BeingDebugged، NtGlobalFlag، ProcessHeap، DebugPort، ThreadHideFromDebugger — كلها عبر قراءات مقطع GS + NtWriteVirtualMemory. لا استدعاءات API.
القناة
تنسيق الإرسال
المتطلبات
HTTPSPOST ثنائي، تأطير مخصص، UA/مسار عشوائيشهادة TLS
DNSنطاق فرعي <idx>-<total>-<base32>، استجابة TXTحل DNS
ICMPv4الحمولة في ID+seq لطلب/رد echoمقبس خام (root/Admin)
المهمةالبايتالحمولة
shell0x01أمر UTF-8
inject0x02PID (4 بايت LE) + shellcode
patch0x030x01=AMSI، 0x02=ETW، 0x03=كلاهما
sleep0x04ثوانٍ (4 بايت LE)
evasion0x100x01=كامل، 0x02=VM، 0x03=sandbox، 0x04=debug، 0x05=timing، 0x06=report
handles0x110x01=count، 0x02=enum EDR، 0x03=close EDR، 0x04=monitored?
vault0x12عمليات تخزين مشفرة
fingerprint0x13تفريغ بصمة بناء SSN
token0x140x01=enable all، 0x02=integrity، 0x03=debug priv، 0x04=impersonate
exit0xFF—
  • استخراج SSN من 2 بايت → تخزين في ذاكرة map[uint32]uint16 المؤقتة