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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Project-Onyx — التهرب المتقدم من أنظمة EDR عبر انتحال قياسات الذكاء الاصطناعي عن بُعد وعزل WASM. مشروع Onyx هو خط أنابيب إثبات مفهوم (PoC) لفريق أحمر (Red Team)، مصمم لتوضيح تقنيات تهرب متقدمة ضد أنظمة EDR الحديثة. يبتعد عن التعتيم التقليدي القائم على التوقيعات نحو التمويه السلوكي والربط البيئي الصارم. | Kitploit
أدوات/GitHubGitHub/x-3306/project-onyx
الهندسة العكسيةشيل كودإخفاء المعلوماتالتشفيرالقيادة والسيطرةالتعلم والتعليمالفريق الأحمرتطوير الحمولاتأمن الذكاء الاصطناعي
GitHubx-3306/project-onyx

Project-Onyx

عرض المستودع
1151658منذ 2 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

حول

التهرب المتقدم من أنظمة EDR عبر انتحال قياسات الذكاء الاصطناعي عن بُعد وعزل WASM. مشروع Onyx هو خط أنابيب إثبات مفهوم (PoC) لفريق أحمر (Red Team)، مصمم لتوضيح تقنيات تهرب متقدمة ضد أنظمة EDR الحديثة. يبتعد عن التعتيم التقليدي القائم على التوقيعات نحو التمويه السلوكي والربط البيئي الصارم.

مشاركة

Banner

Project Onyx

مراوغة متقدمة لأنظمة EDR عبر انتحال قياسات الذكاء الاصطناعي (AI Telemetry Spoofing) وعزل WASM. Project Onyx هو خط أنابيب Red Team (PoC) مصمم لعرض تقنيات مراوغة متقدمة ضد أنظمة EDR الحديثة. يبتعد عن أساليب الإخفاء التقليدية القائمة على التوقيعات نحو التمويه السلوكي والربط البيئي الصارم.

هذا المشروع هو بحث Red Team (إثبات مفهوم) يدرس خط أنابيب تنفيذ غير تقليدي متعدد الطبقات. تسلسل البنية المعمارية خمس تقنيات متميزة: تمويه قياسات الذكاء الاصطناعي، الربط البيئي المرتبط بالعتاد، إخفاء أوزان ONNX (steganography)، عزل WebAssembly في الذاكرة، وقناة Dead-Drop C2 عبر تحديثات النموذج التنزيلية --> في سلسلة توصيل وظيفية واحدة.

لا يدّعي Project Onyx تجاوزًا عمليًا لأنظمة EDR الإنتاجية. إنه مخطط معماري: كل مكوّن منفَّذ وعامل كجزء من السلسلة، لكن كل طبقة تتطلب بحثًا مخصصًا لتصبح ذات معنى ضد الدفاعات الواقعية.Project Onyx من الأفضل فهمه كنقطة انطلاق منظمة لهذا النوع من الاستكشاف. الحمولة وقت التشغيل محدودة عمدًا بمنارة نبض (heartbeat beacon)، مما يسمح بفحص خط الأنابيب بالكامل دون تضمين سلوك تخريبي أو سلوك ما بعد الاستغلال.

المفاهيم الأساسية / التحديث = Project Onyx v2

  1. الشرك الذكي (التمويه السلوكي): الآن، يضمّن Project Onyx نموذج SqueezeNet 1.0 ONNX شرعيًا لتصنيف الصور مصدره مرآة ONNX Model Zoo على Hugging Face. قبل تنفيذ وحدة نبض WebAssembly، يشغّل المضيف أعباء استدلال تنسوري حقيقية متكررة باستخدام onnxruntime من Microsoft. وهذا يجعل قطعة ONNX جزءًا نشطًا من خط الأنابيب بدلاً من ملف زخرفي مثل شبكة MLP الصغيرة السابقة.
  2. الربط البيئي (Environmental Keying): يرفع بشكل كبير مستوى الصعوبة أمام تحليل العزل (sandbox) والهندسة العكسية دون الوصول إلى الجهاز المستهدف نفسه. تُشتق مفاتيح فك التشفير ديناميكيًا من تجزئة SHA-256 لكلٍ من MachineGuid وVolume Serial Number للهدف وcurrent user's SID.
  3. العزل عبر WASM (WASM Sandboxing): تُترجم الحمولة الفعلية إلى WebAssembly (WASM) وتُنفَّذ بالكامل في الذاكرة باستخدام مفسّر wasm3. يعمل تطبيق C++ المضيف كمجرد مُحمِّل وجسر API، ويكشف دوال مضيفة آمنة لعزل WASM.
  4. خزنة أوزان ONNX (ONNX Weight Vault): تُضمَّن مادة مفتاح AES-256 المطلوبة لفك تشفير وحدة نبض WebAssembly في وحدات البت الأقل دلالة من الجزء العشري (mantissa) لأوزان ONNX من نوع float32. يستخرج المضيف هذه الخزنة من بايتات النموذج المضمّنة، ويتحقق من مصادقتها، وعندها فقط يستعيد مادة المفتاح التجريبي.
  5. خزنة البيانات الوصفية الاحتياطية (Metadata Vault Fallback): تبقى خزنة البيانات الوصفية الموثَّقة الأصلية للتوافق والتحقق وقت البناء. تفضّل الأصول الجديدة خزنة الأوزان، بينما توثق خزنة البيانات الوصفية نفس المادة المحمية في صيغة يسهل فحصها أكثر.
  6. قناة Dead-Drop C2 عبر تحديثات النموذج التنزيلية: يعرض خط الأنابيب قناة اتصال خفية باستخدام تحديثات نماذج ONNX. يمكن للمشغّل تضمين توجيه موثَّق داخل وحدات البت الأقل دلالة (LSBs) للأوزان التي تغيّرت طبيعيًا أثناء الضبط الدقيق. تُحدَّد هذه التغييرات عبر تحليل الفروقات (delta analysis) بين النموذج المحدَّث والنموذج المرجعي (الأساسي). للحفاظ على نطاق PoC آمن، يقبل وقت التشغيل توجيهَي heartbeat_ack وset_status فقط، مما يثبت قابلية القناة للعمل دون تمكين تنفيذ أوامر عشوائية.

Project Onyx Chain

موصى به بشدة

راجع docs/architecture.md للمخطط التقني الكامل من البداية إلى النهاية. (أنصح بالاطلاع عليه لفهم أفضل).

وكذلك العملية الكاملة: أخطائي، والمفاهيم والأفكار التي درستها على طول الطريق، والمقايضات المعمارية التي واجهتها أثناء بناء Project Onyx --> Medium

إخلاء المسؤولية القانوني

أُنشئ هذا المشروع لأغراض تعليمية وبحث أمني وعمليات Red Team مرخّصة فقط.

التقنيات المعروضة في هذا المستودع (Project Onyx) تهدف إلى مساعدة المتخصصين الأمنيين على فهم طرق المراوغة المتقدمة وتحسين دفاعات نقطة النهاية (EDR/XDR).

لا تستخدم هذا البرنامج على أي نظام أو شبكة لا تملكها أو ليس لديك إذن كتابي صريح لاختبارها.

لا يتحمل مؤلف هذا المشروع (X-3306) أي مسؤولية ولا يُسأل عن أي إساءة استخدام أو ضرر أو أنشطة غير قانونية ناتجة عن استخدام هذا البرنامج. بتحميلك هذا الكود أو تجميعه أو استخدامه، فأنت توافق على تحمل المسؤولية الكاملة عن أفعالك.

هيكل المستودع

  • DiagnosticsTool.cpp - مضيف C++ لنظام Windows وتكامل Wasm3/ONNX.
  • DiagnosticsTool.rc / resource.h - ارتباطات الموارد (resource bindings) للأصول المُنشأة.
  • build.py - أداة مساعدة لأخذ البصمات، توليد طُعم ONNX، تضمين خزنة الأوزان، توافق خزنة البيانات الوصفية، قناة Dead-Drop C2 عبر تحديثات النموذج، وتشفير WASM.
  • wasm_license_module/ - كود Rust المصدري لوحدة نبض WebAssembly.
  • wasm3/source/ - نسخة مصغّرة مُضمّنة من كود Wasm3 المصدري المطلوب لبناء CMake.
  • assets/README2.md - صيغ الأصول المُنشأة.
  • docs/architecture.md - سلسلة وقت التشغيل الكاملة وملاحظات البنية المعمارية.

المتطلبات الأساسية

ثبّت هذه المتطلبات على Windows قبل البناء:

  • Visual Studio 2022 مع عبء عمل تطوير سطح المكتب باستخدام C++.
  • CMake 3.25 أو أحدث.
  • Python 3.10 أو أحدث.
  • Rustup وCargo.
  • Git.

تبعيات Python:

root@kitploit:~
py -m pip install onnx numpy cryptography

هدف Rust:

root@kitploit:~
rustup target add wasm32-unknown-unknown

البناء الثابت لـ ONNX Runtime

يتوقع ملف CMake شجرة مصدر/بناء ONNX Runtime في ./onnxruntime ويربط مكتبات المكونات الثابتة من:

  • onnxruntime/build/Windows/Release/Release
  • onnxruntime/build/Windows/Release/vcpkg_installed/x64-windows-static-md/lib

من Developer PowerShell الخاص بـ VS 2022، ابنِ ONNX Runtime على النحو التالي:

root@kitploit:~
git clone --recursive https://github.com/microsoft/onnxruntime.git onnxruntime
.\onnxruntime\build.bat --config Release --parallel --compile_no_warning_as_error --skip_tests --build_shared_lib --use_vcpkg --cmake_extra_defines VCPKG_TARGET_TRIPLET=x64-windows-static-md onnxruntime_BUILD_UNIT_TESTS=OFF

لا يتم توزيع onnxruntime.dll المُنشأ مع Project Onyx. يربط Project Onyx ملفات المكونات الثابتة .lib ويجب ألا يُدرج الملف التنفيذي النهائي onnxruntime.dll في dumpbin /DEPENDENTS.

توليد الأصول

احصل على بصمة التجزئة (fingerprint hash) لجهاز Windows الحالي:

root@kitploit:~
python build.py fingerprint --show-components

استخدم السطر الثاني المطبوع كقيمة --trigger.

ابنِ وحدة Rust WebAssembly:

root@kitploit:~
cargo build --manifest-path wasm_license_module/Cargo.toml --target wasm32-unknown-unknown --release

ولّد assets/model.onnx وassets/license_module.wasm.aes:

root@kitploit:~
python build.py build `
  --trigger "<64-char lowercase fingerprint hash>" `
  --secret "<exactly-32-demo-key-chars>" `
  --model-output assets/model.onnx `
  --wasm-input wasm_license_module/target/wasm32-unknown-unknown/release/wasm_license_module.wasm `
  --wasm-output assets/license_module.wasm.aes

تحقق من خزائن ONNX:

root@kitploit:~
python build.py verify --trigger "<64-char lowercase fingerprint hash>" --model assets/model.onnx

يتحقق أمر التحقق من كلٍّ من خزنة البيانات الوصفية القديمة وخزنة أوزان ONNX المخفية. يجب أن يفتح كلاهما نفس مادة المفتاح التجريبي المكوّنة من 32 حرفًا.

نموذج ONNX حقيقي

الناقل الافتراضي هو SqueezeNet 1.0 opset 12:

  • المصدر: onnxmodelzoo/squeezenet1.0-12
  • الملف: assets/base/squeezenet1.0-12.onnx
  • الترخيص: Apache-2.0 على بطاقة نموذج Hugging Face
  • المدخل: data_0, float[1, 3, 224, 224]
  • المخرج: softmaxout_1, float[1, 1000, 1, 1]
  • الحجم: حوالي 4.95 MB
  • أوزان float32: حوالي 1.23 مليون

اجلب النموذج الأساسي المُرفق أو تحقق منه:

root@kitploit:~
python build.py fetch-model

تنسخ build.py build هذا النموذج الحقيقي، وتضيف بيانات تعريف Project Onyx الوصفية، وتضمّن خزنة أوزان ONNX الموثَّقة في وحدات البت الأقل دلالة (LSBs) لمهيّئات float32، وتكتب النموذج المرجعي النهائي إلى assets/model.onnx.

قناة Dead-Drop C2 للنبض فقط عبر تنزيل تحديث النموذج

الوصلة التنزيلية الإضافية هي امتداد بحثي لاختبار ما إذا كان تحديث نموذج ONNX عادي يمكنه حمل إشارة تحكم صغيرة موثقة كـ PoC بسيط. وهي محدودة عمدًا بتوجيهين آمنين:

  • heartbeat_ack - يغيّر حالة نبض وقت التشغيل إلى heartbeat_ack.
  • set_status - يغيّر حالة نبض وقت التشغيل إلى سلسلة آمنة يختارها المشغّل مثل lab_downlink_ack.

أنشئ نموذج تحديث مخبري:

root@kitploit:~
python build.py downlink-build `
  --trigger "<64-char lowercase fingerprint hash>" `
  --reference-model assets/model.onnx `
  --output assets/downlink_update.onnx `
  --command set_status `
  --status lab_C2_test `
  --expires-unix 4102444800 `
  --cover-seed 2026 `
  --cover-fraction 0.08 `
  --cover-noise-scale 0.00004

تحقق منه قبل الاستخدام:

root@kitploit:~
python build.py downlink-verify `
  --trigger "<64-char lowercase fingerprint hash>" `
  --reference-model assets/model.onnx `
  --model assets/downlink_update.onnx

تكوين Webhook والنموذج

وجّهه إلى قطعة نموذج HTTPS خام، على سبيل المثال أصل إصدار عام:

root@kitploit:~
$env:PROJECT_ONYX_DOWNLINK_MODEL_URL = "https://huggingface.co/<profile>/<repo>/resolve/main/downlink_update.onnx"
.\build\Release\ProjectOnyx.exe

أو استخدم webhook Slack/Teams:

لا يضمّن Project Onyx عنوان URL حقيقيًا لـ webhook. للتشغيل المختبري المصرّح به، عيّن:

يجب أن يكون المتغير مرئيًا للعملية التي تشغّل ProjectOnyx.exe. إذا نقرت نقرًا مزدوجًا على الملف التنفيذي، فعيّنه كمتغير بيئة للمستخدم أو للنظام أولاً، ثم افتح طرفية جديدة أو أعد تشغيل Explorer، وشغّل المضيف الأصلي مع نموذج تحديث محلي:

root@kitploit:~
$env:PROJECT_ONYX_DOWNLINK_MODEL_PATH = "$($PWD.Path)\assets\downlink_update.onnx"; $env:PROJECT_ONYX_SLACK_WEBHOOK_URL = "https://hooks.slack.com/services/..."; .\build\Release\ProjectOnyx.exe

(يمكنك أيضًا استخدام Teams)

يقوم وقت التشغيل بجلب/قراءة واحدة عند الإقلاع. لا يستقصي أو يستمر أو ينفّذ كودًا مُنزَّلاً أو يعالج أوامر عشوائية. يتم تجاهل تحديثات النماذج غير الصالحة أو المنتهية أو غير المرتبطة أو غير الموثَّقة.

مقابض التحقق في وقت التشغيل:

root@kitploit:~
$env:PROJECT_ONYX_ONNX_TELEMETRY_PASSES = "24"
$env:PROJECT_ONYX_REQUIRE_ONNX_TELEMETRY = "1"
$env:PROJECT_ONYX_LAB_OUTPUT_PATH = "$($PWD.Path)\assets\lab_heartbeat.json"

مهم، يُرجى القراءة: النموذج المرجعي والضبط الدقيق والفروقات الطبيعية

يتحكم PROJECT_ONYX_ONNX_TELEMETRY_PASSES في عدد استدلالات ONNX Runtime الحقيقية التي تعمل قبل متابعة مسار فتح الخزنة. يحوّل PROJECT_ONYX_REQUIRE_ONNX_TELEMETRY=1 إخفاقات القياسات إلى إخفاقات صارمة، وهو مفيد عند التحقق من عدم تخطي مرحلة ONNX. يكتب PROJECT_ONYX_LAB_OUTPUT_PATH نبضة JSON النهائية إلى ملف محلي للتحقق المختبري دون الحاجة إلى webhook.

يشحن هذا المستودع نموذج SqueezeNet مرجعيًا حقيقيًا لأنه صغير بما يكفي لـ GitHub مع كونه شبكة عصبية مدربة مشروعة. للحصول على قطعة بحثية أقوى، أنشئ نموذجًا محدثًا عبر ضبط دقيق حقيقي أو عملية صيانة نماذج عادية أخرى. يمكن للمضمّن التنزيلي بعد ذلك حصر تغييرات البتات في الأوزان التي تغيّرت بالفعل مقارنة بالنموذج المرجعي. هذا هو الإصدار العملي لفكرة "إخفاء داخل ضجيج الضبط الدقيق"، رابط المشروع الجانبي الكامل: https://github.com/X-3306/ONNXStego

للتحقق المختبري السريع، يمكن لـ downlink-build توليف تحديث غلاف عشوائي مُبذَّر (seeded) يشبه الضبط الدقيق من النموذج المرجعي. يثبت ذلك الآليات من البداية إلى النهاية ويعطي أوزانًا طبيعية مرشحة لسجل LSB، لكنه ليس بديلاً عن التقييم التجريبي على مهمة ومجموعة بيانات وإجراء ضبط دقيق حقيقيين.

البناء النهائي

هيّئ وابنِ الملف التنفيذي للإصدار:

root@kitploit:~
cmake -S . -B build -G "Visual Studio 17 2022" -A x64
cmake --build build --config Release

الملف التنفيذي النهائي هو:

root@kitploit:~
build\Release\ProjectOnyx.exe

فحص تبعيات اختياري:

root@kitploit:~
& "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\bin\Hostx64\x64\dumpbin.exe" /DEPENDENTS build\Release\ProjectOnyx.exe

المتوقع: لا يوجد اعتماد على onnxruntime.dll.

النطاق

لا يتضمن العرض التوضيحي الثبات (persistence) أو تصعيد الامتيازات أو الوصول إلى بيانات الاعتماد أو الحركة الجانبية أو تنفيذ أوامر عشوائية أو سلوكًا تخريبيًا أو رموز webhook خاصة مرفقة. وحدة WebAssembly مقيدة بتنسيق وإرجاع نبضة JSON كـ PoC بسيط. يمكن للوصلة التنزيلية الإضافية لتحديث النموذج فقط تغيير حالة النبض عبر القائمة البيضاء heartbeat_ack / set_status. إذا كانت لديك أفكار مثيرة للاهتمام لهذا المشروع، فلا تتردد في التواصل: [email protected]

Project Onyx Daily Trend Project Onyx Weekly Trend

تنزيل الأداة