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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
bluehood — راقب نشاط البلوتوث في حيك المحلي | Kitploit
أدوات/GitHubGitHub/dannymcc/bluehood
الاستخبارات مفتوحة المصدر (OSINT)الاستطلاعأمن البلوتوثأمان إنترنت الأشياءتخطيط الشبكةجمع المعلوماتأمن الشبكات اللاسلكيةالخصوصيةاستخبارات التهديداتالتعلم والتعليمكشف الشذوذ
1.1k73منذ 8 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

bluehood

راقب نشاط البلوتوث في حيك المحلي

عرض المستودع

Bluehood

حي بلوتوث - تتبع أجهزة BLE في منطقتك وتحليل أنماط حركة المرور.

"Buy Me A Coffee"


تحذير: برنامج ألفا

هذا المشروع في مرحلة التطوير المبكر وليس جاهزًا للاستخدام الإنتاجي. قد تتغير الميزات أو تتعطل أو تُزال دون إشعار. استخدمه على مسؤوليتك الخاصة. يجب التعامل مع البيانات التي تم جمعها كبيانات تجريبية.


لقطات الشاشة

Dashboard لوحة التحكم الرئيسية تعرض قائمة الأجهزة مع خيارات التصفية والبحث والإحصائيات الفورية

Settings صفحة الإعدادات بعلامات تبويب — التنبيهات، العمليات، المجموعات، والأمان

About صفحة المعلومات التي تعرض تفاصيل المشروع ونظرة عامة على الإمكانيات

لماذا؟

هذا المشروع مستوحى من ثغرة WhisperPair (CVE-2025-36911)، التي سلطت الضوء على مخاطر الخصوصية في أجهزة البلوتوث.

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

مع كمية كافية من البيانات، يمكنك نظريًا:

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

يمكن لهذه البيانات الوصفية أن تكشف معلومات شخصية مفاجئة دون أي تفاعل نشط مع الأجهزة.

Bluehood هو أداة تعليمية لزيادة الوعي حول خصوصية البلوتوث. إنه مشروع عطلة نهاية أسبوع، لكن الآثار تستحق التفكير فيها.

ما هو؟

Bluehood هو ماسح بلوتوث يقوم بما يلي:

  • مسح مستمر للأجهزة القريبة (BLE والكلاسيكي)
  • تحديد الأجهزة حسب البائع (بحث عنوان MAC) ومعرفات خدمة BLE
  • تصنيف الأجهزة إلى فئات (هواتف، صوتيات، أجهزة قابلة للارتداء، إنترنت الأشياء، مركبات، إلخ)
  • تتبع أنماط الوجود على مر الوقت باستخدام خرائط حرارية ساعية/يومية
  • تصفية الضوضاء من عناوين MAC العشوائية (الأجهزة التي تدور الخصوصية)
  • تحليل ارتباطات الأجهزة للعثور على الأجهزة التي تظهر معًا
  • إرسال إشعارات لحظية عند وصول أو مغادرة الأجهزة المراقبة
  • توفير لوحة تحكم ويب للمراقبة والتحليل

الميزات

المسح

  • مسح مزدوج الوضع: بلوتوث منخفض الطاقة (BLE) والبلوتوث الكلاسيكي
  • البحث عن بائع عنوان MAC (قاعدة بيانات محلية + احتياطي API عبر الإنترنت)
  • بصمة معرف خدمة BLE لتصنيف دقيق للأجهزة
  • تحليل فئة جهاز البلوتوث الكلاسيكي
  • تصفية عناوين MAC العشوائية (مخفية من العرض الرئيسي)

إدارة الأجهزة

  • وضع علامة "مراقَب" على الأجهزة لتتبع الأجهزة الشخصية
  • تنظيم الأجهزة في مجموعات مخصصة
  • تعيين أسماء مألوفة للأجهزة المعروفة
  • إضافة ملاحظات/وسوم مخصصة لأي جهاز
  • كشف نوع الجهاز (هواتف، صوتيات، أجهزة قابلة للارتداء، إنترنت الأشياء، مركبات، إلخ)

التحليلات

  • مخطط زمني لوجود 30 يومًا
  • رسم بياني لتاريخ قوة الإشارة (RSSI) مع بيانات 7 أيام
  • خرائط حرارية للنشاط الساعي واليومي تظهر أوقات نشاط الأجهزة
  • تحليل الأنماط ("أيام الأسبوع، مساءً 5م-9م")
  • تحليل مدة الإقامة يظهر الوقت الإجمالي الذي تقضيه الأجهزة في النطاق
  • كشف ارتباط الأجهزة للعثور على الأجهزة التي تظهر معًا
  • مناطق القرب (فوري، قريب، بعيد، نائي) بناءً على قوة الإشارة
  • بحث حسب MAC أو البائع أو الاسم
  • بحث حسب نطاق تاريخ للاستعلامات التاريخية

الإشعارات (عبر ntfy.sh)

  • إشعارات لحظية إلى هاتفك/سطح المكتب
  • إشعار عند اكتشاف أجهزة جديدة
  • إشعار عند عودة الأجهزة المراقبة
  • إشعار عند مغادرة الأجهزة المراقبة
  • حدود قابلة للتكوين للوصول/المغادرة

العمليات

  • فحص نبض القلب — إرسال حالة دوريًا إلى خدمة مراقبة وقت التشغيل (مثل Uptime Kuma، Healthchecks.io)
  • تدوير التخزين — حذف المشاهدات الأقدم من عدد أيام قابل للتكوين تلقائيًا
  • كلاهما قابل للتكوين من واجهة الويب أو عبر متغيرات البيئة

واجهة الويب

  • تبديل عرض مضغوط/مفصل لتفضيلات عرض مختلفة
  • وضع لقطة الشاشة لتعتيم عناوين MAC والأسماء للمشاركة الآمنة
  • اختصارات لوحة المفاتيح للمستخدمين المحترفين (اضغط ? للعرض)
  • تصدير CSV لبيانات الأجهزة
  • مجموعات الأجهزة لتنظيم الأجهزة ذات الصلة
  • مصادقة اختيارية لتأمين الوصول

كيف؟

بداية سريعة مع Docker (موصى به)

المتطلبات الأساسية — أنظمة Linux فقط

يتواصل Bluehood مع محول البلوتوث الخاص بك عبر BlueZ، حزمة بلوتوث لينكس. يجب تثبيت BlueZ وتشغيله على المضيف قبل بدء الحاوية — صورة Docker نفسها لا تتضمنه.

root@kitploit:~
# Debian / Ubuntu (بما في ذلك Ubuntu Server)
sudo apt install bluez
sudo systemctl enable --now bluetooth

# Arch Linux
sudo pacman -S bluez bluez-utils
sudo systemctl enable --now bluetooth

بدون BlueZ على المضيف سترى خطأ مثل: BLE scan error: [org.freedesktop.DBus.Error.ServiceUnknown] The name org.bluez was not provided by any .service files

root@kitploit:~
# إنشاء ملف docker-compose.yml أو تنزيله من هذا المستودع
# ثم التشغيل باستخدام Docker Compose
docker compose up -d

# عرض السجلات
docker compose logs -f

صورة Docker متاحة على GitHub Container Registry:

root@kitploit:~
ghcr.io/dannymcc/bluehood:latest

ستكون لوحة تحكم الويب متاحة على http://localhost:8080

متطلبات Docker

  • Docker و Docker Compose
  • مضيف Linux مع محول بلوتوث يدعم BLE (بلوتوث 4.0+) يدعم دور المركزي (Central)
  • BlueZ مثبت ومُشغّل على المضيف (sudo apt install bluez && sudo systemctl enable --now bluetooth)

ملاحظة: المحولات القديمة (بلوتوث 2.x/3.x) لا تدعم مسح BLE. إذا كان محولك يفتقر إلى دعم دور BLE المركزي، سترى: No Bluetooth adapters with BLE 'central' role found.

ملاحظة: يعمل Docker في الوضع المميز مع شبكة المضيف للوصول إلى البلوتوث. هذا مطلوب لمسح BLE.

متغيرات بيئة Docker

متطلبات محول البلوتوث

يتطلب Bluehood محول بلوتوث يدعم BLE (بلوتوث 4.0 أو أحدث) مع دعم دور المركزي (Central). المحولات القديمة بلوتوث 2.x/3.x لا تدعم مسح BLE ولن تعمل.

إذا كان محولك لا يدعم دور BLE المركزي، سيخرج Bluehood مع:

root@kitploit:~
No Bluetooth adapters with BLE 'central' role found

يمكنك التحقق من إمكانيات محولك باستخدام bluetoothctl show والبحث عن central في الأدوار المدعومة.

التثبيت اليدوي (لينكس)

root@kitploit:~
# تثبيت تبعيات النظام (Arch Linux)
sudo pacman -S bluez bluez-utils python-pip

# تثبيت تبعيات النظام (Debian/Ubuntu)
sudo apt install bluez python3-pip

# استنساخ وتثبيت
git clone https://github.com/dannymcc/bluehood.git
cd bluehood
pip install -e .

أذونات البلوتوث

يتطلب مسح البلوتوث صلاحيات مرتفعة. اختر أحد الخيارات:

  1. التشغيل كجذر (الأبسط):

    root@kitploit:~
    sudo bluehood
    
  2. منح الإمكانيات لـ Python:

    root@kitploit:~
    sudo setcap 'cap_net_admin,cap_net_raw+eip' $(readlink -f $(which python))
    bluehood
    
  3. استخدام خدمة systemd (موصى به للتشغيل الدائم):

    root@kitploit:~
    sudo cp bluehood.service /etc/systemd/system/
    sudo systemctl daemon-reload
    sudo systemctl enable --now bluehood
    

macOS

يعمل Bluehood بشكل أصلي على macOS بدون Docker. يستخدم macOS CoreBluetooth بدلاً من BlueZ، ويتم التعامل مع ذلك تلقائيًا بواسطة مكتبة bleak.

root@kitploit:~
# استنساخ المستودع
git clone https://github.com/dannymcc/bluehood.git
cd bluehood

# إنشاء بيئة افتراضية
python3 -m venv .venv
source .venv/bin/activate

# التثبيت
pip install -e .

# التشغيل
python -m bluehood.daemon

ستكون لوحة تحكم الويب متاحة على http://localhost:8080

ملاحظة: في أول تشغيل، سيطلب منك macOS السماح بالوصول إلى البلوتوث. يجب عليك منح هذا الإذن لكي يعمل المسح.

الاستخدام

root@kitploit:~
# التشغيل مع لوحة تحكم الويب (المنفذ الافتراضي 8080)
bluehood

# تحديد منفذ مختلف
bluehood --port 9000

# استخدام محول بلوتوث معين
bluehood --adapter hci1

# استخدام محولات منفصلة لمسح BLE والكلاسيكي (متزامن)
bluehood --adapter hci0 --classic-adapter hci1

# سرد المحولات المتاحة
bluehood --list-adapters

# تعطيل لوحة تحكم الويب (مسح فقط)
bluehood --no-web

# تمكين مصدر مقاييس Prometheus على المنفذ 9199
bluehood --metrics-port 9199

لوحة تحكم الويب

توفر لوحة التحكم:

  • قائمة الأجهزة مع أيقونات النوع، البائع، MAC، الاسم، المشاهدات، آخر مشاهدة
  • مرشحات الأجهزة حسب النوع (هواتف، صوتيات، إنترنت الأشياء، إلخ) وحالة المراقبة
  • بحث حسب MAC أو البائع أو الاسم
  • بحث حسب نطاق تاريخ للعثور على الأجهزة التي شوهدت في نافذة زمنية محددة
  • صفحة إعدادات بعلامات تبويب — التنبيهات، العمليات، المجموعات، والأمان (رابط مباشر عبر الهاش، مثلاً /settings#operations)
  • نافذة تفاصيل الجهاز مع:
    • بصمات خدمة BLE
    • خرائط حرارية للنشاط الساعي/اليومي
    • مخطط زمني لوجود 30 يومًا
    • رسم بياني لتاريخ قوة الإشارة (RSSI)
    • تحليل الأنماط
    • إحصائيات مدة الإقامة
    • قائمة الأجهزة المرتبطة
    • مؤشر منطقة القرب
    • حقل ملاحظات المشغل
    • تعيين المجموعة

اختصارات لوحة المفاتيح

وضع لقطة الشاشة

قم بتمكين وضع لقطة الشاشة من الشريط الجانبي لتعتيم البيانات الحساسة قبل مشاركة لقطات الشاشة:

  • عناوين MAC تظهر فقط أول 2 أوكتيت (مثل AA:BB:XX:XX:XX:XX)
  • الأسماء المألوفة تظهر فقط أول حرفين (مثل Da********)
  • تصديرات CSV تحترم أيضًا وضع لقطة الشاشة

الإشعارات اللحظية

يمكن لـ Bluehood إرسال إشعارات لحظية عبر ntfy.sh، خدمة إشعارات مجانية ومفتوحة المصدر.

  1. أنشئ موضوعًا في ntfy.sh (مثل bluehood-myname-alerts)
  2. اشترك في الموضوع على هاتفك باستخدام تطبيق ntfy
  3. في إعدادات Bluehood، أدخل اسم موضوعك وفعّل الإشعارات
  4. قم بتكوين الأحداث التي تطلق الإشعارات:
    • تم اكتشاف جهاز جديد
    • عودة جهاز مراقب (بعد أن كان غائبًا)
    • مغادرة جهاز مراقب (لم تتم رؤيته لمدة X دقيقة)

تخزين البيانات

يتم تخزين البيانات في ~/.local/share/bluehood/bluehood.db (SQLite).

تجاوز الموقع باستخدام متغيرات البيئة:

  • BLUEHOOD_DATA_DIR - دليل ملفات البيانات
  • BLUEHOOD_DB_PATH - مسار مباشر لملف قاعدة البيانات

ملاحظة: يمكن تكوين إعدادات نبض القلب والتقليم من واجهة الويب (الإعدادات > العمليات) أو عبر متغيرات البيئة. قيم واجهة المستخدم تأخذ الأولوية على متغيرات البيئة.

كيف يعمل

تصنيف الأجهزة

يصّنف Bluehood الأجهزة باستخدام إشارات متعددة (حسب الأولوية):

  1. معرفات خدمة BLE - الأكثر دقة (معدل ضربات القلب = جهاز قابل للارتداء، A2DP = صوتي، إلخ.)
  2. أنماط اسم الجهاز - "iPhone"، "Galaxy"، "AirPods"، إلخ.
  3. بحث OUI للبائع - Apple، Samsung، Bose، إلخ.

عناوين MAC العشوائية

تقوم الأجهزة الحديثة بتعشية عناوين MAC الخاصة بها للخصوصية. يقوم Bluehood بما يلي:

  • كشف عناوين MAC العشوائية (البت المُدار محليًا)
  • إخفاؤها من قائمة الأجهزة الرئيسية (غير مفيدة للتتبع)
  • عرض عدد الأجهزة العشوائية المخفية

تحليل الأنماط

يحلل Bluehood الطوابع الزمنية للمشاهدات لكشف الأنماط:

  • الوقت من اليوم: صباح، بعد الظهر، مساء، ليل
  • اليوم من الأسبوع: أيام الأسبوع، عطلات نهاية الأسبوع
  • التكرار: ثابت، يومي، منتظم، عرضي، نادر

أمثلة على الأنماط: "يومي، مساءً (5م-9م)"، "أيام الأسبوع، صباحًا (8ص-12م)"

ارتباط الأجهزة

يكتشف Bluehood الأجهزة التي تظهر معًا بشكل متكرر خلال نافذة زمنية قابلة للتكوين. يمكن أن يكشف هذا عن:

  • أجهزة يملكها نفس الشخص (هاتف + ساعة ذكية)
  • أشخاص يسافرون معًا
  • أجهزة تشترك في جدول زمني

مناطق القرب

بناءً على قوة إشارة RSSI، تصنف الأجهزة إلى مناطق قرب:

  • فوري (> -50 dBm): قريب جدًا، على بعد أمتار قليلة
  • قريب (-50 إلى -60 dBm): قريب، في نفس الغرفة
  • بعيد (-60 إلى -70 dBm): أبعد قليلاً، غرف مجاورة
  • نائي (< -70 dBm): بعيد، على حافة نطاق الكشف

تحليل مدة الإقامة

يتتبع المدة التي تقضيها الأجهزة في النطاق من خلال تحليل الفجوات بين المشاهدات. حد فجوة قابل للتكوين (الافتراضي 15 دقيقة) يحدد متى تبدأ "جلسة" جديدة.

مقاييس Prometheus

يمكن لـ Bluehood عرض مقاييس لجمعها بواسطة Prometheus. قم بتمكينه عن طريق تعيين متغير البيئة BLUEHOOD_METRICS_PORT أو علامة --metrics-port في CLI.

root@kitploit:~
# عبر متغير البيئة
export BLUEHOOD_METRICS_PORT=9199

# عبر CLI
bluehood --metrics-port 9199

يتم تقديم المقاييس على http://host:9199/metrics.

المقاييس المتاحة

لوحة تحكم Grafana

تم تضمين لوحة تحكم Grafana جاهزة للاستيراد في grafana/bluehood-dashboard.json. قم باستيرادها عبر واجهة Grafana (Dashboards > Import) أو عبر API:

root@kitploit:~
curl -X POST "http://localhost:3000/api/dashboards/db" \
  -H "Authorization: Bearer <your-api-key>" \
  -H "Content-Type: application/json" \
  -d "{\"dashboard\": $(cat grafana/bluehood-dashboard.json), \"overwrite\": true}"

استكشاف الأخطاء وإصلاحها

لم يتم العثور على أجهزة

  • تأكد من أن محولك يدعم BLE (بلوتوث 4.0+) مع دور Central — المحولات القديمة لن تعمل
  • تأكد من تمكين محول البلوتوث: bluetoothctl power on
  • تحقق من اكتشاف المحول: bluehood --list-adapters
  • قم بتشغيله باستخدام sudo إذا تم رفض الإذن

مشاكل Docker

BLE scan error: org.freedesktop.DBus.Error.ServiceUnknown / The name org.bluez was not provided

لم يتم تثبيت BlueZ أو تشغيله على المضيف. الإصلاح:

root@kitploit:~
sudo apt install bluez          # Debian/Ubuntu
sudo systemctl enable --now bluetooth
docker compose restart

قائمة التحقق العامة:

  • تأكد من تثبيت BlueZ على المضيف (وليس فقط داخل الحاوية)
  • تحقق من تشغيل خدمة البلوتوث: systemctl status bluetooth
  • تأكد من أن محولك مرئي: bluetoothctl list

المساهمة

نرحب بالمساهمات! يرجى فتح issue أو PR على GitHub.

المساهمون

  • @martinh2011 (Martin Hüser) - تحسينات ذاكرة التخزين المؤقت لبائع MAC
  • @hatedabamboo (Kirill Solovei) - دعم السمة الفاتحة
  • @krnltrp - تحسينات واجهة الويب
  • @jacobpretorius (Jacob Pretorius) - إصلاح تصدير CSV في JavaScript (#14)، النقر لفتح الإعدادات (#16)
  • @unqualifiedkoala - توثيق متطلبات محول BLE
  • @dazzag24 - الإبلاغ عن مشكلة تنسيق عنوان MAC في macOS
  • @floese (W.A.Flozart) - إصلاح النقر المزدوج في Firefox (#29)
  • @GeiserX (Sergio Fernández) - مصدر مقاييس Prometheus (#35)، إصلاح قاعدة بيانات البائع غير المحظورة (#37)، مسح ثنائي المحول (#33)، استرداد مسح قوي مع rfkill (#40)

الترخيص

رخصة MIT - انظر LICENSE للتفاصيل.

إخلاء المسؤولية

هذه الأداة مخصصة للأغراض التعليمية فقط. كن على دراية بقوانين الخصوصية في منطقتك عند مراقبة أجهزة البلوتوث. المؤلف ليس مسؤولاً عن أي استخدام سيء لهذا البرنامج.


تم الإنشاء بواسطة Danny McClelland

تنزيل الأداة
المتغيرالقيمة الافتراضيةالوصف
PUID1000UID لمستخدم الحاوية — قم بتعيينه ليطابق مستخدم المضيف (id -u) عند استخدام روابط التثبيت
PGID1000GID لمستخدم الحاوية — قم بتعيينه ليطابق مجموعة المضيف (id -g) عند استخدام روابط التثبيت
TZUTCمنطقة زمنية للحاوية (مثل Europe/London)
BLUEHOOD_ADAPTERautoمحول بلوتوث لمسح BLE (مثل hci0)
BLUEHOOD_CLASSIC_ADAPTERنفس BLUEHOOD_ADAPTERمحول منفصل لمسح البلوتوث الكلاسيكي (مثل hci1). عند تعيينه لمحول مختلف، تعمل عمليات مسح BLE والكلاسيكي بشكل متزامن.
BLUEHOOD_DATA_DIR/dataدليل تخزين قاعدة البيانات
BLUEHOOD_METRICS_PORTمعطلمنفذ مقاييس Prometheus (مثل 9199)
BLUEHOOD_HEARTBEAT_URLمعطلعنوان URL لإرسال فحوصات نبض القلب (مثل عنوان push في healthchecks.io أو uptime-kuma)
BLUEHOOD_HEARTBEAT_INTERVAL300الثواني بين فحوصات نبض القلب
BLUEHOOD_PRUNE_DAYS0 (معطل)حذف المشاهدات الأقدم من N يومًا تلقائيًا لتوفير التخزين
المفتاحالإجراء
/تركيز شريط البحث
rتحديث قائمة الأجهزة
cتبديل العرض المضغوط
wتبديل المراقبة على الجهاز المحدد
Escإغلاق النافذة
?عرض اختصارات لوحة المفاتيح
المقياسالنوعالوصف
bluehood_scans_totalCounterإجمالي دورات المسح المكتملة
bluehood_scan_errors_totalCounterأخطاء المسح (الوسم: scan_type)
bluehood_sightings_totalCounterإجمالي مشاهدات الأجهزة المسجلة
bluehood_new_devices_totalCounterالأجهزة الفريدة الجديدة المكتشفة
bluehood_last_scan_devicesGaugeالأجهزة في آخر مسح (الوسم: scan_type)
bluehood_devices_totalGaugeالأجهزة الفريدة في قاعدة البيانات (الوسم: bt_type)
bluehood_devices_activeGaugeالأجهزة التي شوهدت في آخر 5 دقائق
bluehood_devices_watchedGaugeعدد الأجهزة المراقبة
bluehood_devices_ignoredGaugeعدد الأجهزة المتجاهلة
bluehood_scan_duration_secondsHistogramمدة دورة المسح
bluehood_device_rssi_dbmHistogramتوزيع RSSI لأجهزة BLE
bluehood_build_infoInfoمعلومات الإصدار