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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
debloat — أداة بواجهة رسومية (GUI) وسطر أوامر (CLI) لإزالة الزوائد من الملفات التنفيذية. | Kitploit
أدوات/GitHubGitHub/squiblydoo/debloat
الهندسة العكسيةتحليل البرمجيات الخبيثةالتحاليل الرقمية الجنائيةتحليل الملفات الثنائية
GitHubsquiblydoo/debloat

debloat

أداة بواجهة رسومية (GUI) وسطر أوامر (CLI) لإزالة الزوائد من الملفات التنفيذية.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

debloat

Debloat

Debloat هي أداة بواجهة رسومية وسطر أوامر لإزالة القمامة الزائدة من الملفات التنفيذية المنتفخة.

أعني بالقمامة الزائدة 100 - 800 ميغابايت من البايتات غير المرغوب فيها المضافة إلى ملف ثنائي لمنعه من الدخول إلى صندوق الرمل (sandbox). تُسمى هذه الطريقة في إضافة القمامة "نفخ" (inflating) أو "ضخ" (pumping) الملف الثنائي. تتعامل Debloat حالياً مع أكثر 10 تكتيكات نفخ شيوعاً.

نظراً لأن التطبيق مبني بلغة بايثون، يمكن توظيفه بسهولة في سير عمل أخرى. حالياً، يُستخدم debloat في AssemblyLine الخاص بـ CCCS وMWDB الخاص بـ CERT Polska.

يمكن ترجمة البرنامج ليعمل على Windows وMacOS وLinux. تتميز الواجهة الرسومية وواجهة سطر الأوامر بخيارات محدودة؛ إذ صُمم البرنامج ليكون بسيطاً قدر الإمكان ويتولى المنطق الداخلي معالجة حالات الاستخدام المختلفة تلقائياً.

تم تضمين الملفات التنفيذية المترجمة مسبقاً في Releases.

يمكن تثبيت debloat باستخدام pip install debloat. استخدم debloat لتشغيل واجهة سطر الأوامر وdebloat-gui لتشغيل الواجهة الرسومية.

للمستخدمين المتقدمين، يمكن أيضاً استيراد Debloat إلى نصوص برمجية أخرى واستدعاء دوال المعالجة بشكل فردي.

كيف تستخدم الواجهة الرسومية؟

تهدف الواجهة الرسومية لـ Debloat إلى أن تكون بديهية قدر الإمكان. عند تشغيلها، يمكنك سحب وإفلات الملف المنتفخ على شريط النص والضغط على زر "Process file". ستُطبع بعض المعلومات التقنية في مربع النص المتحرك، وسيُكتب الملف الخالي من الانتفاخ في الدليل الذي جُلب منه الملف. يبدو سهلاً؟ إنه كذلك!

ستستغرق معالجة الملفات بضع ثوانٍ.
image

كيف تستخدم واجهة سطر الأوامر؟

بعد التثبيت باستخدام pip install debloat استخدم الأمر debloat.
يمكن أن يستقبل debloat وسيطتين. الوسيطة الأولى إلزامية: الملف المراد إزالة الانتفاخ منه. الوسيطة الثانية اختيارية: موقع الإخراج. عندما لا يتم توفير مسار إخراج، سيُكتب الملف في نفس دليل الملف الأصلي.

يمكن أيضاً تشغيل الواجهة الرسومية من سطر الأوامر باستخدام الأمر debloat-gui.

هل يعمل دائماً؟

ليس بعد. استناداً إلى تحليلي الأخير، يستطيع debloat إزالة القمامة من الملفات المنتفخة في 97.8% من الحالات.

في الإصدارات السابقة، كان بإمكان debloat إزالة جزء كبير من الملف الثنائي عن طريق الخطأ. لم يعد هذا هو الحال ما لم تستخدم المفتاح "--last-ditch". إذا احتجت يوماً إلى هذا المفتاح، ففكر في مشاركة العينة لإجراء تحليل إضافي. أُضيف هذا الخيار الآن إلى الواجهة الرسومية. وظيفياً، ما يفعله هو إزالة التراكب (overlay) بالكامل إن وُجد. في بعض الحالات يكون هذا ضرورياً لأنه لم يُعثر على نمط للقمامة---وهذا هو الأكثر شيوعاً في العينات التي لا تضغط جيداً.

حالات الاستخدام (صور من Malcat)

دعم كامل

  • انتفاخ ملحق بنهاية ملف PE موقّع.
    في الصورة أدناه، أُلحق الانتفاخ بنهاية الملف التنفيذي.
    Screenshot 2023-02-11 at 3 32 36 PM

  • ملف تنفيذي معبأ (Packed) موقّع أو غير موقّع.
    في الصورة أدناه، أُلحق الانتفاخ بالملف التنفيذي بعد التعبئة.
    Screenshot 2023-02-11 at 3 44 10 PM

  • ملف تنفيذي موقّع يتضمن انتفاخاً في قسم .rsrc الخاص بـ PE.
    في الصورة أدناه، يُحدَّد الانتفاخ على أنه موجود في قسم .rsrc ويُزال من PE.
    Screenshot 2023-02-11 at 3 35 21 PM

  • حالات يُضاف فيها الانتفاخ داخل قسم من أقسام PE.
    في الصورة أدناه، أُدرج الانتفاخ في قسم من PE باسم [0].
    Screenshot 2023-02-11 at 3 26 52 PM

  • حالات يكون فيها الملف التنفيذي من نوع Nullsoft Scriptable Installer System (NSIS والمعروف أيضاً باسم Nullsoft) هذه الملفات التنفيذية هي برامج تثبيت قد تحتوي على ملف واحد أو أكثر. قد تكون الملفات التي تحتويها خبيثة أو لا. (في بعض الأحيان يضيف المهاجمون ملفات لمجرد زيادة حجم الملف.) تُستخرج جميع الملفات داخل برنامج التثبيت إلى دليل جديد. يحتوي الدليل أيضاً على سكربت برنامج التثبيت الذي يمكن الرجوع إليه لتحديد الملفات التي قد تكون خبيثة. في الصورة أدناه، حدد Malcat الملف التنفيذي باعتباره برنامج تثبيت NSIS. image

دعم جزئي

  • حالات تكون فيها القمامة عشوائية للغاية والإنتروبيا مرتفعة للغاية. في هذه الحالات، يوجد مفتاح/خيار يُسمى "--last-ditch"

حالات استخدام أخرى

هناك حالات استخدام لا يعمل فيها البرنامج. ومع ذلك، أخطط لحل هذه الحالات قبل نشر الكثير عنها.

لماذا؟

يبدو أن عدد الأدوات المتاحة لمعالجة الملفات التنفيذية المنتفخة بسهولة محدود. أكثر الأداتين اللتين رأيتهما هما “foremost” المصممة لاستعادة الملفات الثنائية من صورة قرص و“pecheck”.

يعمل Foremost بشكل أفضل في الحالات التي تكون فيها بايتات القمامة فارغة (0x00)، ويعاني عندما يكون للملف الثنائي توقيع حقيقي أو مزيف. استخدامه لإزالة الانتفاخ من الملفات ليس غرضه الأصلي.

طُوّر Pecheck على مدى أكثر من 14 عاماً ويملك بعض خيارات سطر الأوامر المربكة. خيار إزالة المحتوى المنتفخ ليس الوظيفة الأساسية للسكربت. يجب دمج Pecheck مع أداة أخرى (disitool) للتعامل مع الملفات التنفيذية الموقّعة. في تجربتي، هناك أوقات أخرى قد يرتبك فيها pecheck ويعيد ملفاً تنفيذياً ضعف حجم الملف الأصلي المنتفخ. كل هذه العوامل تبدو مقبولة إذا كنت تتعامل مع عدد صغير من الملفات الثنائية، لكن مع زيادة عدد الملفات الثنائية والأساليب، تصبح الحاجة ملحة إلى أداة مخصصة لإزالة الانتفاخ.

Binary Refinery أداة مذهلة. كُتبت بهدف أن تكون CyberChef لسطر الأوامر. ومع أن كلتا الأداتين مذهلتان، فإن كليهما يعاني من قصور يتطلب من المستخدم معرفة الصيغ التي ينبغي تطبيقها.

توجد طرق يدوية جيدة ومتينة لإزالة الانتفاخ من الملفات الثنائية، لكنها قد تكون مملة ولا يمتلك جميع المحللين المهارات اللازمة للقيام بذلك. تزيل هذه الأداة عبء الحاجة إلى معرفة كيفية إزالة الانتفاخ يدوياً. إضافة إلى ذلك، فهي تتيح نطاقاً أوسع. المبادئ المستخدمة في السكربت تسمح بنطاق أفضل إذا كانت الأتمتة مرغوبة.

كيف تبني البرنامج؟

اتبع أوامر البناء المناسبة لمنصتك. الفرق الرئيسي بين أوامر البناء هو تنسيق الأيقونة.
MacOS
pyinstaller --onefile --noconsole --additional-hooks-dir=./hook --icon=debloat.icns gui.py

Windows
pyinstaller --onefile --noconsole --additional-hooks-dir=./hook --icon=debloat.ico gui.py

Linux
pyinstaller --onefile --noconsole --icon=debloat.ico --collect-all tkinterdnd2 gui.py

تريد المناقشة؟

فكر في الانضمام إلى خادم Discord الخاص بـ debloat.

الاعتمادات

تحية كبيرة إلى Jesko Hüttenhain مبتكر Binary Refinery. يعتمد استخراج NSIS على هندسته العكسية لتنسيق ملف NSIS. ألقِ نظرة على Binary Refinery إذا لم تكن قد فعلت ذلك.

إلى أين يتجه هذا المشروع بعد ذلك؟

المعالجة الدفعية: معالجة جميع الملفات في دليل وإنتاج تقرير.

دعم أفضل لاستخدام طرق المعالجة خارج debloat.

دعم إزالة الانتفاخ دون فك ضغط.

تنزيل الأداة