कम बजट वाला उपभोक्ता हार्डवेयर जासूसी डिवाइस (2018)
(ha.cking.ch)- सामान्य USB डेटा/चार्जिंग केबल जैसा दिखने वाला S8 data line locator एक ऐसा उत्पाद है जिसमें प्लग के अंदर GSM सुनने और लोकेशन ट्रैकिंग डिवाइस छिपा है, जो दिखाता है कि सस्ता consumer hardware भी physical security खतरा बन सकता है
- डिवाइस फोन कॉल के जरिए बिल्ट-इन माइक्रोफोन की आवाज सुनाता है, SMS
1111से voice detection callback चालू करने पर लगभग 40dB से अधिक आवाज पर कॉल करता है, औरdw·loccommands से लोकेशन SMS और gpsui.net लिंक लौटाता है - टेस्ट में लोकेशन क्वेरी की accuracy अधिकतम 1.57km error तक ही रही, और क्वेरी के दौरान mobile data connection बनने से unknown third-party server पर डेटा भेजे जाने की बात मुख्य जोखिम के रूप में सामने आई
- teardown में MediaTek MT6261MA और RDA 6626e की पुष्टि हुई, USB data lines सिर्फ pass-through थीं, और अलग DP/DM pads के जरिए MediaTek USB endpoint तक पहुंचकर ROM और flash dump करना संभव था
- gpsui.net location history, real-time tracking, geofence और remote command push देता था, और बाद में authorization bypass IDOR vulnerability के कारण 615,817 account details exposed और modified हो सकने का जोखिम पाया गया
केबल के रूप में छिपाया गया GSM listening device
- S8 data line locator एक ऐसा उत्पाद है जिसमें standard USB data/charging cable के plug के अंदर GSM receiver/transmitter device छिपा है
- Supported frequencies GSM 850, 900, 1800, 1900MHz हैं
- इसे इस तरह बेचा गया कि कार के अंदर चोर के लिए USB cable को location tracker के रूप में पहचानना मुश्किल होगा
- GPS नहीं होने की वजह से location reporting मोटी-मोटी है, और test में actual location से अधिकतम 1.57km तक का अंतर आया
- Misuse का तरीका सरल है
- डिवाइस पर call करके built-in microphone का real-time audio सुना जा सकता है
- SMS command से sound detection पर callback कराने के लिए कहा जा सकता है
- SIM डालकर set up करने के बाद इसे packaging case में बिना कोई साफ दिखाई देने वाला निशान छोड़े वापस रखा जा सकता है
SMS commands से चलने वाली listening और location query
-
Listen in
- S8 data line locator पर 10 सेकंड call करने पर call connect हो जाती है और device microphone input सुना जा सकता है
-
Call back
- SMS
1111voice monitoring, voice callback और sensitivity setting को activate करता है - Response
DT: Set voice monitoring, voice callback and sound sensitivity:400के रूप में आता है - Audio level 40dB से ऊपर जाते ही device उस नंबर पर call करता है जिसने
1111command भेजी थी - SMS
0000audio-trigger callback को deactivate करता है औरDT: Voice monitoring cancelled successfully.से response देता है
- SMS
-
Query location
- Manual के अनुसार SMS
dwlocation लौटाता है - Response में address, gpsui.net link और battery level शामिल होते हैं
- gpsui.net link बिना authentication access किया जा सकता है और Google Maps पर redirect करता है
- Location query के दौरान device ने mobile data connection इस्तेमाल किया, और carrier billing details में यह “MMS/Internet” के रूप में दिखा
- Manual के अनुसार SMS
teardown से पुष्टि हुई internal structure
- Device के अंदर के chips MediaTek MT6261MA और RDA 6626e हैं
- MT6261MA सस्ते चीनी smartwatches में अक्सर इस्तेमाल होने वाला chip है, लेकिन MediaTek की official documentation या जानकारी उपलब्ध नहीं थी
- RDA 6626e GSM850, EGSM900, DCS1800, PCS1900 के लिए quad-band front-end module है
- USB A connector और Micro-B cable MT6261MA से connected नहीं हैं
- दोनों USB ports सिर्फ signals को आपस में pass-through करते हैं
- UART पर boot के करीब 3 सेकंड बाद MTK Bootloader V005 banner output हुआ, लेकिन उसके बाद output रुक गया और input ignore किया गया
- दूसरे firmware versions AT modem commands ले सकते हैं
- वैकल्पिक cable output में
ZhiPuसे जुड़े logs औरMTK6261M.T16.17.01.10, build date2017/01/10 17:33दिखे
- USB connector के DP/DM pads असली USB D+/D- lines नहीं हैं, बल्कि MT6261MA की ओर routed हैं
- यहां USB cable solder करने पर यह
ID 0e8d:0003 MediaTek Inc. MT6227 phoneendpoint के रूप में पहचाना जाता है - यह connection “MTK boot repair”, “MTK DM DP flash” आदि के नाम से जाना जाता है और ROM व flash dump में इस्तेमाल होता है
- यहां USB cable solder करने पर यह
firmware dump और flash writing की सीमाएं
- Firmware dump के लिए open-source Fernvale research OS इस्तेमाल किया गया
- यह मूल रूप से MT6260 के लिए था, लेकिन MT6261 पर port की गई branch MT6261MA पर भी काम करती है
- Urja “urjaman” Rannikko की
fernly6261branch build करके इस्तेमाल की गई
- ROM dump
fernly-usb-loaderऔरdump-rom-usb.binका उपयोग करrom.bingenerate करने के तरीके से किया गया - Flash dump flashrom पर Fernvale patch apply करने के बाद
fernvale_spiprogrammer के जरिए किया गया- Target flash
MX25L3205(A)के रूप में read हुआ, और resultflash.datमें save हुआ - दूसरे device में
GD25LQ324096KB SPI flash मिला
- Target flash
- Flash writing को
flashrom --write flash.datसे try किया जा सकता था, लेकिन flash block protected था और flashrom से protection bits disable नहीं हो सके
SIM और network behavior
- SIMtrace से SIM और device के बीच communication sniff करने पर device ने phonebook और SMS storage records सभी access किए
- Accessed files में ADF के EF(ECC), EF(EXT2), EF(SMS), DF(TELECOM) के DF(PHONEBOOK), EF(ADN), EF(ANRA1), EF(SMS) शामिल थे
- कुछ access device functionality देने के लिए जरूरी नहीं थे
- OpenBTS और Ettus B100 से GPRS traffic sniff करने की कोशिश की गई, लेकिन S8 data line locator ने GPRS से connect नहीं किया
- इस दौरान
dwlocation command नेgpsui.net/smap.php?lac=...&cellid=...format के link वाला alternative response लौटाया
- इस दौरान
- Carrier bill में location query के समय “MMS/Internet” usage confirm हुआ
- Device को idle state में छोड़ने के दौरान भी कभी-कभी “MMS/Internet” service इस्तेमाल हुई
- कुछ tracking functions test के दौरान activate हुए हो सकते हैं, लेकिन कौन सा data भेजा जाता है और इसे disable कैसे करें, यह confirm नहीं हुआ
flash के अंदर settings और hidden commands
flash.datstrings से संकेत मिलता है कि device Nucleus RTOS चला सकता हैCopyright (c) 1993-2000 ATI - Nucleus PLUS - Version ARM 7/9 1.11.19string मिली
- FAT12 filesystem extraction में flash translation layer (FTL) छूट जाने से corrupted result आया
- कुछ FAT12 जैसे दिखने वाले areas थे, लेकिन ज्यादातर orphan files या empty files थे
- SIM card बदलने पर The Sleuthkit द्वारा listed files काफी बदल गईं, इसलिए यह FAT12 न हो या modified FAT12 हो, इसकी संभावना बची रही
- Flash में inserted SIM का IMSI, remote control में इस्तेमाल होने वाला phone number, और
gpsui.netstring मौजूद थे- gpsui.net को MCC, MNC, LAI, CID codes को address और map link में बदलने वाला server माना गया, लेकिन flash writing fail होने से confirm नहीं हो सका
dw,1111,0000search करते समय कई hidden commands मिलेhelpdw,qqq,1111,0000,ddd,aqb,eee,dde,hhhलौटाता हैlocdwजैसा ही काम करता हैimsiIMEI और IMSI query करता है*3646655*version information query करता है*reboot*device को reboot करता है
- कई commands ठीक से काम नहीं करते थे, और कुछ commands LED या TF card जैसी ऐसी features की ओर इशारा करते थे जो इस device में नहीं हैं
- लगता है firmware कई location tracking और listening devices में shared है
- Response strings flash में plaintext में नहीं मिलीं, इसलिए कुछ data compressed लगता है
gpsui.net से बनी अतिरिक्त exposure
- gpsui.net सिर्फ map link destination से आगे बढ़कर surveillance hub जैसा काम करता है
http://gpsui.net/u/xxxxमेंxxxxको letters और numbers से बदलने पर arbitrary user की location देखी जा सकती थी- Website में
ZhiPureferences थे, और ऐसा लगता है कि यह company trackers बनाती है
- S8 data line monitor को
aqbtext भेजने पर login credentials मिल सकते हैं- Username और password दोनों 6-digit numbers हैं
- यह value flash में IMSI के ठीक पहले भी stored थी
- Web interface location tracking device management features काफी व्यापक रूप से देता है
- Map पर device location और last update time दिखाता है
- Settings बदलना, alarms set करना, real-time location tracking activate करना, past location playback देखना, और geofence settings support करता है
- Remote commands device पर push किए जा सकते हैं
- एक account में कई devices add करके manage किए जा सकते हैं
- Product packaging और original manual user को gpsui.net website, login credentials, location history storage, और web के जरिए device remote control के बारे में नहीं बताते
- Disclosure के बाद Vangelis Stykas ने gpsui.net में user control key के जरिए authentication bypass IDOR vulnerability खोजी
- इस vulnerability से horizontal privilege escalation हो सकता था, जिससे एक user दूसरे 615,817 accounts की information देख या modify कर सकता था
- बाद में अन्य GPS location tracking web services की investigation के results Trackmageddon में summarize किए गए
detection methods और बाकी काम
- S8 data line locator data भेजते समय low-cost RF detector CC308+ से detect किया जा सकता है
- Device में shielding अच्छी नहीं लगती, और
dwlocation request के समय noticeable electronic noise करता है - कुल मिलाकर यह कई RF interferences पैदा करता दिखता है
- Device में shielding अच्छी नहीं लगती, और
- मूल लक्ष्य, यानी mobile data phone-home function disable करना, सफल नहीं हुआ
- flashrom से नया firmware write नहीं हो सका, और block protection हटाना बचा हुआ issue है
- SPFlash tool या Flash tool जैसे दूसरे flashing paths संभव हो सकते हैं, लेकिन वे open-source तरीके नहीं हैं
- GPRS data connection capture भी fail हुआ
- Device ने OpenBTS network पर GPRS इस्तेमाल नहीं किया
- EF(ACL) access SIM trace में नहीं दिखा, लेकिन correct APN settings flash में थीं, इसलिए लगता है कि ये carrier settings SMS के जरिए मिलती हैं
- Device board को और छोटा process करने पर इसे USB connector के बिना, सिर्फ 5V 1A power वाली जगहों में छिपाए जा सकने वाले modular listening device में बदला जा सकता है
- OpenBTS test के दौरान voice detection callback बंद न करने की गलती से, virtual number
3333333वाला counterpart 2 मिनट तक device microphone सुनता रहा- यह call बाद में logs check करने तक पता नहीं चली
- यह छोटा hardware implant गुप्त और खतरनाक है
1 टिप्पणियां
Hacker News की राय
ज़्यादा आसान तरीका शायद modified keyboard होगा
कोई भी keyboard के अंदर esp32 डालकर उसे बदल सकता है और कहीं भी छोड़ सकता है, फिर keystrokes चुरा सकता है या Bluetooth/WiFi के ज़रिए उस तक पहुँच सकता है
wireless transmission को सिर्फ़ खास समय पर चालू होने के लिए भी बनाया जा सकता है
physical access न होने पर भी, Bluetooth की बजाय proprietary RF dongle इस्तेमाल करने वाले wireless mouse remote keystroke injection के लिए असुरक्षित होते हैं
हालाँकि ज़्यादातर लोग शायद ऐसी चीज़ों पर ध्यान नहीं देंगे
SMS को control protocol के रूप में इस्तेमाल करना अच्छा नहीं लगता
हर बार command भेजने पर carrier के पास ऐसा सबूत छूट सकता है जो लगभग स्थायी रूप से stored रहे
पूरी तरह ईमानदार उपयोग में, चोरी हो जाने पर car या USB port वाले किसी दूसरे device को track करने के लिए इसका इस्तेमाल हो सकता है
अगर मेरे पास आसानी से चोरी होने वाली Kia या Hyundai गाड़ी होती, तो शायद मैं ऐसी कोई चीज़ उसमें छिपाकर रखता
दिलचस्प बात यह है कि मैं अपने खाली समय में इसी क्षेत्र से जुड़ी कोई चीज़ बना रहा हूँ, और ठीक इसी वजह से मैंने LoRa चुना
payload, line-of-sight से तय होने वाली range, और multiplexing की कमी जैसी बहुत-सी सीमाएँ हैं, लेकिन पिछले साल के आखिर में real-world testing में मिली range वाकई प्रभावशाली थी
off-the-shelf dev boards के साथ मुझे manufacturer specs से लगभग 20% ज़्यादा, यानी 12.5km तक मिला
UK के supermarkets में preloaded SIM भी बिकते हैं
अगर आप electronics को खोल सकते हैं, तो ऐसा करना अच्छा रहेगा
सभी chips के identifiers को DDG पर search करके बहुत कुछ सीखा जा सकता है
disassembly के हर step पर तस्वीरें लेने से यह याद रखने में मदद मिलती है कि parts एक-दूसरे में कैसे fit होते हैं
“gpsui.net के login details तक पहुँच रखने वाला कोई भी व्यक्ति device को control कर सकता है. मूल packaging या instructions में उस website का कोई ज़िक्र नहीं है” — यह डरावना है
इस उद्देश्य के लिए ocular prosthesis इस्तेमाल करने का विचार मेरे मन में आता रहा है
अब camera, battery, storage, और wireless communications सब cosmetic prosthesis के भीतर फिट हो सकते हैं, और अपने-आप काम कर सकते हैं या smartphone के साथ विस्तार पा सकते हैं
https://www.instagram.com/bsmachinist/
Instagram लिंक के लिए माफ़ी
क्या इस तरह के bug detector जैसी कोई चीज़ होती है? मैं फिल्मों में दिखने वाले “bug sweeper” के बारे में सोच रहा हूँ
यह circuit boards detect कर सकता है
“NLJD antenna head एक transceiver है, जो electronic components की मौजूदगी की पुष्टि करने के लिए digital spread spectrum signal radiate करता है. जब energy semiconductor junctions (diodes, transistors, circuit board connections आदि) से टकराती है, तो harmonic signals receiver तक वापस लौटते हैं. receiver harmonic signal की strength मापता है और second या third harmonic में फर्क करता है. display पर ज़्यादा strong second harmonic अगर लाल रंग में दिखे, तो इसका मतलब है कि electronic junction detect हुआ है. इस तरह portable ORION का इस्तेमाल, electronic device चालू है या नहीं इससे परवाह किए बिना, दीवारों, वस्तुओं, containers, furniture और अधिकांश सतहों को scan करके छिपे electronic devices खोजने में किया जाता है”
सार यह है कि GSM पर communicate करते समय इन्हें आसानी से detect किया जा सकता है, और device की shielding भी काफ़ी खराब होती है, इसलिए operation के दौरान बहुत-सा RF interference पैदा होता है जिसे पकड़ना आसान है
सस्ता RF detector काफ़ी है, और अगर आपके पास full spectrum analyzer या SDR हो तो यह और आसान हो जाता है
लेकिन जब device sleep mode में हो और noise activation या command का इंतज़ार कर रहा हो, तब यह बहुत कठिन हो जाता है, इसलिए फिल्मों में दिखाया जाने वाला “तेज़ bug sweep” वास्तव में उम्मीद से ज़्यादा पेचीदा है
क्या host device को shield करके, सिर्फ़ चुनी हुई frequency पर GSM antenna को जला देना संभव होगा?
जैसे नए hardware को पहले से sterilize करना
क्योंकि packaging पर यह नहीं लिखा कि यह tracking device है, इसलिए इसका intended use शायद किसी business meeting, बच्चे, या रिश्तेदार को दिए जाने वाले gift जैसा कुछ होगा
संबंधित पोस्ट:
Inside a low budget consumer hardware espionage implant (2018) - https://news.ycombinator.com/item?id=20190251 - जून 2019, 43 comments
Inside a low-budget consumer hardware espionage implant - https://news.ycombinator.com/item?id=15676737 - नवंबर 2017, 92 comments
अगर अभी तक नहीं आया है, तो जल्द ही 801.11ah built-in modulated cable आने की संभावना है
यह कम लागत, कम power requirement और काफ़ी अच्छी range वाली तकनीक है, इसलिए दुर्भाग्य से इसका बचाव करना मुश्किल हो सकता है