01
前言
这篇文章主要介绍我们在物联网智能门铃中发现的安全问题,以及它们对现实生活的影响。
02
调查设备
Victure:VD300
无品牌:高清 Wi-Fi 视频门铃 V5
无品牌:智能 WiFi 门铃 (YinXn)
奇 虎:360 D819智能视频门铃
Accfly:智能视频门铃 V5
无品牌:智能无线上网门铃 -XF-IP007H
03
信息收集
未记录的设备功能
DNS 服务器(端口 53)
我们发现在奇虎360设备上存在DNS服务。这项服务功能齐全,发送到设备的请求会得到响应。
我们不清楚为什么在设备上运行DNS服务,因为网络中这个级别的所有请求都将由路由器发出的DNS IP来处理。对这类服务的调查有时会导致恶意软件传递的秘密DNS通道。在测试过程中,没有看到任何东西能把我们带进这样一个漏洞。
HTTP 服务(端口 80)
我们发现在Victure门铃端口 80 上运行的 HTTP 服务可以通过用户网络访问,并且需要一组凭据:
我们在网上找到了无品牌设备。固件是从该设备中提取出来的,通过简单地在固件上执行字符串来检索登录详细信息。对设备固件的进一步分析揭示了与设备交互所需的API调用。
以下端点提供了从设备收集调试信息的功能,包括Wi-Fi和后端MQTT服务器的凭据。需要按以下顺序调用终结点:打开(启动日志记录)、上传(读取日志)然后关闭,这将停止日志记录过程。
存储的明文 Wi-Fi 凭据
在上述进程的日志输出中,可以看到明文 Wi-Fi 名称和密码:
[01-01 00:00:00][WARN][board.c:1602] [[[[ dev_cfg wifi_ssid: <redacted> ]]]]
[01-01 00:00:00][WARN][board.c:1603] [[[[ dev_cfg wifi_psk: <redacted> ]]]
MQTT 凭据
由于无法测试凭据,因此不知道从持有设备的 MQTT 信息中获得哪些信息。如下日志代码段所述,它们被视为有效,并可能启用连接到后端服务器的其他设备:
[10-30 19:42:16][DBG][mqtt_api.c:464] [[[[ Using default username: <redacted> ]]]]
[10-30 19:42:16][DBG][mqtt_api.c:473] [[[[ mqtt_params.password: <redacted> ]]]]
[10-30 19:42:16][DBG][pps_ssl.c:168] [[[[ . Connecting to tcp://apis-us-west.meari.com.cn:443... ok ]]]]
[10-30 19:42:16][DBG][pps_ssl.c:176] . Setting up the SSL/TLS structure... ok
[10-30 19:42:16][DBG][iotx_mqtt_client.c:100] Input heartbeat interval(300000 ms) > Allowed maximum(180000 ms)
[10-30 19:42:16][DBG][pps_sd_stream_mng.c:59] record I frame date: 1604086936
[10-30 19:42:16][DBG][iotx_mqtt_client.c:240] [[[[ MQTT init success! ]]]]
系统命令
· /sys/factory_reset – Wipes the device
· /sys/console
· /sys/sleep – Sleeps the device
· /sys/active – Holds the device as active
固件更新
嵌入式 Web 应用程序执行固件升级的方法:
· /flash/encryption
· /flash/identity
· /flash/upgrade/all
· /flash/upgrade/ppstrong
· /flash/upgrade/percent
· /flash/upgrade/release_package
· /flash/iperf3
面向互联网的设备
搜索shodan.io pstrong,证实了我们对这些设备最深切的担忧。在撰写此文时,我们发现有 171 台在线设备包含”user@ppstrong”登录信息。这些设备没有使用我们从设备中提取的登录详细信息进行测试,但是它们有一个静态的IP地址并且可以通过互联网访问,这一点非常令人担忧。
04
移动应用程序
应用程序通信未加密
在很多设备上,HTTPS 未强制执行,或者甚至作为通信方法存在于一系列移动应用程序上,例如 Victure 移动应用程序,这些应用程序被发现通过 HTTP 请求根证书。
获取请求:
GET /cert_pub/root.crt HTTP/1.1
Accept-Language: en-US,en;q=0.8
User-Agent: Mozilla/5.0 (Linux; U; Android 8.1.0; en-us; Nexus 5X Build/OPM6.171019.030.K1) AppleWebKit/533.1 (KHTML, like Gecko) Version/5.0 Mobile Safari/533.1
Host: aliyun-iot.oss-cn-hangzhou.aliyuncs.com
Connection: close
Accept-Encoding: gzip, deflate
响应:
HTTP/1.1 200 OK
Server: AliyunOSS
-----BEGIN CERTIFICATE----- MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkG A1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jv b3QgQ0ExGzAZBgNVBAMTEkdsb2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAw MDBaFw0yODAxMjgxMjAwMDBaMFcxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9i YWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYDVQQDExJHbG9iYWxT aWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDaDuaZ jc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavp xy0Sy6scTHAHoT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp 1Wrjsok6Vjk4bwY8iGlbKk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdG snUOhugZitVtbNV4FpWi6cgKOOvyJBNPc1STE4U6G7weNLWLBYy5d4ux2x8gkasJ U26Qzns3dLlwR5EiUWMWea6xrkEmCMgZK9FGqkjWZCrXgzT/LCrBbBlDSgeF59N8 9iFo7+ryUp9/k5DPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8E BTADAQH/MB0GA1UdDgQWBBRge2YaRQ2XyolQL30EzTSo//z9SzANBgkqhkiG9w0B AQUFAAOCAQEA1nPnfE920I2/7LqivjTFKDK1fPxsnCwrvQmeU79rXqoRSLblCKOz yj1hTdNGCbM+w6DjY1Ub8rrvrTnhQ7k4o+YviiY776BQVvnGCv04zcQLcFGUl5gE 38NflNUVyRRBnMRddWQVDf9VMOyGj/8N7yy5Y0b2qvzfvGn9LhJIZJrglfCm7ymP AbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhHhm4qxFYxldBniYUr+WymXUad DKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveCX4XSQRjbgbME HMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A==
-----END CERTIFICATE----
Version: 3 (0x02)
Serial number: 4835703278459707669005204 (0x040000000001154b5ac394)
Algorithm ID: SHA1withRSA
Validity
Not Before: 01/09/1998 12:00:00 (dd-mm-yyyy hh:mm:ss) (980901120000Z)
Not After: 28/01/2028 12:00:00 (dd-mm-yyyy hh:mm:ss) (280128120000Z)
Issuer
C = BE
O = GlobalSign nv-sa
OU = Root CA
CN = GlobalSign Root CA
Subject
C = BE
O = GlobalSign nv-sa
OU = Root CA
CN = GlobalSign Root CA
Public Key
Algorithm: RSA
Length: 2048 bits
Modulus: da:0e:e6:99:8d:ce:a3:e3:4f:8a:7e:fb:f1:8b:83:25:
6b:ea:48:1f:f1:2a:b0:b9:95:11:04:bd:f0:63:d1:e2:
67:66:cf:1c:dd:cf:1b:48:2b:ee:8d:89:8e:9a:af:29:
80:65:ab:e9:c7:2d:12:cb:ab:1c:4c:70:07:a1:3d:0a:
30:cd:15:8d:4f:f8:dd:d4:8c:50:15:1c:ef:50:ee:c4:
2e:f7:fc:e9:52:f2:91:7d:e0:6d:d5:35:30:8e:5e:43:
73:f2:41:e9:d5:6a:e3:b2:89:3a:56:39:38:6f:06:3c:
88:69:5b:2a:4d:c5:a7:54:b8:6c:89:cc:9b:f9:3c:ca:
e5:fd:89:f5:12:3c:92:78:96:d6:dc:74:6e:93:44:61:
d1:8d:c7:46:b2:75:0e:86:e8:19:8a:d5:6d:6c:d5:78:
16:95:a2:e9:c8:0a:38:eb:f2:24:13:4f:73:54:93:13:
85:3a:1b:bc:1e:34:b5:8b:05:8c:b9:77:8b:b1:db:1f:
20:91:ab:09:53:6e:90:ce:7b:37:74:b9:70:47:91:22:
51:63:16:79:ae:b1:ae:41:26:08:c8:19:2b:d1:46:aa:
48:d6:64:2a:d7:83:34:ff:2c:2a:c1:6c:19:43:4a:07:
85:e7:d3:7c:f6:21:68:ef:ea:f2:52:9f:7f:93:90:cf
Exponent: 65537 (0x10001)
Certificate Signature
Algorithm: SHA1withRSA
Signature: d6:73:e7:7c:4f:76:d0:8d:bf:ec:ba:a2:be:34:c5:28:
32:b5:7c:fc:6c:9c:2c:2b:bd:09:9e:53:bf:6b:5e:aa:
11:48:b6:e5:08:a3:b3:ca:3d:61:4d:d3:46:09:b3:3e:
c3:a0:e3:63:55:1b:f2:ba:ef:ad:39:e1:43:b9:38:a3:
e6:2f:8a:26:3b:ef:a0:50:56:f9:c6:0a:fd:38:cd:c4:
0b:70:51:94:97:98:04:df:c3:5f:94:d5:15:c9:14:41:
9c:c4:5d:75:64:15:0d:ff:55:30:ec:86:8f:ff:0d:ef:
2c:b9:63:46:f6:aa:fc:df:bc:69:fd:2e:12:48:64:9a:
e0:95:f0:a6:ef:29:8f:01:b1:15:b5:0c:1d:a5:fe:69:
2c:69:24:78:1e:b3:a7:1c:71:62:ee:ca:c8:97:ac:17:
5d:8a:c2:f8:47:86:6e:2a:c4:56:31:95:d0:67:89:85:
2b:f9:6c:a6:5d:46:9d:0c:aa:82:e4:99:51:dd:70:b7:
db:56:3d:61:e4:6a:e1:5c:d6:f6:fe:3d:de:41:cc:07:
ae:63:52:bf:53:53:f4:2b:e9:c7:fd:b6:f7:82:5f:85:
d2:41:18:db:81:b3:04:1c:c5:1f:a4:80:6f:15:20:c9:
de:0c:88:0a:1d:d6:66:55:e2:fc:48:c9:29:26:69:e0
Extensions
keyUsage CRITICAL:
digitalSignature,nonRepudiation
basicConstraints CRITICAL:
cA=true
subjectKeyIdentifier :
607b661a450d97ca89502f7d04cd34a8fffcfd4b
生成不安全的二维码
这些设备的二维码有多种用途。有些设备使用移动应用程序生成的二维码,将 Wi-Fi BSSID 和密码共享到门铃,而其他设备则具有共享功能,允许其他人访问设备并修改配置文件,因此理论上其他家庭成员或朋友也可以访问设备视频流和通知。
在测试过程中,每个二维码都被捕获并进行分析,在生成和使用时,揭示了纯文本中包含的所有细节。生成二维码都没有使用任何类型的编码或加密来保护被使用的数据。由于某些原因,这里不包括我们在研究期间生成的任何二维码。
简单的东西缺乏安全性也暗示了这些设备的初始概念和设计的一个更深层次的问题。安全二维码的生成需要移动应用程序和硬件的强大支持。这将要求开发人员和工程师接受扩展的硬件要求,以将这种安全级别集成到 IoT 设备的硬件和软件中。
服务未经身份验证
我们测试的一些设备显示,门铃和移动应用程序用于通信的后端服务访问控制的很差。特别是无品牌的门铃(HD Wi-Fi 视频门铃 V5)在处理特权 API 请求时,没有任何身份验证就可以修改设置。
以下 获取请求是使用设备的序列号在设备上请求信息时执行的。在此之前,请求不需要生成会话 Cookie,只需知道序列号。
获取请求:
[[[[ GET /device_check/EKDB_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ]]]] HTTP/1.1
Host: api.gdxp.com:8100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1
响应:
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 10 Nov 2020 16:12:12 GMT
Content-Type: text/html; charset=UTF-8
Connection: close
Vary: Accept-Encoding
X-Powered-By: PHP/7.2.6
Set-Cookie: PHPSESSID=xxxxxxxxxxxxxxxxx; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
Content-Length: 497
{"resultCode":0,"msg":"","content":{"cmd_servers":[{"ip":"
xxxxxxxx
","port":8888,"udp_port":25050}],"udp_servers":[{"ip":"
xxxxxxxx
","port":25050}],"oss_setting":{"ossFromId":1,"endpoint":"http://oss-eu-west-1.aliyuncs.com","bucket":"britain"},"local_time":"2020-11-10 16:12:12","current_time":1605024732,"sleep_interval":15,"is_test":0,"p2p_servers":[{"ip":"
xxxxxxxx
","port":17051}],"push_servers":["http://
xxxxxxxx
:58720"],"stun_servers":[{"ip":"xxxxxxxx","port":17051}]}}
获得的数据可以提供设备的大体位置。此设备的另一个主要问题是能否以未经身份验证的用户身份修改音量:
POST 请求:
POST /app_update_property HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Content-Length: 66
Host: api.gdxp.com:8100
device_sn=EKDB_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&ring_volume=72
响应:
HTTP/1.1 200 OK
{"resultCode":0,"msg":"","content":[]}
此外,通过设备序列旁边的date/time戳猜测文件名,也证明了从该设备访问和查看图像的方法非常简单:
http://britain.oss-eu-west-1.aliyuncs.com/EKDB_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/2020xxxxxxxxxx.jpg
正如前两个问题所概述的,这个设备特别是在后端API上存在着严重的的访问控制缺陷。
发送到其他国家/地区的数据
在调查 Victure 门铃使用”CloudEdge”移动应用程序时,发现了以下帖子请求。因为发现 Victure 移动应用程序在查看 CloudEdge 应用程序的反馈部分时,正在向 Web 服务器发送用户的 Wi-Fi 详细信息,这使用户的隐私受到严重影响。
POST /log/putAppLog HTTP/1.1
Accept-Language: en-US,en;q=0.8
User-Agent: Mozilla/5.0 (Linux; U; Android 8.1.0; en-us; Nexus 5X Build/OPM6.171019.030.K1) AppleWebKit/533.1 (KHTML, like Gecko) Version/5.0 Mobile Safari/533.1
X-Ca-Timestamp: 1598991919706
X-Ca-Sign: <redacted>
X-Ca-Key: 32f96f26-1c74-4990-9f15-6e9175ca2497-2000792169
X-Ca-Nonce: 985980
Content-Type: multipart/form-data; boundary=40b90230-0748-4f74-ae5d-cf0dc2b0e026
Content-Length: 9364
Host: app-logs.meari.com.cn
Connection: close
Accept-Encoding: gzip, deflate
<redacted>
Content-Disposition: form-data; name="userToken"
Content-Length: 47
<redacted>
--40b90230-0748-4f74-ae5d-cf0dc2b0e026
Content-Disposition: form-data; name="phoneType"
Content-Length: 1
a
<redacted>
Content-Disposition: form-data; name="t"
Content-Length: 13
1598991919701
<redacted>
Content-Disposition: form-data; name="sourceApp"
Content-Length: 1
8
<redacted>
Content-Disposition: form-data; name="countryCode"
Content-Length: 2
US
<redacted>
Content-Disposition: form-data; name="appVer"
Content-Length: 5
2.2.3
<redacted>
Content-Disposition: form-data; name="lngType"
Content-Length: 2
en
<redacted>
Content-Disposition: form-data; name="phoneCode"
Content-Length: 1
1
<redacted>
Content-Disposition: form-data; name="equipmentNo"
Content-Length: 0
<redacted>
Content-Disposition: form-data; name="userID"
Content-Length: 10
1000396085
<redacted>
Content-Disposition: form-data; name="appVerCode"
Content-Length: 2
81
<redacted>
Content-Disposition: form-data; name="logFile"; filename="1598991919682.json"
Content-Type: application/octet-stream
Content-Length: 7818
{"userid":1000396085,"model":"Nexus 5X :8.1.0","monitor":[{"eventid":"030101","time":"20200901104946"},{"eventid":"020101","time":"20200901104948"},{"data":{"selectdevicetype":"2"},"eventid":"020102","time":"20200901104949"},{"eventid":"020201","time":"20200901104949"},{"eventid":"020301","time":"20200901104951"},{"eventid":"020401","time":"20200901104952"},{"data":{"password":"<redacted>","ssid":"<redacted>"},"eventid":"020402","time":"20200901104953"},{"eventid":"020501","time":"20200901104954"},{"data":{"QRCode":"s:"<redacted>",p:"<redacted>",t:"null"","des":"<redacted>","resultCode":"1001","url":"https://apis-us-west.meari.com.cn/app/token/get"},"eventid":"020603","time":"20200901104955"},{"eventid":"020601","time":"20200901104955"},{"data":{"QRCode":"s:"<redacted>",p:"<redacted>",t:"null"","des":"<redacted>","resultCode":"1001","url":"https://apis-us-west.meari.com.cn/app/token/get"},"eventid":"<redacted>","time":"20200901104956"},{"eventid":"<redacted>","time":"20200901105354"}
<-- Removed for bevity -->
Wi-Fi SSID 和密码被发送到位于美国的服务器,该服务器由中国的云提供商运营。从其他门铃的研究可以发现这种行为是不寻常的,因为其他移动应用程序不可以这样做。另外,还提出了更多的问题,为什么这些细节需要导出?这些数据可以很容易地与开源工具结合使用,以映射上传到这些服务器的 Wi-Fi 网络的物理位置,以创建活动设备的地图,以便使用 https://wiggle.net 等资源进行进一步分析。
域日志发送到: https://app-logs.meari.com.cn
我们使用 Frida 绕过证书防护获得后端执行数据或信息。在这些调查期间,可以看到移动应用程序定向和通信的域名,这是一个由maerai.com.cn重定向到https://www.mearitek.com/。
Mearitek 是 Victure 的一家独立公司,似乎是 Victure 门铃利用的”CloudEdge”应用程序的创建者。Victure还 没有为自己的设备创建自己的应用程序,并且正在使用另一家公司的基础设施和软件来托管他们的设备,这也是不寻常的行为。
05
硬件
没有安全性的门铃安装
固定这些设备的主要方法是使用粘合或拧在平面上的安装支架,然后把设备安装在支架中。攻击者很容易在 10 秒内快速释放门铃并窃取设备,而某些设备在关闭或移动之前是无法通知用户的。
在测试的设备中只有一个是具有压力触发器的,可以在设备移动后启动报警并快速取出电池或电源线以禁用设备。
也可以使用廉价的 2.4GHz 干扰器断开门铃与 Wi-Fi 网络的连接,然后从固定支架上窃取设备以进一步分析。
设备分析
当门铃运动传感器触发时,所有门铃都可以使用微型 SD 卡存储录制的视频和音频样本。廉价的 128GB 存储卡可以容纳长达 72 小时的录制材料,允许恶意攻击者分析当地每天发生的事件。
除了存储卡外,攻击者还可以相对容易地从设备复制固件。所有被分析的设备都使用了小型闪存芯片,这些芯片存储了易于分析的设备固件。有一种非破坏性的方法需要知道flash芯片的引脚布局,然后尝试使用诸如总线盗版器之类的设备从中复制数据。
获得此信息后,可以快速分析,如果固件存储数据不正确,攻击者不仅可以找到 Wi-Fi BSSID,而且能查找访问网络的纯文本 Wi-Fi 密码。一旦攻击者拥有 Wi-Fi 详细信息并了解用户何时进入或离开,这就会无比危险了。
不安全的固件更新过程
一旦设备暴露在公网,制造商可以部署软件更新到移动应用程序和设备固件。通常移动应用程序更新由相应的应用程序平台(Google Play、iOS 应用商店等)处理,但设备固件升级却很难处理。固件可能是 IoT 设备制造商可以开发的最敏感信息,因为这些信息控制硬件(摄像机、物理 Wi-Fi 模块等)需要保护。
在研究移动应用程序和远程固件更新功能时,发现调用特定 URL 也会下载更新固件所需的二进制文件。在调查的一些案例中,这些 URL 仅使用 HTTP 并且未经身份验证,允许任何了解该 URL 的人下载固件进行分析。
获得固件后,可以使用一系列二进制分析工具(Binwalk、Ghidra,甚至像字符串一样简单的 Linux 工具)进行分析,以分解固件结构,发现固件中包含的敏感信息,包括硬编码凭据、IP 地址和固件,以了解固件及其潜在的弱点。
通过这些固件分析方法,我们还发现其中一台设备没有被修补,很容易受到2017年发布的KRACK漏洞的影响。由于其严重影响,发现后该漏洞很快就被修补了。这表明该设备的使用年限超过三年,并且在存放期间一直处于易受攻击的状态,直到购买点为止。或者,最坏的情况是该设备是最近制造的,但由于使用了已知的易受攻击(和已修补的)组件而疏忽大意。
CVEs 链接:
https://www.cvedetails.com/vulnerability-list/vendor_id-12005/product_id-29296/version_id-173664/W1.fi-Wpa-Supplicant-2.2.html
06
攻击脚本
保存的二维码信息泄露
有些人使用他们的智能手机拍摄不同东西或者截图,并且现在大多数智能手机也自动备份照片。
让我们想象一下,假如一个恶意参与者已经访问过电脑,并完全控制了该设备,或者已经能够获得凭据,登录第三方帐户,如谷歌或iCloud和访问基础数据(前几年的许多攻击都使用这些技术)和随机二维码(从以前的截图/图像备份)作为此信息转储的一部分。然后,攻击者可以快速破解二维码并提取 Wi-Fi 网络的纯文本 BSSID 和密码,而不必尝试 deauth 和/或邪恶的双攻击。
获得对网络的持久性访问
如果可以通过 Internet 远程访问设备,则存在访问网络的能力。攻击者可以使用共享的硬编码用户名和密码登录到公开的控制面板,执行恶意固件升级,并创建进入受害者网络的网关。
这种类型的攻击,可能听起来有点牵强,但考虑到Victure门铃可以远程登录,有一系列方法来上传固件,这些属性使这种类型的攻击也成为可能。一旦攻击者进入目标网络,只要网络没有保护到位,则可以攻击。
取证恢复
将设备连接到墙壁的支架非常脆弱,有些支架只有一个夹子来连接它们,并且很容易从墙上解开或撕裂。一旦设备落入恶意参与者之手,他们就可以快速取出电池或断开为设备供电的微型 USB 电缆。某些移动应用程序没有功能通知 Web 应用程序,如果它从剪辑中删除,只有一个无品牌设备有一个压力开关,可以触发报警,但它可以通过取出电池快速停用。一旦攻击者拥有物理设备,他们就可以取出 SD 卡并查看所有记录的数据,然后复制固件。
固件操作
由于固件缺乏加密,很容易对固件进行反向工程,不仅是提取底层操作系统的结构,还提取网络的BSSID和纯文本密码,然后登录到该网络,这也为定位网络上其他设备提供了机会。同样,攻击者可以向设备(如 SSH 或 telnet)引入新服务以提供远程连接,这将要求最终用户使用应用程序重新验证门铃,这可能在不知不觉中将木马设备连接到其网络。
07
总结
配对问题
生成的所有二维码都公开了敏感数据,无论是以用户名和密码的形式访问设备流还是 Wi-Fi 网络凭据。使用声波音频配对模式的门铃也有一致的问题。用更安全的方法生成二维码来保护传输的数据,或者使用其他方法,如蓝牙配对。
访问控制
在访问控制方面,最严重的情况是在无品牌设备上看到的,该设备能够无需任何身份验证,更改原设置,并且只需了解设备序列号即可。部署零访问控制表明对敏感用户信息缺乏了解和保护。
门铃安装和取证鉴定
在整个智能门铃的调查中,有一个一直存在的问题是,在设备的物理安装方面缺乏安全性,这就导致了其他问题。大多数无品牌设备缺少移动门铃时触发的任何物理开关。然后,其他设备要么延迟通知移动应用程序,要么可以迅速删除电源(电池、microUSB)。移动应用程序的分析一致表明,通知一旦被延迟,就可能永远不会到达用户处。门铃被盗后,内含的取证信息将允许攻击者相对容易地检索 Wi-Fi BSSID 和密码,也可能有数小时的视频和录音,攻击者可以根据门铃视频对受害者的家或周边地区进行分析。
未记录的功能
我们发现许多未记录的功能对设备的运行也会造成伤害。例如,Victure 门铃能够通过登录到设备来管理和控制设备。此攻击中使用的凭据是从闪存获取的,闪存指出运行此固件的所有设备都使用相同的硬编码值。更严重的是,网上还可以查找到许多设备的登录界面。
总的来说,我们在这项研究中看到的问题概述了安全物联网设备开发的错误方法。但是仍有一些存在这些问题的设备正在开发、发货和出售,更不要说那些仿冒的无品牌设备了。
原文来源:ChaMd5安全团队
原文始发于微信公众号(网络安全应急技术国家工程实验室):智能门铃-物联网的噩梦