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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
FACT_core — أداة تحليل ومقارنة البرامج الثابتة | Kitploit
أدوات/GitHubGitHub/fkie-cad/fact_core
أمان الأنظمة المدمجةالتحليل الثابتالتحليل الديناميكي (عزل)أمان إنترنت الأشياءتحليل الثغرات الأمنيةالهندسة العكسيةالتحقيق الجنائي الرقمياختراق الأجهزةأمن الأجهزةأمان الأجهزة وإنترنت الأشياءتحليل الملفات الثنائيةتحليل البرامج الثابتة
1.5k25058منذ 17 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
الأفضل في أمان الأنظمة المدمجة #3
الأفضل في تحليل البرامج الثابتة #3
الأفضل في اختراق الأجهزة #19
الأفضل في أمان الأجهزة وإنترنت الأشياء #19
الأفضل في أمن الأجهزة #7
الأفضل في أمان إنترنت الأشياء #3
GitHubfkie-cad/fact_core

FACT_core

أداة تحليل ومقارنة البرامج الثابتة

عرض المستودعالموقع الإلكتروني

شعار FACT بعدسة مكبرة كحرف C
أداة تحليل البرامج الثابتة والمقارنة (FACT)

codecov Codacy Badge Gitter chat CI Build License: GPL v3

المحتويات

  • لماذا FACT؟
  • الإعداد
  • الاستخدام
  • التوثيق
  • المساهمة
  • إضافات إضافية
  • استيراد/تصدير التحليل
  • العروض التقديمية
  • منصات التواصل
  • الشكر والتقدير
  • الترخيص

لماذا FACT؟

يمكن استخدام تحليل البرامج الثابتة لتحقيق عدة أهداف مثيرة للاهتمام. أهمها تحديد الوظائف والمكونات ونقاط الضعف الأمنية المحتملة في البرامج الثابتة في الصندوق الأسود.

تم تصميم أداة تحليل البرامج الثابتة والمقارنة (FACT) لأتمتة قدر كبير من عمل تحليل البرامج الثابتة اليدوي قدر الإمكان. تجمع FACT بين مجموعة متزايدة من التحليلات القوية لإنشاء واجهة موحدة تنقل المستخدم من عينة برامج ثابتة عشوائية إلى تحليل مكتمل. بعض الميزات الرئيسية لتحليل FACT هي أن النتائج تكون

  • قابلة للتصفح
  • قابلة للبحث
  • وقابلة للمقارنة.

علاوة على ذلك، تقدم FACT طرقًا متعددة للتنقل وتصور نتائج التحليل ومحتويات البرامج الثابتة لسهولة الوصول إليها. الواجهة الرئيسية لـ FACT هي واجهة ويب مبنية على HTML/JS/CSS يمكن استضافتها محليًا أو مشاركتها عبر الشبكة. بالإضافة إلى ذلك، تقدم FACT واجهة برمجة تطبيقات HTTP شبيهة بـ REST يمكن استكشافها باستخدام SwaggerUI مدمج. بعض الميزات الرئيسية لواجهة الويب هي:

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

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

يمكن العثور على مزيد من التفاصيل وبعض لقطات الشاشة على صفحة المشروع.

الإعداد

المتطلبات

تم تصميم FACT كتطبيق متعدد العمليات، كلما زادت النوى وذاكرة الوصول العشوائي، كان ذلك أفضل.

الحد الأدنىالموصى به
4 نوى16 نواة
8 جيجابايت RAM64 جيجابايت RAM
10 جيجابايت مساحة تخزين10* جيجابايت مساحة تخزين

[!NOTE] حوالي 10 جيجابايت مطلوبة لإعداد كود FACT والحاوية والملفات الثنائية. هناك حاجة إلى مساحة إضافية لتخزين الملفات غير المضغوطة ونتائج التحليل. يمكن أن يكون هذا على قسم أو محرك أقراص منفصل.

التثبيت المحلي

من الممكن بشكل أساسي تثبيت FACT على أي توزيعة لينكس، لكن المثبت محدود بـ

  • Debian 12/13 أو متوافق (مستقر)
  • Ubuntu 22.04/24.04/26.04 أو متوافق (مستقر)
  • Kali (تجريبي)

قد يظل التثبيت على التوزيعات القديمة (مثل Debian 11 "Bullseye" أو Ubuntu 20.04 "Focal") يعمل، لكنه لا يعتبر مستقرًا، نظرًا لأن هذه التوزيعات وصلت إلى نهاية عمرها الافتراضي.

يتطلب FACT Python 3.10–3.14 (يجب أن يكون الافتراضي في جميع التوزيعات المدعومة)

عملية الإعداد مؤتمتة إلى حد كبير ومغلفة في برنامج نصي واحد. ومع ذلك، يمكن تحديد بعض الميزات بشكل محدد. للحصول على دليل مفصل حول كيفية تثبيت FACT، راجع INSTALL.md.

[!IMPORTANT] لاحظ أنه على الرغم من الاستخدام المكثف للحاويات، لا يزال FACT يحتوي على العديد من التبعيات (ولا يوجد إلغاء تثبيت متوفر). إذا كنت ترغب في الحفاظ على نظامك نظيفًا، يمكنك تجربة أحد خيارات الإعداد المقدمة أدناه.

Vagrant

نوفر صناديق Vagrant شهرية جاهزة للاستخدام من فرعنا الرئيسي. Vagrant هي طريقة سهلة ومريحة للبدء مع FACT دون الحاجة إلى تثبيته على جهازك. فقط قم بإعداد Vagrant واستيراد الصندوق المقدم لدينا إلى VirtualBox. يمكن العثور على صناديقنا على موقع vagrantup الإلكتروني!

اطلع على كيفية البدء مع FACT و Vagrant في برنامجنا التعليمي.

Docker

هناك أيضًا نسخة معبأة في حاوية Docker، لكنها حاليًا غير مدعومة. (راجع مستودع FACT_docker لمزيد من المعلومات).

الاستخدام

يمكنك بدء تشغيل FACT عن طريق تنفيذ البرنامج النصي start_fact.py. يكتشف البرنامج النصي جميع المكونات المثبتة تلقائيًا.

root@kitploit:~
src/start_fact.py

بعد ذلك، يمكن الوصول إلى FACT على http://localhost:5000 (افتراضي) أو https://localhost (إذا تم تثبيت FACT باستخدام nginx).

يمكنك إيقاف تشغيل النظام بالضغط على Ctrl + c أو بإرسال SIGTERM إلى البرنامج النصي start_fact.py.

[!CAUTION] FACT ليس مخصصًا للاستخدام كخدمة إنترنت عامة. واجهة الويب ليست تطبيقًا محصنًا. نحاول الحد من المشكلات الأمنية من خلال تطبيق SecDevOps لكن FACT قد لا يزال يحتوي على ثغرات أمنية. تأكد من إعادة تعيين جميع كلمات المرور في تكوين FACT إذا كنت تخطط لاستضافة FACT على شبكات غير موثوقة بالكامل.

التوثيق

[!TIP] يمكن العثور على المزيد من التوثيق حول كيفية استخدام FACT على صفحات الويكي الخاصة بنا.

يمكنك أيضًا إلقاء نظرة على توثيق Sphinx الخاص بنا.

يمكن أيضًا العثور على معلومات حول ماهية FACT وكيفية عملها في الشرائح الموجودة في المجلد docs.

REST API

توفر FACT واجهة برمجة تطبيقات REST. يمكن العثور على مزيد من المعلومات على صفحة الويكي.

إدارة المستخدمين

توفر FACT مصادقة أساسية اختيارية، وإدارة الأدوار والمستخدمين. يمكن العثور على مزيد من المعلومات على صفحة الويكي.

المساهمة

أسهل طريقة للمساهمة هي كتابة إضافة خاصة بك. يمكن العثور على دليل المطورين لدينا في الويكي على GitHub.

إضافات إضافية

الإضافات الإضافية المتاحة حالياً:

  • Codescanner (⚠️ رخصة مختلفة)
    • تصنيف المقاطع (مثل ascii / code / high entropy) في الملفات الثنائية العشوائية
    • تصنيف بنية وحدة المعالجة المركزية في مقاطع الكود

استيراد / تصدير التحليل

يمكن استخدام البرنامج النصي src/firmware_import_export.py لتصدير الملفات غير المضغوطة ونتائج التحليل واستيرادها إلى مثيل FACT آخر. يتم تخزين البيانات كأرشيف ZIP، وهذا هو أيضًا التنسيق الذي يتوقعه البرنامج النصي أثناء الاستيراد. لتصدير ملفات وبيانات التحليل لصور البرامج الثابتة التي تم تحليلها، قم بتشغيل

root@kitploit:~
python3 firmware_import_export.py export FW_UID [FW_UID_2 ...] [-o OUTPUT_DIR]

[!NOTE] يمكن أن تشغل الأرشيفات المصدرة مساحة كبيرة على القرص. لا توجد علاقة ثابتة، لكنها قد تتجاوز حجم البرنامج الثابت الأصلي بعامل 2 - 10.

بعد ذلك، يمكنك استيراد الملفات المصدرة باستخدام

root@kitploit:~
python3 firmware_import_export.py import FW.zip [FW_2.zip ...]

العروض التقديمية

BlackHat Arsenal

كنا سعداء بعرض FACT في عدد من جلسات BlackHat Arsenal.

  • Black Hat Arsenal
  • Black Hat Arsenal
  • Black Hat Arsenal
  • Black Hat Arsenal
  • Black Hat Arsenal

أخرى

  • Hardwear.io 2017 / الشرائح
  • Pass the salt 2019 / الشرائح / الفيديو
  • Hardwear.io 2019

منصات التواصل

  • Twitter
  • Gitter

الشكر والتقدير

شكرًا لـ @botlabsDev، الذي قدم في البداية Vagrantfile الذي أصبح الآن، ومع ذلك، غير مستخدم.

هذا المشروع ممول جزئيًا من قبل المكتب الاتحادي الألماني لأمن المعلومات (BSI) وآخرين.

الترخيص

أداة تحليل البرامج الثابتة والمقارنة (FACT)

حقوق النشر (C) 2015-2026 Fraunhofer FKIE

هذا البرنامج هو برنامج مجاني: يمكنك إعادة توزيعه و/أو تعديله بموجب شروط رخصة GNU العامة كما نشرتها مؤسسة البرمجيات الحرة، إما الإصدار 3 من الترخيص، أو (حسب اختيارك) أي إصدار لاحق. يتم توزيع هذا البرنامج على أمل أن يكون مفيدًا، ولكن دون أي ضمان؛ حتى دون الضمان الضمني للتسويق أو الملاءمة لغرض معين. راجع رخصة GNU العامة لمزيد من التفاصيل. يجب أن تكون قد تلقيت نسخة من رخصة GNU العامة مع هذا البرنامج. إذا لم يكن الأمر كذلك، راجع http://www.gnu.org/licenses/.

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

تنزيل الأداة