Smart config风险分析与对策
Smart config风险分析与对策
1、简介:
Smart config是一种将未联网设备快速连接wifi的技术,大概原理如下图所示:

2、业务需求:
要求实现真正意义上的设备一键自动化wifi配置,不损失用户体验。
3、风险分析:
风险1:wifi密码被窃取。
由于手机使用无线通信告诉设备要连接的wifi的密码,而手机发射的无线信号具有一定覆盖范围(7-8米或更远),因此,在此过程中,存在wifi密码被窃取的问题,此问题在独栋住宅并不明显,但在商品房或群租环境中则比较明显,如下图所示:

风险2:设备被恶意添加。
同理,在手机无线信号能够覆盖的区域内,如果存在一台待添加和绑定用户的设备,那么这台设备就有可能被恶意设置连接到攻击者指定的wifi上,然后添加到攻击者的账户,导致隐私泄露,如下图所示:

4、目前解决方案分析
方案1、使用独立唯一的设备密钥进行加密通信
设备出厂时为每个设备分配一个足够安全的独立密钥,用户在使用一键wifi配置功能时要求输入密钥,并使用对称加密算法进行加密,由于设备本身拥有该密钥,故可以对加密信息进行解密。
优点:能同时解决风险1和风险2。
缺点:单向通信,用户体验差(特别是密钥复杂时),也不满足业务一键配置的需求。
衍生方案:使用固定密钥加密,但很容易遭逆向破解获取密钥。
流程图如下:

方案2:使用近场通信或信号屏蔽性好的技术。
声波具有难穿墙的特点,NFC具有超短距离通信特点,等等。
优点:能同时解决风险1和风险2。
缺点:需要增加硬件或专利费用等成本。
方案3:设置时间窗口降低风险。
为刚启动上电或刚重置的设备设置一个可以设置wifi的时间窗口(比如15分钟),超过时间窗口后,需要拔电重启或重置设备才可以再此给设备设置wifi。
优点:能降低设备被恶意设置wifi和添加的风险,且不增加成本,用户体验损失小。
缺点:未能解决风险1的wifi口令泄漏问题。
备注:方案1的衍生方案(即使用固定密钥)和本方案结合使用可降低风险,且不增加成本和降低用户体验。
方案4:使用softAP
即将设备模拟成一个wifi热点,移动客户端可以连接该热点和设备直接通信,这样便可以形成双向的通信,让使用公钥加密算法(比如:ECC)成为可能,流程图如下:

优点:双向通信,可采用公开密钥体制算法(比如:ECC),解决风险1描述的数据保密性问题,同时不损失用户体验。
缺点:未能解决风险2的恶意添加的问题,同时由于softAP产生的SSID暴露了设备的存在性,可能使得该问题变得更加严重。
备注:
1、 连接设备softAP时,采用硬编码的口令,即所有设备的softAP口令都一样,这也意味着攻击者是可以逆向破解获得口令的,因此,该方案必须假设此风险的存在性。
2、 当手机客户端连接上设备softAP后,相当于手机客户端可访问设备上的端口和服务,此无形增加了风险,因此需要一些措施进行缓解防止攻击者恶意连接设备进行攻击,比如:当设备在连接wifi的状态下应关闭softAP,以及在softAP模式下,设备只接受设置wifi的请求,不响应其它服务请求等。
3、 此方案可以和方案3一起使用降低风险2。
5、ECC加解密流程:

Smart config风险分析与对策的更多相关文章
- Webduino Smart 从入门到起飞
前言 原创文章,转载引用务必注明链接.水平有限,如有疏漏,欢迎指正. 试用了一下,感觉这板子+WebduinoBlockly在线开发环境,下限低.上限也低,以后肯定要刷其他固件的.举个简单的例子,WB ...
- 物联网(莹石云)WIFI一键配置原理分析(zz)
最近打算做一款自己的无线传输模块用来实现光伏电站的数据接入,希望可以尽量简化接入流程,其中wifi密码的配置就是一个比较麻烦的事情,想到最近使用萤石摄像头时,wifi密码配置似乎很简单,他们是怎么做到 ...
- WIFI接入Internet配置过程
转载请注明出处:http://club.gizwits.com/thread-256-1-1.html AirLink模式GoKit2代配置路由SSID和密码方法如下:1.GoKit2上电2.长按Ke ...
- app配置智能硬件的解决方案
随着越来越多的智能硬件产品上市,越来越多的硬件都戴上了智能的帽子,什么智能插座,智能音箱,智能称等等.凡是所谓的智能,都是通过wifi或者蓝牙来连接互联网,其中蓝牙也只能算是手机的附属品吧.主要还是硬 ...
- esp-12e折腾
寒假前就从x宝买了esp-12e以及esp32s,当时似乎是想给自己的蓝牙开门升级换代?esp32s拿来过度linux? 寒假放在书包拿回去以为有时间会玩玩,没想到一直耽搁到现在.前两天才拿出来,网上 ...
- ESP8266 01S WIFI 网络
ESP8266是一款超低功耗的UART-WiFi 透传模块,拥有业内极富竞争力的封装尺寸和超低能耗技术,专为移动设备和物联网应用设计,可将用户的物理设备连接到Wi-Fi 无线网络上,进行互联网或局域网 ...
- 开发快平台(M302I小e开发板系列教程)
开发快平台(M302I小e开发板系列教程) 开发块平台ESP8266模块相关理解 一. M302I小e开发板源码注释,源码基于:v1.4.0.8-u34.zip 1. user_main.c /*** ...
- Arduino Core For ESP8266
如果选择纯C作为ESP8266的开发,有两个途径: 使用乐鑫官方原生的 RTOS-SDK或者NONOS-SDK 使用Arduino IDE 使用PlatformIO 作为一个"Arduino ...
- RealTek WiFi 模块 RTL8710AF RTL8711AF RTL8711AM RTL8195AM
瑞昱 8710 是一个完整且自成体系的 WiFi 网络解决方案, 能够独立运行,也可以作为从机搭载于其他主机 MCU 运行. 瑞昱 8710 在搭载应用并作为设备中唯⼀的应⽤处理器时,能够直接从外接闪 ...
随机推荐
- python3使用web.py遇到的找不属性的错误解决
今天用pyhon安装完web.py的时候,点击运行还是没错的,但是在网页输入链接就会报错.1.安装我是这样的: pip install web.py 2.运行后错误信息是这样: AttributeEr ...
- problems when installed mysql in linux ubuntu
reference:http://www.jb51.net/article/87160.htm?pc 1.ERROR 2002 (HY000): Can't connect to local MySQ ...
- ServerSocket和Socket通信
服务器端: 1.服务器端建立通信ServerSocket对象,并设置端口号 2.服务器建立Socket接收客户端连接 3.建立IO输入流读取客户端发送的数据 4.建立IO输出流向客户端输出数据 客户端 ...
- Iptables基础整理
Iptables基础框架
- APP运营
产品相关术语 APP:application的简写,即应用. 开发商:也叫CP,即ContentProvider内容提供商. 发行商(运营商):代理CP开发出来的产品. 联运:CP和渠道联合运营产品. ...
- IntelliJ IDEA SpringBoot 使用第三方Tomcat以及部署
花了半天时间终于成功,记录以备查阅. 一.第三方Tomcat部署 部署部分参考的是:把spring-boot项目部署到tomcat容器中 目标:把spring-boot项目按照平常的web项目一样发布 ...
- zoj 3195
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=3320 离线算法RE了.. #include<stdio.h> #i ...
- python mock的简单使用
参考文章: http://blog.csdn.net/wenph2008/article/details/46862771 内容待填充...
- 【JBPM4】任务节点-任务分配assignee
JPDL <process key="task" name="task" xmlns="http://jbpm.org/4.4/jpdl&quo ...
- sublime text光标移入移出括号的快捷键设置
使用sublime text每次输入完一个函数或者标签,光标一般都是停留在括号中间,要跳出来要使用左右方向键或者end键 这俩键键区比较远,按起来麻烦,可以自己设置快捷键实现跳出的功能. 原来的快捷键 ...