华为智能家居app未能连接上远程云服务_【InForSec通讯】智能家居云平台实体间交互状态安全分析 | Usenix2019...

论文题目:Discovering and Understanding the Security Hazards in the Interactions between IoT Devices, Mobile Apps, and Clouds on Smart Home Platforms

论文作者: Wei Zhou, Yan Jia, Yao Yao, Lipeng Zhu, Le Guan, Yuhang Mao, Peng Liu and Yuqing Zhang

作者单位:中国科学院大学国家入侵防范中心,西安电子科技大学,美国佐治亚大学,美国宾夕法尼亚州立大学

论文地址:https://www.usenix.org/system/files/sec19-zhou.pdf

一、物联网云平台架构

现阶段随着物联网技术的发展,智能家居也得到了广泛应用。为了方便集中管理众多的智能家居设备,国内外许多知名的IT厂商如三星、阿里巴巴、京东和小米等均推出了自己的智能家居云平台。虽然各家厂商在实现上有细节上的差别,但整体架构基本相似。如图1所示,云平台主要包括三大交互实体(云服务,移动端APP,物联网设备)。云服务作为整个智能家居云平台的核心主要负责设备管理,远程指令转发以及设备联动服务等;物联网设备常见有两种连接云的方式,对于有具备互联网功能的设备大多可以直接和云服务建立连接,而对于只能通过zigbee或者蓝牙的连接的小型设备需要通过一个中间路由(Gateway/Hub)来和云进行交互;最后,移动APP端为用户提供操作设备的接口如连接、断开和注销设备等。

另一方面为了方便对大量的物联网设备进行部署,这些智能家居平台往往会开发设备端交互SDKs包括一些常用的交互指令和协议实现,这样物联网设备应用开发的时候只需要将这些SDK和特定的设备功能进行结合即可,大大缩短了设备开发周期。

fa838de43de06cc62e478da34f376e41.png

图1 云平台整体架构

二、常见物联网云平台交互过程

通过进一步对云平台三方交互过程的进一步分析,论文总结常见设备使用周期(从设备首次连接到设备注销)过程中涉及的基本交互步骤。注:由于在设备注册和绑定步骤实现上的差别本文将云平台分为了两类,但其原理相似,本文只介绍其中的Type1,另一种详见论文。

1.设备发现:APP 一般通过广播的方式和设备进行识别和连接。

2.提供WIFI证书:为了使设备可以通过互联网和云服务进行交互,APP需要向设备提供Wi-Fi证书,其主要方法包括自建热点、Wi-Fi直连和 SmartConfig。

3.设备注册:设备通过向云发送其独一无二的物理信息如MAC地址来完成设备注册,并从云端获取设备标识码device ID。云端也会记录此ID作为此设备的标识用于后续交互。

4.设备绑定:为了保证只有设备所有者有控制对应设备的权限,用户需要通过APP申请设备绑定。从而云将此用户信息和设备device ID进行一一绑定。后续云平台只允许此用户才可以控制对应ID的设备,拒绝其他用户对用户对此ID设备的控制命令。

5.设备登录:完成设备绑定后,设备申请和云建立并维持一个长连接,同时,如果发现长时间和云没有交互会自动重新进行连接。

6.设备使用:完成1-5步骤后,设备处于正常工作状态可以接受并执行云和用户的远程操作指令。

7.设备注销:当用户不想再使用此设备如转让给他人,其可以用APP向云发送申请解绑设备的操作从而云平台解除其与设备的绑定关系,并重置设备使三方实体均回到初始状态。

通过分析每个步骤中智能家居平台三方实体的交互过程,从而得到三方实体各自交互过程中导致的正常工作状态的转换模型如图2所示,注意:三方实体的工作状态并不是相互独立而是通过交互存在一定的对应关系。

217629f42d68ad7be50fd253ee662135.png

图2 转换模型

注:红色代表Type1智能家居平台特有的交互请求和状态,蓝色代表Type2智能家居平台特有的交互请求和状态,黑色代表共有的交互请求和状态。

三、云平台安全分析方法

首先为了分析三方交互的细节,论文采用逆向、中间人和其他证书绕过等方法解密了三方通信。然后为了检查云平台三方交互过程中是否存在异常请求和工作状态,需要发送非正常的设备请求。为了实现此目的,论文通过利用和修改原有通信SDK,构建一个模拟真实设备交互的“幽灵”设备,从而实现无论云和APP处于任何状态,都可以发送任意设备请求。

四、漏洞总结与分析

通过对云平台认证、授权和状态管理的实验,论文在五大知名智能家居平台发现了如下四种常见的安全漏洞,如图3所示。

97bee349c4b6f2a463cee2d6fe52e0d0.png

图3 四种常见的安全漏洞

F1不充分的状态防护:通过实验发现,云平台在接受设备请求的时候,并不检查此时设备以及自身的工作状态。例如当云处于绑定后的正常工作的状态,其仍然可以接受相同设备的申请注册的请求(F1.1),并返回相同的device ID。相似的云也可以接受F1.2设备绑定(Only in Type 2 platform)和F1.3设备登录请求。

F2异常工作状态组合:在背景中介绍的,在正常工作状态时,三方实体的工作状态并不是相互独立的而是存在一定的对应关系。例如待设备完成绑定登录后,三方实体均应维持在其Running状态。但通过实验测试,论文发现在某些条件下,三方的工作状态并总是这样的规律。如果在用户在APP段发送解绑设备请求到云以后,但未重置设备。此时,某些云平台虽然解除了用户和设备的绑定关系,但仍然和设备处于连接关系,也就是此时设备仍然处于running状态,仍然可以接受远程指令,但云和APP已经回到了初始工作状态。

F3未授权用户登录:通过实验发现,某些云平台只对于敏感操作对设备请求进行授权验证,而对于其他的设备操作并不会对其进行授权验证。

F4未授权用户解绑:论文还发现某些平台不仅支持从APP端发送解绑设备的请求,同时设备端也可以发送解绑请求,而对于设备端的解绑请求往往也并不会验证用户信息。

五、漏洞组合利用

论文通过巧妙的组合利用这些漏洞可以实现一系列的远程攻击如表1所示,本文这里选取其中Type1平台上最具代表性和严重的设备劫持和设备“替换攻击”进行介绍。对于其他攻击,感兴趣的读者可以查看原文。

1f222dc8379cd6cf6c616efb6dbbad33.png

表1 远程攻击

1. 设备身份“替换”攻击

如图4所示从左到右依次代表的实体为攻击目标的真实设备,使用此设备的用户Alice、云服务、攻击者Trudy, 受攻击者控制可以发送任意设备请求的“幽灵设备”。

攻击步骤:T.1:首先在用户完成A.1 到A.3正常用户的初始化操作后,此时攻击者利用幽灵设备发送相同的设备注册请求到云,由于漏洞F1.1,云会接受此请求并返回和真实一样的device ID到幽灵设备。

T.2:幽灵设备利用此设备ID频繁的去和云建立和维持链接(F3和F1.3),由于幽灵设备和真实设备的ID一样,而相同的device ID云只维持一条链接,从而攻击者利用幽灵设备“挤掉”了原来的真实设备。此时,用户在APP端虽然看见设备仍然保持在线,但此时和云建立连接的已经从真实设备被替换为被攻击者控制的幽灵设备。

攻击影响:1)由于此时用户实际控制的设备变成了幽灵设备,攻击者可以利用此漏洞去收集用户发送给设备的任何请求,从而窃取和分析用户的一些生活习惯。比如用户每次大概在什么时间去打开和关闭家中的智能插销,从而判断用户的在家时间。

2)攻击进一步可以利用伪造的幽灵设备来上传虚假设备信息从而产生更为严重的危害。现在许多云平台均支持一些设备联动的自动化控制,比如当烟雾器报警后自动打开屋内的门窗。而攻击者通过幽灵设备替换真的烟雾报警器并和云建立连接后,上传一个超过报警阈值的浓度,云会根据用户设定的联动规则自动打开门窗。

d2922ecee5f0b68ba90ae3ba19d4bdf5.png

图4 实体为攻击目标的真实设备

2. 设备劫持攻击

如果此云平台还存在F4和F2的漏洞,攻击者可以在上一个设备身份替换攻击的基础上进一步实施设备劫持攻击。

攻击步骤T3:当幽灵设备和云建立连接后,其可以向云发送解绑请求。由于F4,云会无条件接受此请求, 从而解绑了原始用户但仍然保持着和幽灵设备的连接(F2)。

T4:由于此时云回到了初始状态处于未有用户绑定的状态,攻击者可以发送设备绑定请求,云会将此设备ID的所有权转为攻击者所有。然后攻击者只需要断开幽灵设备,真实设备会自动重新连接云。此时,攻击者就可以远程控制用户的真实设备,完成设备劫持。

攻击危害:攻击者可以通过远程劫持用户的敏感设备如摄像头等从而直接窃取用户隐私。同时,虽然用户可以发觉自身设备的异常操作,但在APP端并没有任何攻击痕迹,所以用户一般认为是设备或者云故障,很难察觉设备已经被攻击者控制。

六、缓解方案

论文最后简单提及一些有效的缓解方案,如在设备注册和登录阶段增加随机数以及证书来加强认证。同时,设备状态的同步和管理往往被智能家居平台所忽略,因此论文建议在三方交互过程中也应传递各自的此时工作状态的信息,然后云作为中心对三方的工作状态进行实时的监控和管理,从而防止攻击利用非正常的工作状态来实施非法操作。

作者简介:周威,中科院大学国家网络入侵防范中心在读博士生。研究领域包括物联网安全、嵌入式系统安全、可信计算等,在Usenix、ESORICS等国际学术会议和期刊发表论文近10篇。

相关阅读:

【InForSec通讯】证书透明化CT机制的Monitor可靠性研究 | CCS 2019

adcddcf39cc36b217b162f0778b0ba02.png

点击,查看论文原文!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/520823.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

黑科技揭秘:百种异常随机注入,专有云为何稳如泰山

关键应用服务中断引发一系列连锁反应,起因仅是一块磁盘被写满?为什么这么巧,两个小概率的问题偏偏一起发生,造成保护失效?为什么我们做了测试演练,然而真正发生问题依然踩坑?”2018杭州云栖大会…

负载均衡工具 haproxy 集群安装部署完整流程

负载均衡是系统设计最常见的一种方式,Nginx、HAProxy、LVS、F5用得比较普遍,不过Nginx只能在HTTP层负载,而HAProxy即可以在7层做负载,也可以在4层做负载,LVS配置有点太麻烦。 HAProxy是免费、极速且可靠的用于为TCP和基…

阿里云 MaxCompute 2018-09 新功能发布

2018年9月大数据计算服务 MaxCompute 又发布新功能啦! 【新功能】MaxCompute窗口函数支持WINDOW_CLAUSE 参考文档 适用客户 数据开发人员在进行数据开发过程中,用到调用window函数窗口时,SQL里反复写上OVER语句会显得冗余,MaxC…

要不要赶个时髦,去建设一个「 中台 」?

戳蓝字“CSDN云计算”关注我们哦!作者 | 奎哥责编 | 阿秃很多技术人总是抱怨 新技术/新框架/新概念 太多了,总是学不完,抱怨实在是学不动了。哈哈,这不,最近「 中台 」这么火热,要不要停止抱怨&#xff0…

strcpy用于调用的参数太少_C和汇编如何互相调用?嵌入式工程师必须掌握

ARM系列文章,请点击以下汇总链接:《从0学arm合集》一、gcc 内联汇编内联汇编即在C中直接使用汇编语句进行编程,使程序可以在C程序中实现C语言不能完成的一些工作,例如,在下面几种情况中必须使用内联汇编或嵌入型汇编。…

在阿里云上试用 Knative

在今年的Google Cloud Next大会上,Google发布了Knative, 这是由Google、Pivotal、Redhat和IBM等云厂商共同推出的Serverless开源工具组件,它与Istio,Kubernetes一起,形成了开源Serverless服务的三驾马车。 本文来自阿里巴巴中间件…

阿里云参加ONS EU 2018,飞天洛神亮相网络顶会

9月25日,荷兰阿姆斯特丹,为期3天的网络科技界盛会Open Networking Summit拉开序幕。来自世界各地的网络技术领域专家齐聚一堂,参与并分享各自分支领域的经验和成果。阿里云在会上展示了虚拟网络系统飞天洛神,智能网络管理平台齐天…

linux中如何在文件中查找文件,linux下find(文件查找)命令的用法总结

每一种操作系统都有成千上万的文件组成,对于linux这样“一切皆文件”的操作系统来说更不例外,大家应该都能很轻松使用windows下的文件查找功能,但是对linux这一功能可能并不是很熟悉,其实想玩linux的你更要牢牢掌握这个命令&#…

主动安全,新华三融合生态之力!

戳蓝字“CSDN云计算”关注我们哦!作者 | 晶少责编 | 阿秃出品 | CSDN云计算(ID:CSDNcloud)“如今网络安全形势错综复杂,解决方案不可能由一家公司独当天下,面对这样的情况,我们就要选择自身擅长…

阿里敏捷实践| 4个迭代,从批量交付向持续交付转型

导语 忙不完的事情,解不完的bug,每次发版都得集体熬个大通宵。干得多,结果还不好。阿里内部某研发团队就正处在这样的漩涡之中。 在这样的背景下,阿里云效敏捷教练团队受邀,和该研发团队一起,通过4个迭代…

阿里云携手爱迪德,发布中国首个云端DRM解决方案

2018杭州云栖大会期间,阿里云携手技术生态合作伙伴-爱迪德,推出中国首个云端DRM解决方案。该方案受CHINA DRM LAB和好莱坞六大电影公司认可,可以有效加强平台方对高价值版权内容的保护,监测和防止视频内容的盗版。 爱迪德中国区销…

idea升级2019.3后字体有的粗有的细

解决办法: 设置File–>Settings–>Editor–>Fallback font–>SimHei

飞天2.0 | 万物智能的基础服务

在2018杭州云栖大会的主论坛上,阿里云技术研发总经理蒋江伟发表了《飞天2.0,万物智能的基础服务》的主题演讲,从全连接、安全、简便、高速四个方面,阐述了飞天2.0网络的新特性。 蒋江伟表示,万物智能时代产生的海量数据…

黑科技揭秘:3分钟,轻松构建一张覆盖全球的企业专有网络

2018杭州云栖大会主论坛上,阿里巴巴研发技术总经理 蒋江伟在大会现场演示了分钟级构建企业专有网络的技术。 回顾一下当时的场景,一共有三步操作:上电, WAN口连接Internet,LAN口连接电脑,在工程师没有对设备…

恕我直言,有了这款 IDEA 插件,你可能只需要写 30% 的代码。。。

文章目录1. 安装(EasyCode)2. 建立数据库3. 在IDEA配置连接数据库4. 开始生成代码5. pom.xml6. Application.yml7. 启动项目8. 测试一下Easycode是idea的一个插件,可以直接对数据的表生成entity,controller,service,dao,mapper,无需任何编码,简单而强大。…

双十一提前预热,这款耳机直降80元!

还有不到10天时间就到双十一狂欢购物节了你们是不是已经把购物车加满了呢?反正的我已经加了好多了此时好想自己有个程序员男友帮我把购物车清空可惜了赶不上了之前推荐了一款兰士顿的T7R按键版蓝牙耳机大部分购买的用户给我的反馈说还不错哦但是也有一部分人问我有没…

阿里云朱照远:视频云2.0,更大规模、更智能、更清晰

在2018杭州云栖大会19号下午的主论坛上,阿里云视频云总经理朱照远发表了《视频云2.0,智享未来视界》的主题演讲,从超大规模、智能化、实时连接、超高清8K这四个方面,阐述了视频云2.0的定义。 朱照远表示,在这个超大规模…

这次的新计算,很全能!

在2018杭州云栖大会上,阿里云技术研发总经理蒋江伟发表了《全能计算,灵活稳定》的主题演讲,从函数计算、弹性容器实例、高吞吐ESSD云盘、弹性裸金属服务器、SCC超级计算集群这五个方面,阐述了飞天2.0计算的新特性。 蒋江伟表示&am…

linux virtualhost不能正常运行,造成网站无法正常运行的4个原因!

原标题:造成网站无法正常运行的4个原因!同虚拟主机产品对网站开发环境要求不同,如果两者不兼容,网站自然无法正常运行,这也是最常见的原因之一。因此,用户需设计好自己网站的开发环境,再去选择匹…