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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Whisper_Bully — استخراج عنوان BDADDR بلوتوث ثلاثي المراحل، رفض الخدمة والاختطاف على أجهزة Fast Pair؛ أوليات غير مصححة خارج نطاق CVE-2025-36911 (لا حاجة لأوبيرتوث) | Kitploit
أدوات/GitHubGitHub/ymsniper/whisper_bully
الاستطلاعأمن البلوتوثالاستغلالجمع المعلوماتأمن الشبكات اللاسلكيةاختبار الاختراقالفريق الأحمر
GitHubymsniper/whisper_bully

Whisper_Bully

استخراج عنوان BDADDR بلوتوث ثلاثي المراحل، رفض الخدمة والاختطاف على أجهزة Fast Pair؛ أوليات غير مصححة خارج نطاق CVE-2025-36911 (لا حاجة لأوبيرتوث)

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

الأكثر شعبية

عرض الكل →

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

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

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

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

Whisper Bully

أداة بحث لاستخراج BDADDR البلوتوث، رفض الخدمة والاختطاف

© 2026 @Ymsniper — لأغراض البحث الأمني المرخص فقط.


نظرة عامة

Whisper Bully هي أداة بحث أمني بلوتوث ثلاثية المراحل تستهدف الأجهزة التي تعلن عن Google Fast Pair (معرف الخدمة fe2c). إنها توضح بدائي هجوم غير مصححين خارج نطاق تصحيح البرامج الثابتة CVE-2025-36911:

  • تسريب BDADDR غير مصحح — عنوان الهوية الدائم يُكشف عبر اتصال BLE عادي، لا حاجة لتفاعل GATT، يعمل على الأجهزة المصححة بالكامل
  • تجاوز مصادقة SMP عبر نافذة إعادة الضبط — إنشاء رابط دائم عبر SMP Just Works القياسي أثناء استرداد مكدس BT بعد فيضان L2CAP، دون أي مصافحة GATT لـ Fast Pair

⚠️ هذه الأداة لا تنفذ بروتوكول Whisper Pair (Fast Pair GATT). إنها لا تكتب أبدًا إلى خاصية Key-Based Pairing (UUID 1236) أو خاصية Account Key (UUID 1238). سطح الهجوم الموصوف هنا منفصل وغير معالج بواسطة تصحيح فحص وضع الاقتران CVE-2025-36911.


https://github.com/user-attachments/assets/67f2bcb6-38ad-4ba0-80c5-36dbb54f3f11

مراحل الهجوم

المرحلة 1 — استخراج BDADDR (كشف معلومات غير مصحح)

السبب الجذري: عند إنشاء اتصال BLE، يقوم مكدس مضيف Linux BlueZ بمعالجة حدث LL_CONNECTION_COMPLETE وحل العنوان الخاص القابل للحل (RPA) للجهاز إلى عنوان هويته الدائم، وتخزينه مؤقتًا في جدول أجهزة BlueZ. يحدث هذا على مستوى الطبقة الرابطة / HCI، قبل أي تفاعل مع خدمة GATT. لا يوجد بروتوكول Fast Pair متورط.

ما يفعله الكود فعليًا:

  1. يقوم بمسح BLE نشط (BleakScanner) للأجهزة التي تعلن عن معرف خدمة Fast Pair fe2c — يُستخدم فقط لتحديد الهدف، لا تفاعل بروتوكول
  2. ينشئ اتصال BLE عادي عبر BleakClient.connect() — لا توجد كتابات GATT من أي نوع
  3. يضبط وكيل BlueZ على NoInputNoOutput تحضيرًا للخطوة 4
  4. يتحقق مما إذا كانت خدمة GATT لـ Fast Pair موجودة على الهدف — هذا الفحص استشاري فقط؛ تستمر الأداة بغض النظر عن النتيجة (السطر 452 من wb.py)
  5. يشغّل bluetoothctl pair <rpa_addr> — محاولة اقتران SMP قياسية، وليست Fast Pair
  6. يراقب مخرجات bluetoothctl القياسية للحصول على Bonded: yes، والتي قد تحمل العنوان المربوط
  7. البديل الأساسي: يستدعي bluetoothctl devices ويقارن مع RPA الأولي — أي إدخال بنفس اسم الجهاز ولكن بعنوان مختلف هو عنوان الهوية الدائم، الذي تم تسريبه بواسطة BlueZ في الخطوة 2

لماذا لا يصلح التصحيح هذا:

يضيف إصلاح CVE-2025-36911 في البرامج الثابتة فحصًا لوضع الاقتران إلى معالج خاصية Key-Based Pairing GATT لـ Fast Pair على الملحق. هذه الأداة لا تكتب أبدًا إلى تلك الخاصية. يحدث تسرب عنوان الهوية على مضيف Linux للمهاجم عبر ذاكرة التخزين المؤقت الخاصة بـ BlueZ — بالكامل خارج البرامج الثابتة للملحق.

ملاحظات السلوك الرئيسية:

  • يمكن أن ينجح الاستخراج حتى لو فشلت خطوة bluetoothctl pair أو انتهت مهلة
  • فحص وجود خدمة GATT لـ FP في الخطوة 4 لا يحجب الهجوم
  • لا تظهر نافذة تأكيد PIN — NoInputNoOutput تعني عدم وجود تفاعل مستخدم على أي من الجانبين لـ Just Works

المرحلة 2 — فيضان L2CAP (وضع إعادة الاتصال النبضي EMP)

بمجرد معرفة العنوان الدائم، يمكن تنفيذ رفض خدمة L2CAP مستدام باستخدام نسخة معدلة من l2flood.

يتم استخدام وضعين عبر الأداة:

علم -R — وضع EMP (فيضان المرحلة 2) إطلاق ونسيان صامت مع إعادة اتصال نبضية. تقوم جميع الخيوط بمزامنة دوراتها (اتصال ← انفجار ← إغلاق قسري) بحيث يتلقى الهدف تمزيق ACL كامل دوريًا بدلاً من خلط قنوات L2CAP المتداخل الذي يمكنه امتصاصه. يستخدم SO_LINGER {1,0} لتدمير فوري عبر RST عند كل إغلاق. لا ينتج أي مخرجات stdout أثناء التشغيل العادي — يتم كتم أخطاء الاتصال إلى stderr وطباعتها دوريًا فقط.

الوضع العادي (فحص اختطاف المرحلة 3) يُستخدم بدون -R لفحص ما إذا كان الهدف لا يزال يستجيب. تم تحسين هذا الوضع أيضًا — فهو يعالج الآن إعادة الاتصال تلقائيًا ويخرج no response from <addr>: id N عندما يتوقف الهدف عن الاستجابة، وهو ما تراقبه wb.py لبدء الاختطاف.

النتيجة: يصبح الجهاز الهدف غير مستجيب لمحاولات الاتصال العادية أثناء نشاط الفيضان. يتعافى الجهاز بالكامل عندما يتوقف الهجوم — لا ضرر دائم.

سلوك الخيوط المتعددة:

  • تتزامن الخيوط بعد كل دورة انفجار بحيث يصل الضغط على الهدف في وقت واحد
  • فعال حتى حوالي 16 خيطًا على الأجهزة النموذجية؛ عوائد متناقصة بعد ذلك
  • يمكن استخدام محولات HCI متعددة في وقت واحد لزيادة الضغط

المرحلة 3 — الاختطاف عبر SMP Just Works أثناء نافذة إعادة الضبط (تجاوز مصادقة غير مصحح)

السبب الجذري: يتسبب فيضان L2CAP المستدام في تعطل أو إعادة ضبط مكدس البلوتوث للجهاز الهدف. أثناء نافذة الاسترداد — قبل إعادة تسجيل خدمة GATT لـ Fast Pair وقبل إعادة تهيئة مدير الأمان بالكامل — يقبل الجهاز رابط SMP Just Works قياسيًا من NoInputNoOutput دون الحاجة إلى مصافحة GATT لـ Fast Pair التي كانت ستحجب الرابط عادةً. الرابط الناتج دائم: يبقى بعد إعادة ضبط محول BT ويظهر Paired: yes / Bonded: yes في bluetoothctl info.

لماذا هذا اكتشاف منفصل عن CVE-2025-36911:

يفرض تصحيح CVE-2025-36911 فحص وضع الاقتران في معالج خاصية Key-Based Pairing GATT لـ FP. المرحلة 3 لا تلمس تلك الخاصية أبدًا. يتم إنشاء الرابط على طبقة SMP خلال نافذة لم يتم فيها إعادة تهيئة خادم GATT لـ FP، لذلك لا يتم الوصول إلى بوابة أمان Fast Pair حتى. يظل الجهاز المصحح بالكامل عرضة لهذا لأن التصحيح ليس لديه رؤية لطبقة SMP أثناء استرداد المكدس.

ما يفعله الكود فعليًا:

  1. يرسل مسبار L2CAP (l2flood -c -1 -t 2) لتأكيد أن الجهاز غير مستجيب — يبحث عن no response from <addr>: id N في المخرجات
  2. بمجرد تأكيد الحالة غير المستجيبة، يشغّل bluetoothctl connect <permanent_addr> في حلقة إعادة محاولة
  3. يتفاوض SMP على NoInputNoOutput / NoInputNoOutput ← نموذج اقتران Just Works ← يكتمل الرابط
  4. bluetoothctl connect يُرجع رمز الخروج 0 عند النجاح
  5. يستمر الرابط بعد توقف الهجوم

احتمالية النجاح حسب حالة الجهاز:

حالة الجهازالنتيجة المتوقعة
نشط في الفيضان / غير مستجيبأعلى نجاح — المكدس في حالة متدهورة أثناء الاسترداد
يتعافى من الفيضاننجاح مرتفع — نافذة إعادة تهيئة SM مؤقتة
تعافى بالكاملنجاح أقل — تم استعادة الأمان الطبيعي
تم إيقاف تشغيلهيفشل

العلاقة بـ CVE-2025-36911

CVE-2025-36911 (WhisperPair)هذه الأداة
البروتوكول المستخدمFast Pair GATT KBP (كتابة UUID 1236)لا شيء — اتصال BLE عادي فقط
مسار تسريب BDADDRإشعار KBP مشفر (عنوان BR/EDR)حل RPA في BlueZ عند LL_CONNECTION_COMPLETE
مسار تجاوز المصادقةفحص وضع الاقتران FP مفقودSMP Just Works أثناء نافذة استرداد مكدس BT
تم تصحيحه بواسطة إصلاح 36911؟نعملا
يعمل على الأجهزة المصححة؟لانعم
CWECWE-287CWE-200 (المرحلة 1) + CWE-362/CWE-287 (المرحلة 3)

⚠️ تحذير قانوني

هذه أداة بحث عن رفض الخدمة والوصول غير المصرح به.

استخدام هذه الأداة على أجهزة لا تملكها أو بدون إذن كتابي صريح هو جريمة فيدرالية يعاقب عليها بالسجن والغرامات بموجب قانون الاحتيال وإساءة استخدام الكمبيوتر (18 U.S.C. § 1030) والقوانين المماثلة في ولايات قضائية أخرى.

يُسمح لك فقط باستخدام هذه الأداة على:

  • الأجهزة التي تملكها شخصيًا
  • الأجهزة التي لديك إذن كتابي صريح من المالك لإجراء اختبار أمني عليها

المتطلبات

  • لينكس (تم اختباره على Ubuntu 20.04+)
  • صلاحيات الجذر (مطلوبة لـ bluetoothctl والوصول الخام إلى BLE)
  • bluetoothctl / BlueZ مثبت ويعمل
  • Python 3.7+
  • للمرحلة 2/3: l2flood مع دعم OpenMP — انظر kovmir/l2flood

التثبيت

تبعيات النظام

Ubuntu / Debian:

sudo apt update
sudo apt install -y python3 python3-pip libdbus-1-dev libglib2.0-dev bluez

Fedora / RHEL / CentOS:

sudo dnf install -y python3 python3-pip dbus-devel glib2-devel bluez

Arch Linux:

sudo pacman -S python python-pip dbus glib bluez

Alpine Linux:

apk add --no-cache python3 py3-pip dbus-dev glib-dev bluez bluez-openrc

openSUSE:

sudo zypper install -y python3 python3-pip dbus-1-devel glib2-devel bluez

Void Linux:

sudo xbps-install -S python3 python3-pip dbus-devel glib-devel bluez

الاستنساخ والتثبيت

git clone https://github.com/Ymsniper/Whisper_Bully.git
cd Whisper_Bully
pip3 install -r requirements.txt
# مطلوب للمرحلة 2/3 فقط:
make
sudo make install

الاستخدام

المرحلة 1: استخراج BDADDR

تنزيل الأداة