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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
TripleCross — روتكيت Linux eBPF مع باب خلفي، خادم تحكم وأوامر (C2)، حقن مكتبات، اختطاف تنفيذ، قدرات الثبات والخفاء. | Kitploit
أدوات/GitHubGitHub/h3xduck/triplecross
تصعيد الامتيازاتآليات الاستمراريةالقيادة والسيطرةالتعلم والتعليم
GitHubh3xduck/triplecross

TripleCross

روتكيت Linux eBPF مع باب خلفي، خادم تحكم وأوامر (C2)، حقن مكتبات، اختطاف تنفيذ، قدرات الثبات والخفاء.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

TripleCross

License GitHub release (latest by date including pre-releases) Maintainability GitHub last commit

TripleCross هو روتكيت (rootkit) لنظام لينكس يعتمد على تقنية eBPF، ويوضح القدرات الهجومية لهذه التقنية.

تم استلهام TripleCross من تصاميم سابقة في هذا المجال، خاصة أعمال Jeff Dileo في DEFCON 271، و Pat Hogan في DEFCON 292، و Guillaume Fournier و Sylvain Afchain أيضًا في DEFCON 293، و Boopkit لكريس نوفا4. نحن نعيد استخدام ونوسع بعض التقنيات التي ابتكرتها هذه الاستكشافات السابقة للقدرات الهجومية لتقنية eBPF.

تم إنشاء هذا الروتكيت كجزء من مشروع نهاية درجة البكالوريوس في جامعة UC3M. توجد تفاصيل إضافية حول تصميمه في وثيقة الأطروحة.

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

هذا الروتكيت هو لأغراض تعليمية وأكاديمية بحتة. يتم توفير البرنامج "كما هو" والمؤلفون غير مسؤولين عن أي ضرر أو مشاكل قد تحدث أثناء استخدامه.

لا تحاول استخدام TripleCross لانتهاك القانون. قد يؤدي سوء استخدام البرنامج والمعلومات المقدمة إلى تهم جنائية.

المحتويات

  1. الميزات
  2. نظرة عامة على TripleCross
  3. البناء والتثبيت
  4. وحدة حقن المكتبات
  5. الباب الخلفي وC2
  6. وحدة اختطاف التنفيذ
  7. استمرارية الروتكيت
  8. تخفي الروتكيت
  9. الترخيص

Features

  1. وحدة حقن مكتبات لتنفيذ تعليمات برمجية خبيثة عن طريق الكتابة في الذاكرة الافتراضية لعملية.
  2. وحدة اختطاف تنفيذ تقوم بتعديل البيانات المرسلة إلى النواة لتنفيذ برامج خبيثة.
  3. وحدة رفع صلاحيات محلي تتيح تنفيذ برامج خبيثة بصلاحيات الجذر (root).
  4. باب خلفي مع قدرات C2 يمكنه مراقبة الشبكة وتنفيذ أوامر مرسلة من عميل الروتكيت عن بُعد. يتضمن مشغلات تفعيل متعددة لنقل هذه الإجراءات بشكل متخفي.
  5. عميل الروتكيت يسمح للمهاجم بإنشاء 3 أنواع مختلفة من الاتصالات الشبيهة بالشل (shell) لإرسال الأوامر والإجراءات التي تتحكم في حالة الروتكيت عن بُعد.
  6. وحدة استمرارية تضمن بقاء الروتكيت مثبتًا مع الحفاظ على الصلاحيات الكاملة حتى بعد إعادة التشغيل.
  7. وحدة تخفي تخفي الملفات والدلائل المتعلقة بالروتكيت عن المستخدم.

TripleCross overview

يوضح الشكل التالي بنية TripleCross ووحداته.

مكتبة المقابس الخام RawTCP_Lib المستخدمة في إرسالات الروتكيت هي من تأليفي ولها مستودع خاص بها.

يصف الجدول التالي ملفات وأدلة المصدر الرئيسية لتسهيل التصفح:

الدليلالوصف
docsوثيقة الأطروحة الأصلية
src/clientالكود المصدري لعميل الروتكيت
src/client/libمكتبة RawTCP_Lib المشتركة
src/commonالثوابت والإعدادات للروتكيت. يتضمن أيضًا تنفيذ العناصر المشتركة بين جانب eBPF وجانب مساحة المستخدم للروتكيت، مثل المخزن المؤقت الحلقي (ring buffer)
src/ebpfالكود المصدري لبرامج eBPF المستخدمة من قبل الروتكيت
src/helpersيتضمن برامج لاختبار وظائف عدة وحدات للروتكيت، بالإضافة إلى البرنامج الخبيث والمكتبة المستخدمة في وحدتي اختطاف التنفيذ وحقن المكتبات، على التوالي
src/libbpfيحتوي على مكتبة libbpf المدمجة مع الروتكيت
src/userالكود المصدري لبرامج مساحة المستخدم المستخدمة من قبل الروتكيت
src/vmlinuxرؤوس تحتوي على تعريف لهياكل بيانات النواة (هذه هي الطريقة الموصى بها عند استخدام libbpf)

Build and Install

المتطلبات

تم اختبار هذا المشروع البحثي في البيئات التالية:

التوزيعةالنواةGCCCLANGGLIBC
الإصدارUbuntu 21.045.11.010.3.012.0.02.33

نوصي باستخدام Ubuntu 21.04، والذي سيتضمن افتراضيًا إصدارات البرامج الموضحة هنا. بخلاف ذلك، تم وصف بعض المشكلات التي قد تواجهها هنا.

التجميع

يتم تجميع الكود المصدري للروتكيت باستخدام ملفي Makefile.```

Build rootkit

cd src make all

Build rootkit client

cd client make

الجدول التالي يصف الغرض من كل ملف Makefile بالتفصيل:

| ملف Makefile  | الأمر | الوصف | الملفات الناتجة |
| ------------- | ------------- | ------------- | ------------- |
| src/client/Makefile  | make  | تجميع عميل الروتكيت | src/client/injector |
| src/Makefile  | make help  | تجميع البرامج لاختبار إمكانيات الروتكيت، والبرنامج الخبيث والمكتبة لوحدتي اختطاف التنفيذ وحقن المكتبة، على التوالي | src/helpers/simple_timer, src/helpers/simple_open, src/helpers/simple_execve, src/helpers/lib_injection.so, src/helpers/execve_hijack |
| src/Makefile | make kit | تجميع الروتكيت باستخدام مكتبة libbpf | src/bin/kit |
| src/Makefile | make tckit | تجميع برنامج الخروج TC للروتكيت | src/bin/tc.o |

### التثبيت
بمجرد إنشاء ملفات الروتكيت داخل src/bin/، يجب تحميل برامج *tc.o* و *kit* بالترتيب. في المثال التالي، سيعمل الباب الخلفي للروتكيت على واجهة الشبكة *enp0s3*:```
// TC egress program
sudo tc qdisc add dev enp0s3 clsact
sudo tc filter add dev enp0s3 egress bpf direct-action obj bin/tc.o sec classifier/egress
// Libbpf-powered rootkit
sudo ./bin/kit -t enp0s3

نصوص سيناريوهات الهجوم

هناك نصان برمجيان، packager.sh و deployer.sh، يقومان بتجميع وتثبيت الروتكيت تلقائيًا، تمامًا كما يفعل المهاجم في سيناريو هجوم حقيقي.

  • تنفيذ packager.sh سيُنتج جميع ملفات الروتكيت داخل دليل apps/.

  • تنفيذ deployer.sh سيُثبّت الروتكيت ويُنشئ ملفات الاستمرارية.

يجب تكوين هذه النصوص أولاً بالمعاملات التالية لضمان عمل وحدة الاستمرارية بشكل صحيح:

النص البرمجيالثابتالوصف
src/helpers/deployer.shCRON_PERSISTمهمة كرون ليتم تنفيذها بعد إعادة التشغيل
src/helpers/deployer.shSUDO_PERSISTإدخال سودو لمنح صلاحيات بدون كلمة مرور

وحدة حقن المكتبات

يمكن للروتكيت اختطاف تنفيذ العمليات التي تستدعي استدعاءات النظام sys_timerfd_settime أو sys_openat. يتم تحقيق ذلك عن طريق الكتابة فوق قسم جدول العناوين العام (GOT) في الذاكرة الافتراضية للعملية التي تقوم بالاستدعاء. يؤدي هذا إلى تنفيذ مكتبة ضارة (src/helpers/injection_lib.c). ستقوم المكتبة بإنشاء شل عكسي إلى آلة المهاجم، ثم تُعيد تدفق التنفيذ إلى الوظيفة الأصلية دون تعطل العملية.

TripleCross مُعدّ لتجاوز تقنيات تحصين ELF الشائعة، بما في ذلك:

  • ASLR
  • Stack canaries
  • DEP/NX
  • PIE
  • Full RELRO

كما أنه مُعدّ للعمل مع كود متوافق مع Intel CET.

يمكن التحقق من وظائف الوحدة باستخدام برنامجين اختباريين src/helpers/simple_timer.c و src/helpers/simple_open.c. بدلاً من ذلك، يمكنك محاولة اختطاف أي عملية نظام (تم اختبارها وتعمل مع systemd).

يتم ضبط تكوين الوحدة عبر الثوابت التالية:

اسم الملفالثابتالوصف
src/common/constants.hTASK_COMM_NAME_INJECTION_
TARGET_TIMERFD_SETTIME
اسم العملية المطلوب اختطافها عند استدعاء النظام sys_timerfd_settime
src/common/constants.hTASK_COMM_NAME_INJECTION_
TARGET_OPEN
اسم العملية المطلوب اختطافها عند استدعاء النظام sys_openat
src/helpers/injection_lib.cATTACKER_IP & ATTACKER_PORTعنوان IP ومنفذ آلة المهاجم

Footnotes

  1. J. Dileo. Evil eBPF: إساءات عملية لبيئة تشغيل البايت كود داخل النواة. DEFCON 27. الشرائح ↩

  2. P. Hogan. تشويه الواقع: إنشاء ومواجهة الجيل التالي من روتكيتات لينكس باستخدام eBPF. DEFCON 27. العرض ↩

  3. G. Fournier و S. Afchain. eBPF، ظننت أننا أصدقاء! DEFCON 29. الشرائح ↩

  4. Kris Nóva. Boopkit. github ↩

تنزيل الأداة