| Literature DB >> 35062473 |
Efstratios Chatzoglou1, Georgios Kambourakis2, Christos Smiliotopoulos1.
Abstract
The impact that IoT technologies have on our everyday life is indisputable. Wearables, smart appliances, lighting, security controls, and others make our life simpler and more comfortable. For the sake of easy monitoring and administration, such devices are typically accompanied by smartphone apps, which are becoming increasingly popular, and sometimes are even required to operate the device. Nevertheless, the use of such apps may indirectly magnify the attack surface of the IoT device itself and expose the end-user to security and privacy breaches. Therefore, a key question arises: do these apps curtail their functionality to the minimum needed, and additionally, are they secure against known vulnerabilities and flaws? In seek of concrete answers to the aforesaid question, this work scrutinizes more than forty chart-topping Android official apps belonging to six diverse mainstream categories of IoT devices. We attentively analyse each app statically, and almost half of them dynamically, after pairing them with real-life IoT devices. The results collected span several axes, namely sensitive permissions, misconfigurations, weaknesses, vulnerabilities, and other issues, including trackers, manifest data, shared software, and more. The short answer to the posed question is that the majority of such apps still remain susceptible to a range of security and privacy issues, which in turn, and at least to a significant degree, reflects the general proclivity in this ecosystem.Entities:
Keywords: Android; IoT; dynamic; security; static; vulnerabilities; weaknesses
Mesh:
Year: 2022 PMID: 35062473 PMCID: PMC8779354 DOI: 10.3390/s22020513
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Official management apps of popular IoT devices.
| App Name | Examined ver. | Popularity | Connectivity |
|---|---|---|---|
| AP | |||
| ASUS Router | 2.0.0.6.28 | 1M+ | Wi-Fi |
| D-Link WiFi | 1.4.4 build 1 | 1M+ | Wi-Fi |
| Huawei HiLink | 9.0.1.323 | 10M+ | Wi-Fi |
| Linksys | 2.16.1 | 1M+ | Wi-Fi |
| MikroTik Pro | 1.3.20 | 1M+ | Wi-Fi |
| Mi Wi-Fi | 4.2.9 | 1M+ | Wi-Fi |
| Netgear Nighthawk | 2.11.5.1716 | 1M+ | Wi-Fi |
| TP-Link Tether | 3.4.28 | 10M+ | Wi-Fi |
| UniFi Network | 3.9.3 | 1M+ | Wi-Fi |
| Smart TV | |||
| LG ThinQ | 3.6.12110 | 10M+ | Wi-Fi |
| RemoteNOW | 5.01.011 | 1M+ | Wi-Fi |
| Wireless IP cameras | |||
| Arlo | 3.5.4_28395 | 1M+ | Wi-Fi |
| HiLookVision | 3.10.1.0924 | 5M+ | Wi-Fi |
| iVMS-4500 | 4.7.12 | 10M+ | Wi-Fi |
| Mi Home | 6.10.709 | 10M+ | Wi-Fi |
| mydlink | 2.5.0 | 1M+ | Wi-Fi |
| mydlink Lite | 3.8.14 | 1M+ | Wi-Fi |
| Nest | 5.66.0.7 | 5M+ | Wi-Fi |
| TP-Link Tapo | 2.4.25 | 1M+ | Wi-Fi |
| Wyze | 2.24.23 | 1M+ | Wi-Fi |
| Smart wearable | |||
| Galaxy Wearable (Samsung Gear) | 2.2.17082261 | 500M+ | Bluetooth |
| Garmin Connect | 4.47 | 10M+ | Bluetooth |
| Fitbit | 3.18 | 50M+ | Bluetooth |
| Huawei Health | 12.0.8.300 | 100M+ | Bluetooth |
| Mi Fit | 5.3.2 | 50M+ | Bluetooth |
| Polar Beat: Running & Fitness | 3.5.2 | 1M+ | Bluetooth |
| Polar Flow – Sync & Analyze | 6.6.0 | 5M+ | Bluetooth |
| realme Link | 1.2.480.53 | 1M+ | Bluetooth |
| Samsung Health | 6.18.8.005 | 1B+ | Bluetooth |
| Suunto | 4.45.2 | 1M+ | Bluetooth |
| Withings Health Mate | 5.6.1 | 1M+ | Bluetooth |
| Zepp | 6.1.4-play | 5M+ | Bluetooth |
| Smart assistant | |||
| Amazon Alexa | 2.2.422256.0 | 50M+ | Wi-Fi/Bluetooth |
| Google Home | 2.42.1.14 | 100M+ | Wi-Fi/Bluetooth |
| Gosund - include NiteBird | 4.4.3 | 1M+ | Wi-Fi/Bluetooth |
| MyFRITZ!App | 2.17.3 (16362) Beta | 1M+ | Wi-Fi |
| Samsung SmartThings | 1.7.70.21 | 500M+ | Wi-Fi/Bluetooth |
| Smart bulb/plug | |||
| Philips Hue | 4.4.0 | 5M+ | Wi-Fi/Bluetooth |
| Yeelight | 3.3.06 | 1M+ | Wi-Fi/Bluetooth |
| Wiz | 1.23.1 | 1M+ | Wi-Fi/Bluetooth |
| Wipro Next Smart Home | 3.22.0 | 1M+ | Wi-Fi/Bluetooth |
Figure 1Overview of the followed methodology.
Identified permissions per examined app.
| App | Utility | Authentication | Location | Storage | Phone | Communication | ||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| U1 | U2 | U3 | U4 | A1 | A2 | A3 | A4 | L1 | L2 | L3 | L4 | S1 | S2 | S3 | S4 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | C1 | C2 | C3 | C4 | C5 | C6 | C7 | C8 | C9 | Total | |
| AP | ||||||||||||||||||||||||||||||||||||
| ASUS Router | + | + | + | + | + | + | + | 7 | ||||||||||||||||||||||||||||
| D-Link WiFi | + | + | + | 3 | ||||||||||||||||||||||||||||||||
| Huawei HiLink | + | + | + | + | + | + | + | + | + | + | + | 11 | ||||||||||||||||||||||||
| Linksys | + | + | + | + | + | 5 | ||||||||||||||||||||||||||||||
| Mikrotik Pro | + | + | 2 | |||||||||||||||||||||||||||||||||
| Mi Wi-Fi | + | + | + | + | + | + | + | + | + | + | + | + | + | 13 | ||||||||||||||||||||||
| Netgear Nighthawk | + | + | + | + | + | + | + | + | 8 | |||||||||||||||||||||||||||
| TP-Link Tether | + | + | + | + | + | 5 | ||||||||||||||||||||||||||||||
| UniFi Network | + | + | + | + | 4 | |||||||||||||||||||||||||||||||
| Smart TV | ||||||||||||||||||||||||||||||||||||
| LG ThinQ | + | + | + | + | + | + | + | + | + | + | + | + | + | 13 | ||||||||||||||||||||||
| RemoteNOW | + | + | + | + | + | + | + | + | + | + | 10 | |||||||||||||||||||||||||
| Wireless IP cameras | ||||||||||||||||||||||||||||||||||||
| Arlo | + | + | + | + | + | + | + | + | + | + | + | 11 | ||||||||||||||||||||||||
| HiLookVision | + | + | + | + | + | + | + | + | + | 9 | ||||||||||||||||||||||||||
| iVMS-4500 | + | + | + | + | + | + | + | + | + | + | + | 11 | ||||||||||||||||||||||||
| Mi Home | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | 16 | |||||||||||||||||||
| mydlink | + | + | + | + | + | + | + | + | + | + | 10 | |||||||||||||||||||||||||
| mydlink lite | + | + | + | + | + | + | + | 7 | ||||||||||||||||||||||||||||
| Nest | + | + | + | + | + | + | + | + | 8 | |||||||||||||||||||||||||||
| TP-Link Tapo | + | + | + | + | + | + | + | 7 | ||||||||||||||||||||||||||||
| Wyze | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | 18 | |||||||||||||||||
| Smart wearable | ||||||||||||||||||||||||||||||||||||
| Galaxy Wearable | + | + | + | + | + | + | + | + | + | 9 | ||||||||||||||||||||||||||
| Garmin Connect | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | 17 | ||||||||||||||||||
| Fitbit | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | 16 | |||||||||||||||||||
| Huawei Health | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | 22 | |||||||||||||
| Mi Fit | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | 17 | ||||||||||||||||||
| Polar Beat | + | + | + | + | + | + | 6 | |||||||||||||||||||||||||||||
| Polar Flow | + | + | + | + | + | + | + | + | + | + | + | + | + | 13 | ||||||||||||||||||||||
| realme Link | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | 18 | |||||||||||||||||
| Samsung Health | + | + | + | + | + | + | + | + | + | + | + | + | 12 | |||||||||||||||||||||||
| Suunto | + | + | + | + | + | + | + | + | + | + | 10 | |||||||||||||||||||||||||
| Withings Health Mate | + | + | + | + | + | + | + | + | + | + | + | 11 | ||||||||||||||||||||||||
| Zepp | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | 18 | |||||||||||||||||
| Smart assistant | ||||||||||||||||||||||||||||||||||||
| Amazon Alexa | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | 21 | ||||||||||||||
| Google Home | + | + | + | + | + | + | + | 7 | ||||||||||||||||||||||||||||
| Gozund | + | + | + | + | + | + | + | + | + | 9 | ||||||||||||||||||||||||||
| MyFRITZ!App | + | + | 2 | |||||||||||||||||||||||||||||||||
| Samsung SmartThings | + | + | + | + | + | + | + | + | + | + | + | + | + | 13 | ||||||||||||||||||||||
| Smart bulb/plug | ||||||||||||||||||||||||||||||||||||
| Philips Hue | + | + | + | 3 | ||||||||||||||||||||||||||||||||
| Yeelight | + | + | + | + | + | + | + | + | + | + | + | + | + | 13 | ||||||||||||||||||||||
| Wiz | + | + | + | + | + | 5 | ||||||||||||||||||||||||||||||
| Wipro | + | + | + | + | + | + | 6 | |||||||||||||||||||||||||||||
| TOTAL | 32 | 24 | 1 | 9 | 8 | 7 | 22 | 8 | 39 | 32 | 18 | 1 | 33 | 38 | 12 | 4 | 26 | 12 | 18 | 2 | 2 | 10 | 14 | 4 | 3 | 3 | 2 | 4 | 6 | 1 | 11 | 10 | + | 8 | + | – |
Identified weaknesses and other security issues per examined app. The •, ⊛, ⊠, ⊞, and ⊡ symbols in the third column denote “cleartext traffic to all domains”, “cleartext traffic for specific domains”, “trust system certificates”, “trust user installed certificates”, and “bypass certificate pinning”, respectively.
| App | Janus | Network Security | APK Signing | Packers | 89 | 250 | 276 | 295 | 312 | 327 | 330 | 502 | 532 | 649 | 749 | 919 | Total |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| AP | |||||||||||||||||
| ASUS Router | + | • | + | ++ | ++ | + | 3 | + | + | 13 | |||||||
| D-Link WiFi | + | + | + | 3 | + | + | + | 9 | |||||||||
| Huawei HiLink | + | + | + | + | ++ | + | 3 | + | + | + | + | 14 | |||||
| Linksys | + | + | ++ | + | 3 | + | + | + | + | 12 | |||||||
| Mikrotik Pro | + | + | ++ | + | 2 | + | + | 9 | |||||||||
| Mi Wi-Fi | + | •, ⊠ | + | + | ++ | + | 3 | + | + | + | 13 | ||||||
| Netgear Nighthawk | + | + | + | ++ | + | + | 3 | + | + | + | + | + | 15 | ||||
| TP-Link Tether | + | • | + | + | ++ | + | + | 3 | + | + | + | + | 15 | ||||
| Unify Network | + | + | + | ++ | + | 3 | + | + | 11 | ||||||||
| Smart TV | |||||||||||||||||
| LGThinQ | • | + | + | ++ | ++ | + | 3 | + | + | + | + | 15 | |||||
| RemoteNOW | + | • | + | + | ++ | + | 2 | + | + | + | + | 13 | |||||
| Wireless IP cameras | |||||||||||||||||
| Arlo | + | + | + | ++ | + | + | 2 | + | + | + | + | + | 14 | ||||
| HiLookVision | + | • | + | + | ++ | ++ | + | 3 | + | + | + | + | 16 | ||||
| iVMS-4500 | •, ⊠ | + | ++ | + | + | 3 | + | + | + | + | + | 15 | |||||
| Mi Home | + | •, ⊠, ⊞ | + | ++ | + | ++ | ++ | + | 3 | + | + | + | + | + | 21 | ||
| mydlink | + | + | + | ++ | + | 3 | + | + | + | + | 13 | ||||||
| mydlink lite | + | + | + | + | + | + | 3 | + | + | 11 | |||||||
| Nest | + | + | ++ | + | 2 | + | + | + | 10 | ||||||||
| TP-Link Tapo | + | • | + | + | ++ | + | 3 | + | + | + | + | + | 15 | ||||
| Wyze | •, ⊠ | + | ++ | + | + | 3 | + | + | + | + | + | 15 | |||||
| Smart wearable | |||||||||||||||||
| Galaxy Wearable | + | + | + | + | + | 1 | + | + | 18 | ||||||||
| Garmin Connect | + | ⊛ | + | ++ | + | + | 2 | + | + | + | + | 13 | |||||
| Fitbit | ⊛, ⊠, ⊞ | + | + | ++ | + | 2 | + | + | + | + | + | 15 | |||||
| Huawei Health | + | + | + | + | ++ | ++ | + | 3 | + | + | + | + | + | 18 | |||
| Mi Fit | + | •, ⊠ | + | + | + | ++ | ++ | + | 3 | + | + | + | + | 18 | |||
| Polar Beat | + | + | + | + | + | + | + | 17 | |||||||||
| Polar Flow | + | + | + | ++ | + | 2 | + | + | + | + | 12 | ||||||
| realme Link | + | + | + | ++ | + | + | 3 | + | + | + | + | + | 15 | ||||
| Samsung Health | + | + | + | ++ | + | 3 | + | + | + | + | + | 14 | |||||
| Suunto | + | ⊛ | + | + | ++ | + | 2 | + | + | 11 | |||||||
| Withings Health Mate | + | + | ++ | + | 2 | + | + | + | 10 | ||||||||
| Zepp | + | ⊛, ⊠, ⊞, ⊡ | + | + | + | ++ | ++ | + | 3 | + | + | + | + | + | 21 | ||
| Smart assistant | |||||||||||||||||
| Amazon Alexa | + | + | ++ | + | + | 1 | + | + | + | + | 11 | ||||||
| Google Home | + | • | + | ++ | + | + | 2 | + | + | + | + | 13 | |||||
| Gosund | + | • | + | ++ | + | 1 | + | + | + | + | 11 | ||||||
| MyFRITZ!App | + | + | + | ++ | + | 2 | + | + | + | 11 | |||||||
| Samsung SmartThings | + | •, ⊠ | + | + | ++ | + | 3 | + | + | + | + | + | 18 | ||||
| Smart bulb/plug | |||||||||||||||||
| Philips Hue | + | + | + | ++ | + | 2 | + | + | + | 11 | |||||||
| Yeelight | + | + | + | + | 3 | + | + | + | + | + | 12 | ||||||
| Wiz | + | •, ⊛, ⊠ | + | ++ | + | 2 | + | + | + | + | 14 | ||||||
| Wipro | + | • | + | ++ | + | 3 | + | + | + | + | + | 14 | |||||
| Total | 36 | 20 | 27 | 4 | 39 | 1 | 40 | 19 | 41 | 40 | 41 | 1 | 41 | 31 | 27 | 16 | – |
Figure 2Categorization of trackers per examined app.
Figure 3Allocation of trackers per category.
List of identified potential issues in the manifest file of each app.
| App | Intent-Filter On | Intent-Filter Off | Content | Task | Launch | Cleartext | Backup | Priority | SMS | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Service | Broadcast | Activity | Service | Broadcast | Activity | ||||||||
| AP | |||||||||||||
| ASUS Router | 1 | 1 | 1 | ||||||||||
| D-Link WiFi | 2 | 1 | 1 | 1 | + | + | |||||||
| Huawei HiLink | 4 | 2 | 1 | 1 | 2 | + | |||||||
| Linksys | 2 | 1 | + | ||||||||||
| Mikrotik Pro | 1 | 1 | 1 | + | |||||||||
| Mi Wi-Fi | 6 | 3 | 1 | 3 | 1 | 1 | |||||||
| Netgear Nighthawk | 1 | 2 | 2 | 1 | 1 | + | |||||||
| TP-Link Tether | 1 | 2 | 3 | ||||||||||
| UniFi Network | 1 | + | + | ||||||||||
| Smart TV | |||||||||||||
| LG ThinQ | 2 | 6 | 15 | 1 | 1 | 2 | |||||||
| RemoteNOW | 4 | 8 | 2 | 3 | 6 | + | + | ||||||
| Wireless IP cameras | |||||||||||||
| Arlo | 1 | 2 | 3 | 1 | 1 | 2 | |||||||
| HiLookVision | 14 | ||||||||||||
| iVMS-4500 | 2 | 6 | 4 | 1 | 3 | 2 | + | ||||||
| Mi Home | 2 | 7 | 17 | 8 | 10 | 28 | 2 | 26 | 72 | + | |||
| mydlink | 1 | 1 | 1 | 1 | 3 | + | |||||||
| mydlink lite | 2 | 2 | 2 | ||||||||||
| Nest | 3 | 2 | 1 | 2 | 1 | ||||||||
| TP-Link Tapo | 2 | ||||||||||||
| Wyze | 4 | 1 | 1 | 1 | + | ||||||||
| Smart wearable | |||||||||||||
| Galaxy Wearable | 2 | 1 | 1 | 1 | 2 | + | |||||||
| Garmin Connect | 1 | 3 | 11 | 5 | 1 | 5 | 5 | ||||||
| Fitbit | 1 | 5 | 6 | 1 | 2 | 1 | |||||||
| Huawei Health | 22 | 19 | 31 | + | |||||||||
| Mi Fit | 4 | 13 | 4 | 6 | 8 | 2 | 2 | 49 | + | ||||
| Polar Beat | 1 | 1 | |||||||||||
| Polar Flow | 3 | 1 | 1 | 2 | |||||||||
| realme Link | 1 | 1 | 1 | 1 | + | ||||||||
| Samsung Health | 2 | 4 | 2 | 2 | 8 | 9 | 7 | 3 | + | + | |||
| Suunto | 1 | 9 | 3 | 1 | 3 | ||||||||
| Withings Health Mate | 1 | 4 | 3 | 2 | 1 | 4 | 1 | ||||||
| Zepp | 3 | 5 | 11 | 13 | 5 | 8 | 4 | 1 | + | ||||
| Smart assistant | |||||||||||||
| Amazon Alexa | 4 | 15 | 17 | 10 | 8 | 6 | 3 | 9 | |||||
| Google Home | 12 | 6 | 3 | + | + | ||||||||
| Gozund | 1 | 7 | 3 | + | |||||||||
| MyFRITZ!App | 12 | 10 | + | ||||||||||
| Samsung SmartThings | 2 | 3 | 3 | 2 | 3 | 18 | 6 | 5 | |||||
| Smart bulb/plug | |||||||||||||
| Philips Hue | 3 | 1 | 1 | + | |||||||||
| Yeelight | 3 | 3 | 5 | 1 | 1 | 4 | 4 | + | |||||
| Wiz | 2 | 3 | 1 | 5 | 3 | ||||||||
| Wipro | 2 | 3 | 5 | 3 | 35 | ||||||||
Figure 4Number of identified shared library issues per app.
Figure 5Breakdown of shared library issues. The NX value is insignificant, i.e., less than 0.5%, and it is not included in the figure.
Outdated third-party software components per app. The greater the number of “+” signs, the more the number of obsolete components in this app.
| App | SQLite | libjpeg | OpenSSL | jQuery | Python | libpng | OpenCV | libcurl | zlib | expat | FFmpeg | Total |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| AP | ||||||||||||
| ASUS Router | + | 1 | ||||||||||
| D-Link WiFi | + | 1 | ||||||||||
| Linksys | + | 1 | ||||||||||
| Mikrotik Pro | + | + | 2 | |||||||||
| Mi Wi-Fi | + | 1 | ||||||||||
| Netgear Nighthawk | + | + | 2 | |||||||||
| TP-Link Tether | + | + | 2 | |||||||||
| Smart TV | ||||||||||||
| LGThinQ | + | 1 | ||||||||||
| RemoteNOW | + | 1 | ||||||||||
| Wireless IP cameras | ||||||||||||
| HiLookVision | + | ++++ | + | 6 | ||||||||
| iVMS-4500 | ++ | 2 | ||||||||||
| Mi Home | + | + | +++ | + | ++ | + | + | 10 | ||||
| mydlink | + | + | 2 | |||||||||
| Wyze | + | + | 2 | |||||||||
| Smart wearable | ||||||||||||
| Garmin Connect | + | + | 2 | |||||||||
| Fitbit | + | 1 | ||||||||||
| Mi Fit | + | + | + | + | 4 | |||||||
| Polar Flow | + | 1 | ||||||||||
| Smart assistant | ||||||||||||
| Alexa | + | + | + | 3 | ||||||||
| MyFRITZ!App | + | 1 | ||||||||||
| Samsung SmartThings | + | 1 | ||||||||||
| Smart bulb/plug | ||||||||||||
| Wiz | + | 1 | ||||||||||
| Wipro | + | + | ++ | + | + | + | 7 | |||||
| Total | 9 | 5 | 14 | 3 | 4 | 2 | 5 | 1 | 1 | 1 | 1 | - |
Figure 6Issues identified through taint analysis. The Y axis designates the amount of issues per app.
Overview of issues identified through dynamic analysis. CSIF denotes the cleartext sensitive information, say, Wi-Fi passphrases kept in app’s files.
| App | Tested Device | Cleartext Traffic | CSIF | Logcat Leak | Auth Token Leak | File Leak | Obsolete Alg. |
|---|---|---|---|---|---|---|---|
| AP | |||||||
| ASUS Router | RT-AX88U | + | + | ||||
| D-Link WiFi | DIR-X1860 | + | |||||
| Linksys | MR7350 | + | + | + | + | ||
| Mi Wifi | AX1800 | + | |||||
| Netgear Nighthawk | RAX40 | + | + | + | |||
| TP-Link Tether | AX10v1 | + | + | + | |||
| Smart TV | |||||||
| RemoteNOW | – | + | |||||
| Wireless IP cameras | |||||||
| Mi Home | Sec. Cam. 1080p | + | + | ||||
| mydlink | DCS-6500LH | + | + | ||||
| TP-Link Tapo | C200 | + | + | ||||
| Smart wearable | |||||||
| Garmin Connect | – | + | + | ||||
| Fitbit | – | + | |||||
| Huawei Health | – | ||||||
| Mi Fit | – | + | |||||
| Samsung Health | – | + | + | ||||
| Smart assistant | |||||||
| Amazon Alexa | Amazon Echo Dot 3rd gen. | + | + | ||||
| Google Home | Google Nest Mini 2nd | + | + | ||||
| Samsung SmartThings | Samsung Dryer DV90N62632W | + | + | ||||
| Smart bulb/plug | |||||||
| Yeelight | Smart LED Bulb 1S | + | + | ||||
| Wipro | – | + | |||||