收藏官网首页
查看: 16956|回复: 5

机智云 M2M 安全机制

跳转到指定楼层
楼主
发表于 2015-1-1 19:57:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
注册成为机智云开发者,手机加虚拟设备快速开发
一、机智云安全机制描述

1、 设备首次连接云端时自动注册。注册需提供一个由云端生成的随机字符串product_key并预烧录到设备的固件中, 以及一个由设备随机生成的密匙passcode。设备注册成功后,会收到一个由云端统一分配的did。设备注册成功后,每次连接云端时都必须使用didpasscode登陆云端。

2、用户在使用手机App前,必须要先在云端注册生成用户帐号。

3、用户想通过手机控制设备前,必须先与该设备绑定。绑定的过程其实就是获取设备的didpasscode的过程。需要能物理接触设备权限的用户才能获取设备的passcode。当用户按下设备的某个按钮后,设备会在短时间内处于可被配对状态,这时用户可以通过手机获取到设备的didpasscoce。手机会把用户与设备的绑定信息同步到云端。

4、 用户在内网的环境下,必须要首先通过设备的passcode登陆设备。只有登陆了设备的手机才能控制设备。

5、用户在因特网的环境下,必须要登陆云端,且当用户有对该设备具有访问权限时(也就是用户与设备存在绑定关系)才能远程和设备交互。

6、当设备的passcode泄露后,设备可以重新随机生成新的passcode并通知到云端。基于原设备passcode的用户绑定自动失效。

7、所有在因特网场景下的网络通讯全部采用SSL/TLS加密。

8、设备passcode只会存在于机器与机器之间的通讯,用户无需接触passcode也无需知道设备的passcode是什么。

9、客户端连接云端的TCP服务端口后,如不发送登陆指令而只是长期占用该端口资源,30秒后,云端自动会断开该客户端的连接并释放该端口资源。

10、请求云端的数据包中,如出现格式不正确或超出允许的权限,该TCP连接会马上被断开,避免对云端或其它在线用户造成干扰。

二、各种攻击行为分析

1、 攻击者得知设备的id后(如设备的MAC地址)想远程控制该设备。由于用户需要先绑定设备(获取到设备的didpasscode)后,凭did远程控制设备才能成功。单靠设备id(如设备的MAC地址)是不能控制设备的。

2、攻击者假冒设备的身份连接云端,用于接收用户对设备的控制信息,从而得知用户对设备的使用情况。因为所有设备在首次连接云端时都生成一个随机的passcode并向云端注册得到did,后每次连接云端时都必须使用didpasscode登陆云端,攻击者因没有正确的设备passcode所以无法假冒设备的身份连接云端,因此无法监控用户对设备的使用情况。

3、攻击者进入到设备所在的局域网(可以是以朋友的身份到设备的拥有者家里作客),偿试在内网的环境下控制设备。因为在在内网的环境下,必须要首先通过设备的passcode登陆设备才能控制设备,而攻击者无法物理接触设备(如果能物理接触设备就什么权限都有了,因此不考虑这种情况),所以攻击者无法获取设备的passcode,进而无法在内网的环境下控制设备。

4、攻击者想通过检测(监听)用户与设备远程交互的信息流的方式得到设备的passcode,或得知手机与设备交互的信息内容。由于手机与云端,设备与云端在不安全的因特网环境下的通讯全部使用了SSL/TLS加密,所以攻击者很难通过检测通讯信息流的方式获取设备passcode或手机与设备的通讯内容等信息。

5、 保存有用户密码或设备的passcode手机丢失。用户密码可以通过网站或另一台手机的方式重置。设备passcode可以通过按下设备上的重置passcode按钮重新设置一个新的passcode

6、设备转让所有权后,原用户想继续控制该设备。新用户接手设备后,给设备设置一个新的passcode即可。基于原设备passcode的用户绑定自动失效,原用户无法再控制该设备。





0

主题

6

帖子

35

积分

新手上路

Rank: 1

积分
35
沙发
发表于 2015-4-20 14:20:03 | 只看该作者
顶,分析得不错
板凳
 楼主| 发表于 2015-4-20 23:22:45 | 只看该作者

感谢耐心读完

17

主题

57

帖子

426

积分

版主

Rank: 7Rank: 7Rank: 7

积分
426
地板
发表于 2015-4-30 19:01:25 | 只看该作者
很详细,非常好!下次可以引导其他人来看这个贴。谢谢!

1

主题

3

帖子

22

积分

新手上路

Rank: 1

积分
22
5#
发表于 2015-5-8 09:36:19 | 只看该作者
注册成为机智云开发者,手机加虚拟设备快速开发
学习了,张姿势了

0

主题

1

帖子

12

积分

新手上路

Rank: 1

积分
12
6#
发表于 2015-5-12 11:04:13 | 只看该作者
那问题来了,如果我只是想解除某一个人的控制权,怎么办?app上操作解绑会更新passcode吗?
点击设备上的按钮重置了passcode,是不是就是所有人都失去了控制权,需要重新绑定了?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表