萤石A1互联网报警盒子破解细节分析
攻击点分析:
萤石A1互联网报警盒子使用“全无线解决方案”,传感器的报警通过433.92MHz射频信号发送给报警主机,报警主机可以通过Wi-Fi联网,将报警上传萤石云端,云端会将信息推送到手机端的“萤石云视频”APP向用户报警。
433MHz是使用非常普遍的ISM免执照频段,尤其在智能家居领域,其穿透和绕射能力强,传输距离远,但不同于Wi-Fi和zigbee具有加密功能,433MHz通常采用明文传输,其安全性较差,因而作为我们优先考虑的攻击点。
漏洞描述:
攻击者利用数字射频处理技术和软件无线电工具,重放所有报警传感器原始射频信号,并绕过系统防重放机制,造成可以推送到用户手机端的假报警信息。
漏洞详情:
抓取了报警传感器在433.92MHz的所有原始射频信号,包括门磁(开,关)、红外、烟感、遥控器(紧急呼救、在家模式、外出模式、睡眠模式、静音),并对信号格式进行了分析。
1. 每次报警会连续发送五次射频信号(烟雾报警为十次),且五次的内容相同。
2. 单次射频信号包含两个数据包。
3. 可以明显看出信号使用ASK调制,解调后可得数据包二进制内容。
4. 对信号二进制作进一步分析:第一个数据包内容不变,固定为两种(门磁、遥控器为一种,烟感、红外为一种)。第二个数据包应包含传感器序列号和种类等信息,其中序列号位于数据包开头位置。
对于同一个传感器所发出的同一种报警信号,在不同时刻记录的第二个数据包部分不同(如下图),因此推测其包含滚动码,而相同的部分为其序列号位置。
5. 滚动码在原理上可以放重放,但实验发现重放攻击仍然有效,因为主机只对信号作单次校验,即与上一次收到的有效信号作比较以防重放。但这种机制对于该产品是十分无效的,因为即使主机不报警,传感器也会经常性地发射射频信号,如门磁和红外,因为重放的信号和主机收到的上一次有效信号一样的概率极低。另外也可以简单地通过重放两段不同的有效信号以绕过该机制。
漏洞利用:
1. 利用该漏洞可以重放传感器信号实现假报警,使用户经历不必要的慌乱,进行多次重放攻击可以使用户不堪其扰,从而丧失对产品的信任,放弃使用该产品。在用户不知情的情况下可能会对品牌产生不良影响。
2. 对于窃贼也可以使用无线电进行入室盗窃,方法是重放遥控器信号使主机切换回在家模式,这样即使被门磁和红外探测到了主机也不会报警。另一种简单粗暴的方法就是直接进行无线电干扰,使所有传感器失效,实验并未发现主机对大功率无线电干扰有任何检测和报警。
萤石A1互联网报警盒子破解细节分析的更多相关文章
- HackPwn:TCL智能洗衣机破解细节分析
上周结束的Hackpwn上,黑客们脑洞大开,破解了比亚迪汽车.小米手环.乐小宝.长虹电视.TCL洗衣机和九阳豆浆机等一系列最新的智能硬件,据黑客介绍,TCL是一家把家门“砌死”的企业,由于得到了将要被 ...
- (转)Android 系统 root 破解原理分析
现在Android系统的root破解基本上成为大家的必备技能!网上也有很多中一键破解的软件,使root破解越来越容易.但是你思考过root破解的 原理吗?root破解的本质是什么呢?难道是利用了Lin ...
- 几个容易出错的css盒子模型细节
css是前端必须掌握的技能之一.其中的box模型,如图所示: 大体就是border.margin.padding和content,概念挺好理解.但当盒子模型与其他属性一块使用时产生的现象,或许您还难以 ...
- rip路由协议 细节分析及实例配置【完整版】
rip路由协议 细节分析及实例配置[完整版] RIP呢,这是一个比较重要的知识点,所以它的知识覆盖面很广泛:但是呢,我将会对碰到的问题进行一些分析解刨(主要是为了帮助自己理清思维):也希望能够从中发现 ...
- Ext.create细节分析
var win1 = Ext.create('Ext.window.Window', { //实例化方法四 : 使用 完整的 Extjs 类名 width: 800, title: 'define t ...
- Android 系统 root 破解原理分析 (续)
上文<Android系统root破解原理分析>介绍了Android系统root破解之后,应用程序获得root权限的原理.有一些网友提出对于root破解过程比较感兴趣,也提出了疑问.本文将会 ...
- uboot 顶层makefile细节分析
uboot的源文件众多,学习庞然大物首先找到脊椎--顶层的makfile,逐一破解.但是,uboot的makefile同样是一个庞然大物,所以也要找到它的主线.倘若过分专注部分细节,很难做到把握全局, ...
- Android系统root破解原理分析
http://dengzhangtao.iteye.com/blog/1543494 root破解过程的终极目标是替换掉系统中的su程序.但是要想替换掉系统中su程序本身就是需要root权限的,怎样在 ...
- Android 系统 root 破解原理分析
现在Android系统的root破解基本上成为大家的必备技能!网上也有很多中一键破解的软件,使root破解越来越容易.但是你思考过root破解的 原理吗?root破解的本质是什么呢?难道是利用了Lin ...
随机推荐
- vim E437: terminal capability "cm" required
报错E437: terminal capability "cm" required 解决方法:# export TERM=xterm
- UVa 714 抄书(贪心+二分)
https://vjudge.net/problem/UVA-714 题意:把一个包含m个正整数的序列划分成k个非空的连续子序列,使得每个正整数恰好属于一个序列.设第i个序列的各数之和为S(i),你的 ...
- vector_01
尾部 ==> 添加/删除 快 头部/中间 ==> 添加/删除 慢 A.尾部 添加/移除: void vector::push_back(); void vector::pop_back( ...
- [ios]ScrollView小结
设置ScrollView self.mysrollview.contentSize = CGSizeMake(1024,768); self.mysrollview.pagingEnabled = Y ...
- 《WAP团队项目软件设计方案》
WAP团队项目软件设计方案 一.根据OOD详细设计工作要点,修改完善团队项目系统设计说明书和详细设计说明文档的GitHub地址:https://github.com/LVowe999/-7.git 在 ...
- Codeforces 496C - Removing Columns
496C - Removing Columns 思路:暴力,用vis标记数组实时记录一下之前的行i+1和上一行i否全相等,false表示全相等. 代码: #include<bits/stdc++ ...
- 网站链接facebook 拿新的post
$http({ method: "GET", url: "https://graph.facebook.com/oauth/access_token?client_id= ...
- JSP中scope属性 scope属性决定了JavaBean对象存在的范围
scope属性决定了JavaBean对象存在的范围. scope的可选值包括: ---page(默认值) ---request ---session ---application 1.page范围 ...
- 雷林鹏分享:C# 接口(Interface)
C# 接口(Interface) 接口定义了所有类继承接口时应遵循的语法合同.接口定义了语法合同 "是什么" 部分,派生类定义了语法合同 "怎么做" 部分. 接 ...
- English trip -- VC(情景课)9 B Outside chores 室外家务
Vocabulary focus 核心词汇 cutting the grass 修剪草坪 getting the mail 收到邮件 taking out the trash 把垃圾带出去 wal ...