
तीन-चरणीय ब्लूटूथ BDADDR निष्कर्षण, Fast Pair डिवाइसों पर DoS और हाईजैक; CVE-2025-36911 के दायरे से बाहर अनपैच्ड प्रिमिटिव्स (Ubertooth की आवश्यकता नहीं)
ब्लूटूथ BDADDR निष्कर्षण, डिनायल-ऑफ-सर्विस और हाईजैक अनुसंधान उपकरण
© 2026 @Ymsniper — केवल अधिकृत सुरक्षा अनुसंधान के लिए।
Whisper Bully एक तीन-चरणीय ब्लूटूथ सुरक्षा अनुसंधान उपकरण है जो Google Fast Pair (सेवा UUID fe2c) का विज्ञापन करने वाले उपकरणों को लक्षित करता है। यह दो अनपैच्ड आक्रमण प्रिमिटिव प्रदर्शित करता है जो CVE-2025-36911 फर्मवेयर पैच के दायरे से बाहर हैं:
⚠️ यह उपकरण 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
मूल कारण: जब एक BLE कनेक्शन स्थापित होता है, तो Linux BlueZ होस्ट स्टैक LL_CONNECTION_COMPLETE इवेंट को प्रोसेस करता है और डिवाइस के रिज़ॉल्वेबल प्राइवेट एड्रेस (RPA) को उसके स्थायी आइडेंटिटी एड्रेस में रिज़ॉल्व करता है, उसे BlueZ डिवाइस टेबल में कैश करता है। यह किसी भी GATT सेवा इंटरैक्शन से पहले, लिंक लेयर / HCI स्तर पर होता है। कोई Fast Pair प्रोटोकॉल शामिल नहीं होता।
कोड वास्तव में क्या करता है:
fe2c का विज्ञापन करने वाले उपकरणों के लिए सक्रिय BLE स्कैन (BleakScanner) करता है — केवल लक्ष्य पहचान के लिए उपयोग, कोई प्रोटोकॉल इंटरैक्शन नहींBleakClient.connect() के माध्यम से एक साधारण BLE कनेक्शन स्थापित करता है — किसी भी प्रकार का कोई GATT लेखन नहींNoInputNoOutput पर सेट करता हैwb.py की पंक्ति 452)bluetoothctl pair <rpa_addr> चलाता है — मानक ब्लूटूथ SMP पेयरिंग प्रयास, Fast Pair नहींBonded: yes आउटपुट के लिए bluetoothctl stdout की निगरानी करता है, जिसमें बॉन्डेड एड्रेस हो सकता हैbluetoothctl devices कॉल करता है और प्रारंभिक RPA से तुलना करता है — समान डिवाइस नाम लेकिन भिन्न एड्रेस वाली कोई भी प्रविष्टि स्थायी आइडेंटिटी एड्रेस होती है, जिसे BlueZ द्वारा चरण 2 में लीक किया गयापैच इसे क्यों ठीक नहीं करता:
CVE-2025-36911 फर्मवेयर फिक्स एक्सेसरी पर Fast Pair GATT Key-Based Pairing विशेषता हैंडलर में एक पेयरिंग मोड जाँच जोड़ता है। यह उपकरण उस विशेषता पर कभी लेखन नहीं करता। आइडेंटिटी एड्रेस लीक हमलावर के Linux होस्ट पर BlueZ के स्वयं के डिवाइस कैश के माध्यम से होता है — पूरी तरह से एक्सेसरी के फर्मवेयर के बाहर।
मुख्य व्यवहार नोट:
bluetoothctl pair चरण विफल हो या टाइमआउट हो जाएNoInputNoOutput का अर्थ है जस्ट वर्क्स के लिए दोनों ओर से कोई उपयोगकर्ता इंटरैक्शन नहींस्थायी एड्रेस ज्ञात होने के बाद, वैकल्पिक रूप से l2flood के संशोधित संस्करण का उपयोग करके एक निरंतर L2CAP डिनायल-ऑफ-सर्विस निष्पादित करें।
उपकरण में दो मोड उपयोग किए जाते हैं:
-R फ्लैग — EMP मोड (चरण 2 फ्लड)
साइलेंट फायर-एंड-फॉरगेट बर्स्ट-रीकनेक्ट। सभी थ्रेड अपने कनेक्ट → बर्स्ट → फोर्स्ड क्लोज़ चक्रों को सिंक्रोनाइज़ करते हैं ताकि लक्ष्य को स्टैगर्ड L2CAP चैनल शफलिंग के बजाय आवधिक पूर्ण ACL टियरडाउन प्राप्त हो, जिसे वह अवशोषित कर सकता है। हर क्लोज़ पर तत्काल RST टियरडाउन के लिए SO_LINGER {1,0} का उपयोग करता है। सामान्य संचालन के दौरान कोई stdout आउटपुट उत्पन्न नहीं करता — कनेक्ट त्रुटियाँ stderr पर दबा दी जाती हैं और केवल आवधिक रूप से मुद्रित होती हैं।
सामान्य मोड (चरण 3 हाईजैक प्रोब)
बिना -R के उपयोग किया जाता है ताकि यह जाँचा जा सके कि लक्ष्य अभी भी प्रतिक्रिया दे रहा है या नहीं। इस मोड में भी सुधार किया गया — यह अब रीकनेक्ट्स को स्वचालित रूप से संभालता है और जब लक्ष्य प्रतिक्रिया देना बंद कर देता है तो no response from <addr>: id N आउटपुट करता है, जिसे wb.py हाईजैक को ट्रिगर करने के लिए मॉनिटर करता है।
परिणाम: फ्लड सक्रिय रहने पर लक्ष्य डिवाइस सामान्य कनेक्शन प्रयासों के प्रति अनुत्तरदायी हो जाता है। आक्रमण रुकने पर डिवाइस पूरी तरह से ठीक हो जाता है — कोई स्थायी क्षति नहीं।
मल्टीथ्रेड व्यवहार:
मूल कारण: निरंतर L2CAP फ्लड लक्ष्य डिवाइस के ब्लूटूथ स्टैक को क्रैश या रीसेट करने का कारण बनता है। रिकवरी विंडो के दौरान — Fast Pair GATT सेवा के पुनः पंजीकृत होने से पहले और सिक्योरिटी मैनेजर के पूरी तरह से पुनः आरंभ होने से पहले — डिवाइस बिना Fast Pair GATT हैंडशेक की आवश्यकता के NoInputNoOutput से एक मानक SMP जस्ट वर्क्स बॉन्ड स्वीकार करता है, जो सामान्य रूप से बॉन्ड को गेट करता है। परिणामी बॉन्ड स्थायी होता है: यह BT एडाप्टर रीसेट से बच जाता है और bluetoothctl info में Paired: yes / Bonded: yes दिखाता है।
यह CVE-2025-36911 से एक अलग निष्कर्ष क्यों है:
CVE-2025-36911 पैच FP GATT Key-Based Pairing विशेषता हैंडलर में एक पेयरिंग मोड जाँच लागू करता है। चरण 3 उस विशेषता को कभी स्पर्श नहीं करता। बॉन्ड SMP परत पर एक ऐसी विंडो के दौरान स्थापित होता है जहाँ FP GATT सर्वर पुनः आरंभ नहीं हुआ होता, इसलिए Fast Pair सुरक्षा गेट तक कभी पहुँचा ही नहीं जाता। एक पूर्णतः पैच किया गया डिवाइस इसके प्रति संवेदनशील रहता है क्योंकि स्टैक रिकवरी के दौरान पैच को SMP परत में कोई दृश्यता नहीं होती।
कोड वास्तव में क्या करता है:
l2flood -c -1 -t 2) भेजता है कि डिवाइस अनुत्तरदायी है — आउटपुट में no response from <addr>: id N खोजता हैbluetoothctl connect <permanent_addr> चलाता हैNoInputNoOutput / NoInputNoOutput पर बातचीत करता है → जस्ट वर्क्स एसोसिएशन मॉडल → बॉन्ड पूर्ण होता हैbluetoothctl connect एग्जिट कोड 0 लौटाता हैडिवाइस स्थिति के अनुसार सफलता की संभावना:
| डिवाइस स्थिति | अपेक्षित परिणाम |
|---|---|
| फ्लड में सक्रिय / अनुत्तरदायी | उच्चतम सफलता — रिकवरी के दौरान स्टैक अवक्रमित स्थिति में |
| फ्लड से पुनर्प्राप्त हो रहा | उच्च सफलता — अस्थायी SM पुनः-आरंभ विंडो |
| पूर्णतः पुनर्प्राप्त | कम सफलता — सामान्य सुरक्षा बहाल |
| बंद (पावर ऑफ) | विफल |
| | CVE-2025-36911 (WhisperPair) | यह उपकरण | |---|---| | उपयोग किया गया प्रोटोकॉल | Fast Pair GATT KBP (UUID 1236 लेखन) | कोई नहीं — केवल साधारण BLE कनेक्ट | | BDADDR लीक पथ | एन्क्रिप्टेड KBP अधिसूचना (BR/EDR एड्रेस) | LL_CONNECTION_COMPLETE पर BlueZ RPA रिज़ॉल्यूशन | | ऑथ बायपास पथ | FP पेयरिंग मोड जाँच अनुपस्थित | BT स्टैक रिकवरी विंडो के दौरान SMP जस्ट वर्क्स | | 36911 फिक्स द्वारा पैच किया गया? | हाँ | नहीं | | पैच किए गए उपकरणों पर कार्य करता है? | नहीं | हाँ | | CWE | CWE-287 | CWE-200 (चरण 1) + CWE-362/CWE-287 (चरण 3) |
यह एक डिनायल-ऑफ-सर्विस और अनधिकृत पहुँच अनुसंधान उपकरण है।
इस उपकरण का उपयोग उन उपकरणों पर करना जिनके आप स्वामी नहीं हैं या बिना स्पष्ट लिखित प्राधिकरण के, संघीय अपराध है जिसके लिए कंप्यूटर फ्रॉड एंड एब्यूज़ एक्ट (18 U.S.C. § 1030) और अन्य क्षेत्राधिकारों में समकक्ष क़ानूनों के तहत कारावास और जुर्माना हो सकता है।
आप इस उपकरण का उपयोग केवल इन पर कर सकते हैं: