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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
facedancer — نفّذ جهاز USB الخاص بك بلغة Python، مدعومًا بطرفية عتادية مثل Cynthion أو GreatFET | Kitploit
أدوات/GitHubGitHub/greatscottgadgets/facedancer
أمان الأنظمة المدمجةالتقاط وتحليل الحزمالهندسة العكسيةالاختبار العشوائياختراق الأجهزةالأدوات والمكوناتأمان الأجهزة وإنترنت الأشياءالفريق الأحمر
GitHubgreatscottgadgets/facedancer

facedancer

نفّذ جهاز USB الخاص بك بلغة Python، مدعومًا بطرفية عتادية مثل Cynthion أو GreatFET

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

الأكثر شعبية

عرض الكل →

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

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

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

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

Facedancer 3.0

يضم هذا المستودع الجيل التالي من برمجيات Facedancer. ينحدر من Facedancer الأصلي القائم على GoodFET، ويوفر هذا المستودع وحدة Python تقدّم دعمًا موسّعًا لـ Facedancer -- بما في ذلك دعم لوحات متعددة وبعض الميزات الجديدة المهمة جدًا.

توثيق المشروع

توثيق Facedancer متاح على Read the Docs. مصادر التوثيق الخام موجودة في مجلد docs/.

التثبيت

ثبّت هذه الحزمة بالأمر التالي:

pip install facedancer

بعد ذلك يمكنك استيراد حزمة facedancer كالمعتاد:

$ python
>>> import facedancer

أين سكربتاتي؟

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

إذا كنت تستخدم سكربتات أو مواد تدريبية تعتمد على ميزات أو واجهات برمجية مهجورة في v3.0.x، يمكنك تثبيت أحدث إصدار v2.9.x من Facedancer باستخدام:

pip install "facedancer<=3"

يمكن العثور على التطبيقات والأمثلة القديمة في فرع v2.9.x.

ما هو Facedancer؟

لوحات Facedancer هي أجهزة عتادية بسيطة تعمل كوحدات تحكم USB "تُتحكَّم عن بُعد". باستخدام البرمجيات المناسبة، يمكنك استخدام هذه اللوحات لمحاكاة أجهزة USB بسرعة وسهولة -- ولاختبار (fuzz) وحدات تحكم مضيف USB!

يتيح لك هذا المستودع البرمجي تحديدًا إنشاء محاكاة لأجهزة USB في Python بسهولة. التحكم دقيق بما يكفي لتتمكن من إحداث جميع أنواع السلوكيات الخاطئة في USB. :)

لمزيد من المعلومات، راجع:

  • منشور مدونة Travis Goodspeed حول Facedancer
  • The Facedancer 21، اللوحة المدعومة الأصلية

USBProxy 'Nouveau' وتحليل البروتوكولات

من الميزات الجديدة الرئيسية في قاعدة شيفرة Facedancer الأحدث هي القدرة على تنفيذ MITM (Meddler-In-The-Middle) على اتصالات USB -- لتحل محل أحد مشاريع المؤلفين الأصلية USBProxy. يفتح هذا عالمًا جديدًا بالكامل من التطبيقات -- بما في ذلك تحليل البروتوكولات والتلاعب المباشر بحزم USB -- وهو مفيد بشكل خاص عندما لا تتحكم بالبرمجيات التي تعمل على الجهاز الهدف (مثل الأنظمة المدمجة أو أجهزة الألعاب).

                 +-----------------------------------------------------------------------+
+------------+   |  +--------------------------------+   +---------------------------+   |  +--------------+
|            |   |  |                                |   |                           |   |  |              |
|  PROXIED   |   |  |         HOST COMPUTER          |   |    FACEDANCER DEVICE      |   |  |  TARGET USB  |
|   DEVICE   <------>  running Facedancer software   <--->  acts as USB-Controlled   <------>     HOST     |
|            |   |  |                                |   |      USB Controller       |   |  |              |
|            |   |  |                                |   |                           |   |  |              |
+------------+   |  +--------------------------------+   +---------------------------+   |  +--------------+
                 |                                                                       |
                 |                    MITM Setup (HOST + FACEDANCER)                     |
                 +-----------------------------------------------------------------------+

هذه الميزة مكتملة، لكنها تحتاج إلى مزيد من التوثيق. طلبات السحب (Pull requests) مرحّب بها. :)

كيف أستخدم هذا المستودع؟

أولًا، ستحتاج على الأرجح إلى تعيين متغير البيئة BACKEND، الذي يُعلِم البرمجيات بنوع لوحة Facedancer التي تريد استخدامها. إذا لم يُعيَّن هذا المتغير، ستحاول البرمجيات التخمين نيابةً عنك بناءً على ما هو متصل. لا تكون تخميناتها الأفضل دائمًا، لذا من الأفضل على الأرجح تعيينه بنفسك.

بعد ذلك، ستحتاج على الأرجح إلى الاطلاع على أحد الأمثلة، أو أحد السكربتات الجاهزة. توجد الأمثلة بالصيغة الجديدة تحت examples. أما سكربتات Facedancer الأساسية بالصيغة "القديمة" فتوجد في legacy-applets.

على سبيل المثال:

export BACKEND=greatfet
./examples/rubber-ducky.py

ما اللوحات المدعومة حاليًا؟

  • Cynthion USB Test Instrument (BACKEND=cynthion)
  • GreatFET One (BACKEND=greatfet)
  • لوحة NXP LPC4330 Xplorer. (BACKEND=greatfet)
  • شارة CCCamp 2015 rad1o مع GreatFET l0adable (BACKEND=greatfet)
  • جميع أجهزة Facedancer القائمة على GoodFET، بما في ذلك Facedancer21 الشائع (BACKEND=goodfet)
  • لوحات RPi + Max3241 Raspdancer (BACKEND=raspdancer)
  • لوحات HydraDancer و HydraUSB3 (BACKEND=hydradancer)

لاحظ أن قيود العتاد تمنع لوحات MAX3420/MAX3421 من محاكاة أجهزة أكثر تعقيدًا -- فهناك قيود على عدد/نوع نقاط النهاية (endpoints) التي يمكن إعدادها. أما لوحات LPC4330 -- مثل GreatFET -- فلها قيود أقل.

ولسبب مشابه، لا يمكن حاليًا استخدام لوحات MAX3420/MAX3421 (BACKEND=goodfet أو BACKEND=raspdancer) كأجهزة USBProxy-nv MITM. أما جميع اللوحات الحديثة (BACKEND=greatfet، BACKEND=hydradancer) فيُفترض أن تكون فعّالة بالكامل.

لاحظ أن لوحات HydraDancer و HydraUSB3 (BACKEND=hydradancer) لا تدعم حاليًا وضع المضيف (host-mode). كما أن FaceDancer 3.0 الفعلي لا يعمل على Windows (بعض المشكلات في pyusb...) وعلى GNU/Linux فقط

ما اللوحات التي قد تُدعم قريبًا؟

  • أي حاسوب Linux يدعم gadgetfs (مثل Pi Zero أو Beaglebone Black)
  • أي شيء يدعم USB-over-IP.

ما الميزات التي تخطط لإضافتها؟

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

  • محاكاة أجهزة عالية السرعة ("USB 2.0") على الأجهزة التي تحتوي على PHYs USB 2.0.
  • توليد وحدات تحكم أجهزة USB أثناء التشغيل في gateware.

من المسؤول عن هذا؟

هناك الكثير من الأشخاص الذين نُحمّلهم مسؤولية الروعة التي يمثلها هذا المستودع، بمن فيهم:

  • Kate Temkin (@ktemkin)
  • Travis Goodspeed (@travisgoodspeed)
  • Sergey Bratus (@sergeybratus)
  • Dominic Spill (@dominicgs)
  • Michael Ossmann (@michaelossmann)
  • Mikaela Szekely (@Qyriad)
  • أي شخص يظهر اسمه في سجل git :)

المساهمات؟

... مرحّب بها دائمًا. أرسل لنا PR!

تنزيل الأداة