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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
e9patch — أداة قوية لإعادة كتابة الثنائيات بشكل ثابت | Kitploit
أدوات/GitHubGitHub/gjduck/e9patch
الهندسة العكسيةالاختبار العشوائيتحليل الملفات الثنائيةاستغلال الملفات الثنائية
GitHubgjduck/e9patch

e9patch

أداة قوية لإعادة كتابة الثنائيات بشكل ثابت

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

الأكثر شعبية

عرض الكل →

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

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

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

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

  E9Patch - أداة إعادة كتابة ثنائية ثابتة قوية

E9Patch هي أداة قوية لإعادة الكتابة الثنائية الثابتة للملفات الثنائية x86_64 Linux ELF. تتميز E9Patch بما يلي:

  • قابلة للتوسع: يمكن لـ E9Patch إعادة كتابة الملفات الثنائية الكبيرة/المعقدة بشكل موثوق بما في ذلك متصفحات الويب (أكبر من 100 ميغابايت).
  • متوافقة: الملف الثنائي المعاد كتابته هو بديل مباشر للملف الأصلي، دون أي تبعيات إضافية.
  • سريعة: يمكن لـ E9Patch إعادة كتابة معظم الملفات الثنائية في بضع ثوانٍ.
  • تكاليف إضافية منخفضة: من حيث الأداء والذاكرة.
  • قابلة للبرمجة: صُممت E9Patch بحيث يمكن دمجها بسهولة في مشاريع أخرى. راجع دليل مستخدم E9Tool و دليل مبرمج E9Patch لمزيد من المعلومات.

إعادة الكتابة الثنائية الثابتة تأخذ ملفًا ثنائيًا مدخلاً (ملف تنفيذي ELF أو كائن مشترك) وتُنشئ ملفًا ثنائيًا مخرجًا مع تطبيق بعض التصحيح/التعديل عليه. يمكن استخدام الملف الثنائي المُصحح كبديل مباشر للأصلي.

الإصدارات

يمكن تنزيل ملفات E9Patch الثنائية المُجمّعة مسبقًا من هنا:

  • https://github.com/GJDuck/e9patch/releases

البناء

بناء E9Patch سهل جدًا: ببساطة قم بتشغيل البرنامج النصي build.sh.

سيقوم هذا تلقائيًا ببناء أداتين:

  1. e9patch: الواجهة الخلفية لإعادة كتابة الملفات الثنائية؛ و
  2. e9tool: واجهة أمامية لفك التجميع الخطي لـ E9Patch.

مثال استخدام

يمكن استخدام E9Patch عبر الواجهة الأمامية E9Tool.

على سبيل المثال، لإضافة أداة طباعة تعليمات لجميع تعليمات xor في xterm، يمكننا استخدام الأمر التالي:

    $ ./e9tool -M 'asm=/xor.*/' -P print xterm

سيؤدي هذا إلى إنشاء نسخة معدلة من xterm مكتوبة في الملف a.out.

يمكن تشغيل xterm المعدل بشكل طبيعي، ولكنه سيقوم بطباعة سلسلة التجميع لكل تعليمات xor تم تنفيذها إلى stderr:

    $ ./a.out
    xorl %ebp, %ebp
    xorl %ebx, %ebx
    xorl %eax, %eax
    xorl %edx, %edx
    xorl %edi, %edi
    ...

للحصول على قائمة كاملة بالخيارات والأوضاع المدعومة، راجع:

    $ ./e9tool --help

المشاريع

بعض المشاريع الأخرى التي تستخدم E9Patch تشمل:

  • RedFat: نظام تعزيز أمني ثنائي يعتمد على مؤشرات منخفضة الدهون.
  • E9AFL: إدراج أداة AFL تلقائيًا في الملفات الثنائية.
  • E9Syscall: اعتراض استدعاءات النظام باستخدام إعادة الكتابة الثنائية الثابتة لـ libc.so.
  • Hopper: توليد تلقائي لحالات اختبار التضمين للمكتبات.
  • EnvFuzz: تضمين بيئة البرنامج.
  • RFF: تضمين الصندوق الرمادي لـ اختبار التزامن.
  • AutoTrace: تتبع بسيط قائم على سطر المصدر.

التوثيق

E9Patch هي أداة منخفضة المستوى مصممة لتكون قابلة للتكامل في مشاريع أخرى. لمعرفة المزيد، يرجى الاطلاع على التوثيق التالي:

  • دليل مبرمج E9Patch
  • دليل مستخدم E9Tool

الأخطاء

يمكن الإبلاغ عن الأخطاء هنا:

  • https://github.com/GJDuck/e9patch/issues

الإصدارات

الإصدار الحالي من E9Patch تم تحسينه بشكل كبير مقارنة بالنموذج الأولي الأصلي الذي تم تقييمه في ورقة PLDI'2020. على وجه التحديد:

  • الإصدار الحالي يطبق العديد من التحسينات الجديدة ويمكنه توليد ملفات ثنائية أسرع بشكل ملحوظ، أحيانًا بعامل 2x. لتمكين التحسينات الجديدة، مرر الخيار -O2 إلى E9Tool.
  • تم أيضًا تحسين تطبيق تحسين المساحة Physical Page Grouping.
  • تم تحسين تغطية التصحيح قليلاً أيضًا.
  • تم تنفيذ العديد من الميزات الجديدة (راجع التوثيق).

الترخيص

تم إصدار هذا البرنامج بموجب رخصة GNU العامة (GPL) الإصدار 3.

بعض الملفات المحددة تم إصدارها بموجب رخصة MIT (راجع مقدمة الملف).

المنشور

لمزيد من المعلومات، يرجى الاطلاع على ورقتنا في PLDI'2020:

  • Gregory J. Duck, Xiang Gao, Abhik Roychoudhury, إعادة الكتابة الثنائية دون استرداد تدفق التحكم, تصميم وتنفيذ لغة البرمجة (PLDI)، 2020.
  • عرض PLDI'2020 على Youtube

يرجى الاستشهاد بورقتنا على النحو التالي:

    @inproceedings{e9patch,
        author = {Duck, Gregory J. and Gao, Xiang and Roychoudhury, Abhik},
        title = {Binary rewriting without control flow recovery},
        year = {2020},
        publisher = {Association for Computing Machinery},
        url = {https://doi.org/10.1145/3385412.3385972},
        doi = {10.1145/3385412.3385972},
        booktitle = {Programming Language Design and Implementation (PLDI)}
    }

الشكر

تم دعم هذا العمل جزئيًا من قبل القمر الصناعي الوطني للتميز في أنظمة البرمجيات الموثوقة، بتمويل من مؤسسة الأبحاث الوطنية (NRF) سنغافورة تحت برنامج البحث والتطوير للأمن السيبراني الوطني (NCR).

تنزيل الأداة