
أدوات قياس عبر العمليات لـ Windows x64 بلغة TypeScript — خطف الدوال، وإعادة توجيه الخيوط، وقراءة/كتابة الذاكرة في عملية أخرى، دون حقن DLL ودون CreateRemoteThread.
أدوات قياس وتتبع عبر العمليات (Cross-process instrumentation) وانعكاس وقت تشغيل JVM لنظام Windows x64، بالكامل من TypeScript — اعتراض الدوال الأصلية (native functions)، إعادة توجيه الخيوط (threads)، فحص الذاكرة، والتفاعل مع عمليات Java/Minecraft الحية دون أي حقن DLL ودون CreateRemoteThread.
[!CAUTION] إخلاء مسؤولية قانوني وأخلاقي يحتوي هذا المستودع على أدوات هندسة برمجيات وهندسة عكسية (reverse engineering instrumentation). وهو مُقدَّم حصريًا لأغراض تعليمية وتحليل أمني وبحوث البرمجيات الخبيثة. لا يجوز تحت أي ظرف استخدام هذه المجموعة لاستغلال برمجيات تجارية، أو استهداف أنظمة إنتاجية، أو تجاوز حمايات نقاط النهاية (endpoint protections) في البرمجيات المحمية. لا يتحمل المؤلفون والمساهمون أي مسؤولية عن أي إساءة استخدام أو ضرر أو تبعات قانونية ناتجة عن تنفيذ أو تعديل هذه الشيفرة. ومن خلال استنساخ هذا المستودع أو ترجمته أو الرجوع إليه، فإنك توافق على تحمل كامل المخاطر والمسؤولية.
يجمع Exoproc بين أدوات قياس أنظمة Windows x64 منخفضة المستوى وانعكاس وقت التشغيل عالي المستوى في واجهة برمجة TypeScript موحّدة:
EB FE park-and-simulate (bun-nhook) — تقنية Exoproc الرائدة: اعتراض مضمّن (inline hook) بحجم 2 بايت دون تخصيص ذاكرة. أوقف أي خيط يدخل الدالة، وسلّم التحكم إلى JS، وافحص/عدّل الوسائط، وافرض قيمة إرجاع، ثم استأنف.bun-minhook) — اعتراض بأسلوب MinHook بأمر jmp بحجم 5 بايت مع trampoline/detour، لكن الهدف يقع في عملية أخرى.CreateRemoteThread (bun-nthread) — كل استدعاء عن بُعد في هذه المجموعة يتم عبر تعليق وإعادة توجيه أحد خيوط الهدف الحية نفسها، وليس أبدًا عبر إنشاء خيط جديد أو حقن shellcode.bun-xffi) — player.health = 100، entity.position.x، متداخلة وكاملة، مدعومة 1:1 بذاكرة حقيقية (حتى عن بُعد).bun:ffi في كل الطبقات (bun-xffi) — مُصرِّف TinyCC JIT وقت التشغيل لشيفرة الآلة، ومُفكِّك Capstone للعمل على مستوى التعليمات.bun-njava) — استخدم Java.type('java.lang.System') للتفاعل مع أصناف JVM عن بُعد، واستدعاء الدوال الساكنة/المثيلية، والوصول إلى الحقول مباشرة من TypeScript.Throwable (ClassNotFoundException، InvocationTargetException، إلخ) وفك تغليفها إلى كائنات Error قياسية في JavaScript، قابلة للالتقاط عبر try / catch القياسي.Java.type، Java.from، Java.to) تعمل حتى على أوقات التشغيل الحديثة التي أُزيل منها Nashorn.exoproc-tool) — مُوجِّه مسارات قوائم عالمي قائم على الرسوم البيانية (/navigate)، وفحص الكيانات/المخزون داخل اللعبة، وخادم Model Context Protocol (MCP) لوكلاء لعب الذكاء الاصطناعي المستقلين.اكتب سكربتات الأتمتة بـ TypeScript نظيف:
import { Java } from 'exoproc';
// 1. Read Java version from target JVM process
const System = Java.type('java.lang.System');
print(`[+] Java Version: ${System.getProperty('java.version')}`);
// 2. Access JVM classes or handle missing APIs cleanly
try {
const Nashorn = Java.type('jdk.nashorn.api.scripting.NashornScriptEngine');
print('[+] Nashorn engine ready');
} catch (err: any) {
print(`[-] Error: ${err.message}`);
}
نفّذ فورًا ضد العملية الهدف:
exoproc run script.ts
المخرجات:
[+] Java Version: 21.0.8
[-] Error: jdk.nashorn.api.scripting.NashornScriptEngine
| الحزمة | الوصف |
|---|---|
exoproc | مكتبة عميل عالية المستوى، وتنسيق الـ daemon، وجسور Minecraft |
exoproc-tool | أوامر CLI (run، navigate، status) وخادم Model Context Protocol (MCP) |
bun-njava | جسور انعكاس JNI و Agent، ووكلاء أصناف ديناميكيون (Java.type)، وتعيينات |
njava-agent | حقن bytecode لـ Java عالي السرعة داخل العملية ووكيل RPC |
njava-runtime | سياقات تنفيذ Java معيارية وطبقة توافق Nashorn |
bun-nhook | اعتراض دالة مضمّن بحجم 2 بايت دون تخصيص ذاكرة (EB FE park & simulate) |
bun-minhook | اعتراض detour بأسلوب trampoline عبر jmp نسبي بحجم 5 بايت عبر حدود العمليات |
bun-nthread | محرك اختطاف الخيوط وإعادة توجيه السياق |
bun-xffi | أنواع C-ABI منخفضة المستوى، ووحدات الوصول إلى الذاكرة، و TinyCC JIT وقت التشغيل |
bun-winapi | مقابض Win32 API مُنمَّطة، وإدارة الذاكرة، ولقطات العمليات |
@exoproc/simulate | آلة افتراضية x86_64 مستقلة داخل المتصفح، ونواة محاكاة نظام التشغيل، ومُصحِّح أخطاء |
docs | موقع توثيق Next.js 16 + Fumadocs ومختبرات تصحيح تفاعلية |
bun install # install dependencies & Capstone assets
bun run build # build all monorepo packages
bun test # run unit test suite
bun run web # start local documentation website (http://localhost:3000)
راجع examples/ للحصول على مشاريع تجريبية مستقلة قابلة للتشغيل ضد عمليات هدف حقيقية.
يتوفر توثيق كامل بالتركية والإنجليزية، ومختبرات تصحيح تفاعلية، وأدلة معمارية في apps/docs أو عبر:
bun run web
راجع CONTRIBUTING.md لإعداد التطوير، وسير عمل الاختبار عبر Wine، ومعايير الترميز.
هل وجدت ثغرة أمنية؟ يرجى مراجعة SECURITY.md لمعرفة كيفية الإبلاغ عنها بمسؤولية بدلًا من فتح issue عام.