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加解密流程:
最新文章
- 【JavaScript】操作Canvas画图
- Spring.Net 初探之牛刀小试
- JVM的生命周期
- powershell samples
- Python学习笔记_Chapter 7web开发
- canvas元素
- 一个js小游戏----总结
- WinForm -- 为TextBox文本框添加鼠标右键菜单
- typescript解决深度拷贝中循环引用引起的死循环
- Python爬虫2-检测编码(使用chardet)
- 微服务架构下分布式事务解决方案——阿里GTS
- MySQL集群结构说明
- angular2路由与express路由冲突的问题
- C# try catch finally简单介绍和应用
- Transfrom笔记
- maven项目eclipse目录结构浅析
- LEGB
- Docker学习2-虚拟化
- linux kernel下输入输出console怎样实现
- .NET中的异常处理机制(二)
热门文章
- Linux 入门记录:十五、Linux 网络基本配置
- .gitignore 文件添加或更新后规则无效的解决方案
- python基础===如何优雅的写代码(转自网络)
- Linux的SMP,UMA,NUMA
- 【bzoj1798】【AHOI2009】维护序列
- 4.Python3标准库--算法
- C#多线程编程之:集合类中Synchronized方法与SyncRoot属性原理分析
- linux删除乱码文件[转载]
- CentOS 7下OpenLDAP编译安装及配置
- bzoj 1407 扩展欧几里德