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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/matheus-garbelini/esp32_bluetooth_classic_sniffer
أمان الأنظمة المدمجةالتقاط وتحليل الحزمأمن البلوتوثالاستغلالأمن الشبكات اللاسلكيةاختراق الأجهزة
GitHubmatheus-garbelini/esp32_bluetooth_classic_sniffer

esp32_bluetooth_classic_sniffer

متشمم/حاقن Bluetooth BR/EDR نشِط بأقل تكلفة يمكن أن تقدّمها أي لوحة ESP32. يعمل مع Scapy ;-)

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
عرض المستودع
598775منذ 3 سنواتتمت المراجعة من قبل Kitploit

BrakTooth متشمم/حاقن BR/EDR النشط لـ ESP32

وضع "المراقبة" بسيط لبلوتوث الكلاسيكي. اعترض أو احقن حزم النطاق الأساسي BR/EDR في اتصالات بلوتوث ESP32.

هذا متشمم BR/EDR نشط مُهندَس عكسيًا وإطار تصحيح ESP32، ويمكن استخدامه لاستكشاف تفاعل بلوتوث (BT) BR/EDR بين وحدة تحكم ESP32 والهدف البعيد.

بخلاف المتشممات السلبية، التي لا تتفاعل مع شبكة البلوتوث (piconet)، يقوم المتشمم النشط بتوصيل نفسه بجهاز البلوتوث البعيد (هدف BR/EDR) ويتيح اختبار بروتوكول البلوتوث وصولًا إلى طبقة النطاق الأساسي (Baseband) بينما يتم توجيهه بواسطة حزمة مضيف بلوتوث مثل blue-kitchen.

يدعم متشمم BrakTooth اللوحات الرخيصة مثل ESP32-DOIT (4 دولارات) أو ESP32-DevKitC (10 دولارات).

جدول المحتويات
  • نظرة عامة على الإعداد المبسط
  • 1) التثبيت
    • أ. تثبيت متطلبات لينكس (Ubuntu 18.04 / 20.04)
    • ب. وميض البرنامج الثابت المخصص إلى ESP32
  • 2) تعليمات الاستخدام
    • مثال 1 - الاتصال بالهدف البعيد (دور رئيسي)
    • مثال 2 - انتظار اتصال البلوتوث (دور تابع)
    • مثال 3 - وضع جسر HCI (الاتصال بحزمة مضيف بلوتوث أخرى)
  • 3) بناء البرنامج الثابت من المصدر (إطار تصحيح ESP32)
  • 4) تخصيص برامج مضيف البلوتوث (البروفيلات)
  • البنية البرمجية لمتشمم BrakTooth
  • نظرة عامة على الميزات
  • شكر وتقدير

نظرة عامة على الإعداد المبسط

poc_setup

1) التثبيت

أ. تثبيت متطلبات لينكس (Ubuntu 18.04 / 20.04)
root@kitploit:~
git clone https://github.com/Matheus-Garbelini/esp32_bluetooth_classic_sniffer
cd esp32_bluetooth_classic_sniffer
./requirements.sh # (sudo required) Installs latest wireshark and standalone python3 runtime
./build.sh 		  # Build BT Host programs and Wireshark h4bcm dissector
ب. وميض البرنامج الثابت المخصص إلى ESP32

قبل البدء في استخدام متشمم BrakTooth، تحتاج إلى رفع برنامج ثابت مخصص إلى لوحة ESP32 الخاصة بك:

root@kitploit:~
sudo chown $USER:$USER /dev/ttyUSB0 # Give user permission to serial port to avoid using sudo
./firmware.py flash /dev/ttyUSB0 # Change ttyUSB0 to match your port name
# Note: ESP-WROVER-KIT or ESP-ETHERNET-KIT uses /dev/ttyUSB1 instead as the first port is for the FTDI JTAG circuit.

مهم: تتطلب بعض اللوحات الضغط باستمرار على زر BOOT لوضع ESP32 بشكل صحيح في وضع الوميض.

2) تعليمات الاستخدام

root@kitploit:~
Usage: BTSnifferBREDR.py [OPTIONS]
Options:
  --port TEXT       Serial port name (/dev/ttyUSBx for Linux)
  --host TEXT       BDAddress of local host (default: E0:D4:E8:19:C7:68)
  --target TEXT     BDAddress of remote target (ex: a8:96:75:25:c2:ac)
  --live-wireshark  Opens Wireshark live session
  --live-terminal   Show a summary of each packet on terminal
  --bridge-only     Starts the HCI bridge without connecting any BT Host stack
  --help            Show this message and exit.

يمكنك تشغيل المتشمم إما في دور رئيسي أو تابع. إذا استخدمت وسيط --target، سيحاول المتشمم الاتصال بهدفك البعيد. بخلاف ذلك، سينتظر فقط من يتصل به.

أخيرًا، يقوم --bridge-only فقط بإنشاء الطرفية الزائفة HCI (/dev/pts/x) حتى يتمكن ESP32 من العمل كوحدة تحكم بلوتوث HCI قياسية. يمكنك استخدام هذه الميزة لتوصيل أي حزمة مضيف بلوتوث أخرى بـ ESP32.

مثال 1 - الاتصال بالهدف البعيد (دور رئيسي)
root@kitploit:~
./BTSnifferBREDR.py --port=/dev/ttyUSB0 --target=E0:D4:E8:19:C7:69 --live-terminal --live-wireshark

mode_master

مثال 2 - انتظار اتصال البلوتوث (دور تابع)
root@kitploit:~
./BTSnifferBREDR.py --port=/dev/ttyUSB0 --live-terminal --live-wireshark
مثال 3 - وضع جسر HCI (الاتصال بحزمة مضيف بلوتوث أخرى)
root@kitploit:~
./BTSnifferBREDR.py --port=/dev/ttyUSB0 --bridge-only --live-terminal --live-wireshark

mode_bridge_only

3) بناء البرنامج الثابت من المصدر (إطار تصحيح ESP32)

يمكن بناء الكود المصدري مباشرةً من مستودع إطار تصحيح البرامج الثابتة لـ ESP32 كما يلي:

root@kitploit:~
cd firmware
./build_from_source.sh # clone submodule & build firmware with platformio environment 'sniffer-serial'
./firmware.py flash <serial port> # flash built firmware to ESP32 via serial port

يتم نسخ ملفات البرنامج الثابت الثنائية لـ ESP32 (firmware.bin، bootloader.bin، partitions.bin) إلى مجلد firmware بعد البناء الناجح. بعد ذلك، يمكنك المتابعة لوميض البرنامج الثابت كما هو موضح في الخطوة 1.B).

4) تخصيص برامج مضيف البلوتوث (البروفيلات)

نظرًا لأن متشمم BrakTooth يستخدم حزمة مضيف بلوتوث لتوجيه الاتصال، يتم استخدام أمثلة BlueKitchen المعدلة التالية:

  • host_stack/sdp_rfcomm_query - يبدأ هذا البرنامج الاتصال بالجهاز التابع ويحاول إجراء فحص SDP والاقتران.
  • host_stack/spp_counter - ينتظر هذا البرنامج الاتصالات وينشئ اتصال spp (منفذ تسلسلي) مع الجهاز الرئيسي.

يمكنك تعديل أو إضافة بروفيلات بلوتوث إلى البرامج الحالية باتباع التوثيق الرسمي لـ BlueKitchen. لاحظ أن مجلد host_stack/bluekitchen/example/ يحتوي بالفعل على بعض الأمثلة للبروفيلات.

البنية البرمجية لمتشمم BrakTooth

arch

يتواصل البرنامج الثابت لمتشمم/حاقن ESP32 BR/EDR المخصص مع النظام المضيف عبر منفذ تسلسلي USB وينتظر استقبال أوامر مخصصة أو أوامر HCI. عند بدء التشغيل، يتم إنشاء جسر HCI لفصل بروتوكول BrakTooth المخصص عن أوامر HCI القياسية المُرسلة أو المستلمة من ESP32. بمجرد تمكين ميزة "RX/TX Sniffer" في البرنامج الثابت لـ ESP32، يتم إعادة توجيه حزم النطاق الأساسي مباشرةً إلى سكربت BTSnifferBREDR.py الذي يقوم ببساطة بفك ترميز الحزم المُلتقطة عبر البروتوكول المخصص وطباعتها عبر Scapy و/أو تفريغها إلى Wireshark عبر الالتقاط المباشر وإلى مجلد logs.

نظرة عامة على الميزات

firmware_design

  • RX/TX Sniffer: يفرغ حزم النطاق الأساسي ويعيد توجيهها إلى المضيف. الحزم المدعومة:
    • ترويسة النطاق الأساسي
    • NULL/POLL من الهدف البعيد
    • FHS (لا توجد طبقة scapy حاليًا)
    • EIR (لا يوجد تحليل حاليًا)
    • ترويسة ACL
    • LMP
  • اعتراض الإرسال (TX Interception): يتيح هذا لجهاز الكمبيوتر المضيف تعديل حزم الإرسال (TX) في الوقت الفعلي قبل إرسالها لاسلكيًا من ESP32. يتطلب ذلك مع ذلك لوحة ESP32 بمنفذ USB عالي السرعة مثل ESP-PROG أو ESP-WROVER-KIT. كلاهما يحتوي على وحدة تحكم FTD2232H USB إلى UART، مما يسمح بتقليل زمن استقصاء USB إلى 125us. (معطل حاليًا، آسف).
  • حاقن الإرسال (TX Injector): يتيح هذا للمضيف حقن حزم BR/EDR فورًا بعد إجراء استدعاء البلوتوث (paging) وفي كل فتحة إرسال (أي كل 1.25ms) مع الخضوع لانتظارات إذا كان هناك شيء في قائمة انتظار LMP الداخلية لـ ESP32. (معطل حاليًا، آسف).
  • تجاوز الاستقبال/الإرسال (RX/TX Bypass): يعمل بشكل فعال على "تعمية" حزمة بلوتوث الخاصة بـ ESP32 من استقبال أو إرسال حزم LMP بعد إجراء الاستدعاء. يمكن استخدام هذا لبناء آلة حالة LMP مستقلة على المضيف ومع Scapy 🙂. قد تمكن هذه الميزة من شيء مشابه لما تم إنجازه في SweynTooth nRF52 dongle، لكن لتقنية BR/EDR.
  • مصحح ROM: يثبت خطافات ROM من داخل البرنامج الثابت.
  • HCI IN/OUT: واجهة اتصال قياسية مع حزمة مضيف البلوتوث. حزمة تابعة لجهة خارجية مثل bluekitchen.

شكر وتقدير

يقوم تحليل حزم النطاق الأساسي بتوسيع مفكك InternalBlue Broadcom لـ Wireshark. على وجه التحديد، تم توسيع إضافة h4bcm الخاصة بـ Wireshark لدعم المزيد من طبقات البلوتوث وترويسة بيانات ESP32 المخصصة لدينا. شكرًا @jiska2342.

شكرًا لجميع المشاريع مفتوحة المصدر التالية:

  • شكر خاص إلى @Ebiroll لصيانته وحدة Xtensa لـ Ghidra
  • @mringwal على حزمة مضيف بلوتوث BlueKitchen مفتوحة المصدر الممتازة
  • مشروع InternalBlue
  • مكتبة التلاعب بالحزم Scapy
  • مشروع Wireshark
تنزيل الأداة