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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
BTLE — أداة التقاط وإرسال حزم لبلوتوث منخفض الطاقة (BLE) للتنسيقات القياسية وغير القياسية (البت الخام)، استنادًا إلى الراديو المعرَّف بالبرمجيات (SDR). | Kitploit
أدوات/GitHubGitHub/jiaoxianjun/btle
التقاط وتحليل الحزمأمن البلوتوثأمان إنترنت الأشياءأمن الشبكات اللاسلكيةالأفضل في أمن البلوتوث #6
GitHubjiaoxianjun/btle

BTLE

أداة التقاط وإرسال حزم لبلوتوث منخفض الطاقة (BLE) للتنسيقات القياسية وغير القياسية (البت الخام)، استنادًا إلى الراديو المعرَّف بالبرمجيات (SDR).

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

الأكثر شعبية

عرض الكل →

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

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

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

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

BTLE

BTLE هي حزمة برمجيات حرة ومفتوحة المصدر للراديو المعرف بالبرمجيات (SDR) لتقنية البلوتوث منخفض الطاقة (BLE)، إلى جانب تصميم شريحة BTLE مفتوح.

تتضمن:

  • النطاق الأساسي لـ BTLE: وصف الخوارزميات، وتنفيذ Python وVerilog، ونتائج FPGA وSkyWater 130 PDK (سير عمل OpenLane2).
  • تنفيذ Analog Devices AD9361 + Xilinx Zynq FPGA: FPGA Bluetooth
  • btle_rx - أداة التقاط (Sniffer) لحزم BLE. بالإضافة إلى التقاط قناة البث/القناة الثابتة، يمكنها أيضًا تتبّع القفز الترددي لرابط الاتصال.
  • btle_tx - مرسِل حزم BLE شامل. بالإضافة إلى معيار BLE، يدعم أيضًا وضع البتات الخام (raw bit mode) لتوليد حزم GFSK عشوائية. بهذه الطريقة، يمكنك اختبار بروتوكول غير قياسي أو معيار قيد النقاش قبل طرح الشريحة في السوق.

الميزات

  • يتم تنفيذ الطبقة المادية (PHY) والطبقة العليا في البرمجيات (لغة C). مرونة كاملة للراديو المعرف بالبرمجيات.
  • طبقة PHY قياسية لـ BLE بتقنية GFSK بمعدل 1 ميجابت/ثانية.
  • جميع تنسيقات حزم طبقة الارتباط لقنوات ADV وDATA في Core_V4.0 (الفصلان 2 و3، الجزء B، المجلد 6) مدعومة.
  • الأداة قادرة على تحليل وتتبّع نمط القفز الترددي تلقائيًا، وليست مقتصرة على قناة البث أو القناة الثابتة.

العتاد

  • HackRF
  • bladeRF
  • إصدار متوافق من مكتبات HackRF وbladeRF

البناء والاختبار السريع

تأكد من إعداد بيئة عتاد SDR لديك (برنامج التشغيل/المكتبة) بشكل صحيح قبل تشغيل هذا المشروع.

git clone https://github.com/JiaoXianjun/BTLE.git
cd BTLE/host
mkdir build
cd build
cmake ../                   (default. for HackRF)
cmake ../ -DUSE_BLADERF=1   (only for bladeRF)

make
./btle-tools/src/btle_rx

الأمر أعلاه يلتقط على القناة 37. يجب أن ترى حزمًا كثيرة على الشاشة إذا كانت لديك أجهزة BLE (هاتف/جهاز لوحي/كمبيوتر محمول) في الجوار.

./btle-tools/src/btle_tx 37-DISCOVERY-TxAdd-1-RxAdd-0-AdvA-010203040506-LOCAL_NAME09-SDR/Bluetooth/Low/Energy r500 

الأمر أعلاه يرسل حزم الاكتشاف على قناة ADV. يجب أن ترى جهازًا باسم "SDR/Bluetooth/Low/Energy" في تطبيق تقاط BLE آخر (مثل LightBlue).

للحصول على تسلسل تشغيل أسرع على HACKRF، استخدم ما يلي:

#define TRANSFER_COUNT 4
#define TRANSFER_BUFFER_SIZE 4096

في hackrf/host/libhackrf/src/hackrf.c. ثم أعد ترجمة مكتبة HACKRF وأعد تثبيتها. لا تنسَ إعادة ترجمة BTLE لتفعيل تغيير مكتبة HACKRF.

بالإضافة إلى الأدوات، يتضمن دليل matlab تقييم الخوارزميات ونصوصًا برمجية مفيدة أخرى

استخدام btle_rx

-h --help

طباعة جميع الوسائط/طرق الاستخدام.

-c --chan

رقم القناة. القيمة الافتراضية 37 (إحدى قنوات ADV). القيمة الصالحة 0~39 (جميع قنوات ADV وDATA).

-g --gain

كسب الاستقبال بوحدة dB. كسب rxvga الافتراضي لـ HACKRF هو 6، والنطاق الصالح 0 - 62. الافتراضي لـ bladeRF هو أقصى كسب استقبال 66dB (النطاق الصالح 0 - 66). يجب ضبط الكسب بعناية فائقة لضمان أفضل أداء في ظروفك. يُنصح بالاختبار بدءًا من كسب منخفض، لأن الكسب المرتفع يسبب دائمًا تشوهًا شديدًا ولن يفيدك بشيء.

-l --lnaGain

كسب LNA بوحدة dB (خاص بـ HackRF فقط). الافتراضي 32، والنطاق الصالح 0 - 40. يجب ضبط الكسب بعناية فائقة لضمان أفضل أداء في ظروفك.

-b --amp

تفعيل مكبر الإشارة (خاص بـ HackRF فقط). الافتراضي: معطّل.

-a --access

عنوان الوصول. الافتراضي 8e89bed6 لقنوات ADV 37 و38 و39. يجب عليك تحديد القيمة الصحيحة لقناة البيانات وفقًا لإجراء إعداد الاتصال الذي تم التقاطه.

-k --crcinit

الافتراضي 555555 لقناة ADV. يجب عليك تحديد القيمة الصحيحة لقناة البيانات وفقًا لإجراء إعداد الاتصال الذي تم التقاطه.

-v --verbose

الوضع التفصيلي (Verbose). طباعة مزيد من المعلومات عند وجود خطأ.

-r --raw

الوضع الخام. بعد اكتشاف عنوان الوصول، اطبع الـ 42 بايتًا الخام التالية (بدون إزالة التشويش أو التحليل).

-f --freq_hz (need argument)

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

-m --access_mask (need argument)

إذا كانت إحدى البتات في هذا القناع تساوي 1، فسيتم تضمين البت المقابل في عنوان الوصول في قرار وجود الحزمة (في حال أراد شخص كلمة فريدة أقصر/أقل كثافة لاكتشاف الحزم. لأغراض أكثر عمومية).

-o --hop

سيؤدي هذا إلى تفعيل تتبّع قناة البيانات (القفز الترددي) بعد التقاط معلومات إعداد الارتباط في حزمة ADV_CONNECT_REQ على قناة ADV.

-s --filename

تخزين الحزم في ملف pcap.

استخدام btle_tx

btle_tx packet1 packet2 ... packetX ...  rN

أو

btle_tx packets.txt

packets.txt هو ملف نصي يحتوي على نص وسائط سطر الأوامر (packet1 packet2 ... rN). كل وسيط في سطر مستقل. يُعتبر السطر الذي يبدأ بـ "#" تعليقًا. انظر مثال packets.txt

packetX 

هو سلسلة نصية واحدة تصف حزمة واحدة. تشكّل جميع الحزم معًا تسلسل حزم.

rN

تعني أن التسلسل سيُكرَّر N مرة. إذا لم تُحدَّد، فسيُرسَل التسلسل مرة واحدة فقط.

تنسيق سلسلة packetX

channel_number-packet_type-field-value-field-value-...-Space-value

تبدأ كل سلسلة وصفية برقم قناة BTLE (0~39)، ثم يليها نوع الحزمة packet_type (RAW/iBeacon/ADV_IND/ADV_DIRECT_IND/إلخ. اطّلع على جميع أمثلة التنسيقات في النهاية: الملحق )، ثم يليها زوج حقل-قيمة خاص بنوع الحزمة، وفي النهاية يوجد زوج Space-قيمة (اختياري) حيث تحدد القيمة عدد الميلي ثانية التي سيُنتظَر بعد إرسال هذه الحزمة.

لا تستخدم حرف المسافة " " في واصف الحزمة داخل سطر الأوامر. يمكنك استخدام المسافة في واصف الحزمة داخل ملف txt.

لا تستخدم "-" داخل أي حقل. "-" هو حرف سحري يُستخدم لفصل الحقول المختلفة في واصف الحزمة.

  • مثال btle_tx: حزم الاكتشاف

افتح تطبيق LightBlue (أو أداة تقاط BLE أخرى) على iPhone/جهازك قبل تنفيذ هذا الأمر:

./btle-tools/src/btle_tx ../btle-tools/src/packets_discovery.txt

سترى جهازًا باسم "SDR Bluetooth Low Energy" في تطبيق LightBlue.

سطر الأوامر المقابل:

./btle-tools/src/btle_tx 37-DISCOVERY-TxAdd-1-RxAdd-0-AdvA-010203040506-LOCAL_NAME09-SDR/Bluetooth/Low/Energy r40

ملاحظة: تم استبدال المسافة " " بـ "/" لأن المسافة " " غير مدعومة في سطر الأوامر.

  • مثال btle_tx: إنشاء الاتصال
btle_tx 37-ADV_IND-TxAdd-0-RxAdd-0-AdvA-90D7EBB19299-AdvData-0201050702031802180418-Space-1      37-CONNECT_REQ-TxAdd-0-RxAdd-0-InitA-001830EA965F-AdvA-90D7EBB19299-AA-60850A1B-CRCInit-A77B22-WinSize-02-WinOffset-000F-Interval-0050-Latency-0000-Timeout-07D0-ChM-1FFFFFFFFF-Hop-9-SCA-5-Space-1     9-LL_DATA-AA-60850A1B-LLID-1-NESN-0-SN-0-MD-0-DATA-XX-CRCInit-A77B22-Space-1

يحاكي ما سبق إجراء إنشاء اتصال بين الجهاز 1 والجهاز 2. ملف الوصف المقابل: BTLE/host/btle-tools/src/packets.txt.

الحزمة الأولى -- يرسل الجهاز 1 حزمة ADV_IND على القناة 37.

الحزمة الثانية -- بعد أن يستقبل الجهاز 2 (في حالة المسح) حزمة ADV من الجهاز 1، يرسل الجهاز 2 حزمة CONNECT_REQ لطلب إعداد اتصال مع الجهاز 1. تحتوي حزمة الطلب هذه على عنوان MAC للجهاز 2 (InitA)، وعنوان MAC الهدف (عنوان MAC للجهاز 1 AdvA)، وعنوان الوصول (AA) الذي سيستخدمه الجهاز 1 في إرسال الحزم اللاحقة على قناة البيانات، وقيمة تهيئة CRC للحزم اللاحقة للجهاز 1، ومعلومات القناة ذات القفز الترددي (ChM وHop) لقناة البيانات التي يستخدمها الجهاز 1، وغير ذلك.

الحزمة الثالثة -- يرسل الجهاز 1 وحدة بيانات PDU فارغة لطبقة الارتباط على القناة 9 (المحددة وفق مخطط القفز الترددي) وفقًا لمعلومات طلب الاتصال المستلمة من الجهاز 2. ("XX" بعد الحقل "DATA" تعني عدم وجود بيانات لهذا الحقل)

الزمن الفاصل بين الحزم هو 1 ثانية (1000 مللي ثانية). اضبط أداة التقاط حزم TI على القناة 37، وعندها سيتم التقاط إجراء الإنشاء أعلاه.

تنزيل الأداة