你有没有想过,生活中的各种常见物品都是可以被攻击的?
使用红外遥控的空调、使用无线遥控的玩具、乃至使用基站的手机?
今天,我们来用 HackRF 来攻击小玩♂具的遥控器。
前言
最常见的遥控器就是红外遥控器,通过红外 LED 发射一串闪光来代表 0 和 1,从而进行数据的传递。
而要进行稍远距离的信号传输该怎么办?信号在传输途径可能被人体、树木、建筑物等遮挡,如何才能穿透这些物体?
答案很简单,射频(无线电)。
你生活中绝大多数常见的遥控器基本都工作在 433Mhz 左右。比如一些玩具遥控器,车库门遥控器,电动车锁遥控器等等。
至于为什么是这个频率咱还专门查了下:
先查了《无线电频率划分表》,没有提。毕竟是小功率发射设备,而且是免许可频段,没提也正常。
最后顺藤摸瓜找到了《微功率短距离无线电发射设备目录和技术要求》,因为 2019 年政策进行了更新,所以我们跳过 2005 年的那堆文件,看现在的。
2019 年年底工信部发了第 52 号文件(工业和信息化部发布微功率短距离无线电发射设备相关公告),其中提到:
「生产或者进口在国内销售、使用列入并符合《...目录》的无线电发射设备,无需取得无线电频率使用许可、无线电台执照、无线电发射设备型号核准...」
然后我们看下目录:
只要发射功率小于 10mW 就是可以直接使用的,不过其中明确写道「不得用于无线控制玩具」,咱觉得大部分厂商可能都没查到过这些文件,咱愣是翻了半个小时才翻出来。
厂商:「我们这是无线智能健身锻炼复健器材,不是玩具」(大雾)
好的,我们只要知道这个频率可以合法地使用就成了。
确定频率
在这里,我使用的是一块 HackRF One SDR 开发板,在今天性能已经略显逊色了,但是对付这种场景还是完全够用的。毕竟 bladeRD 和 LimeSDR 贵的可不是一点半点。
如果你是第一次使用 HackRF 的话,需要简单配置下环境
Ubuntu
sudo apt install gqrx-sdr libhackrf-dev libhackrf0 gnuradio inspectrum
MacOS
brew install hackrf gqrx gnuradio
HackRF 如果在虚拟机下使用似乎会出现第二次 RX 失败的情况,但第一次又可以正常工作,看起来目前似乎还没解决,所以只能多按几次 RST 了。但是在实机上直接使用还是没问题的。
我们先用 Gqrx 确认大概的频率范围,通过进一步寻找,确定了频率是 433.950Mhz。
如果你有个对讲机的话,你还可以听到遥控器所发出的声音。
找到频率就好办了,拿出来无线电界的瑞士军刀:GNURadio。
捕获信号
GNURadio 以程序框图的形式来表示流程,你可以从许多模块中挑选出你需要的功能。最后,GNURadio 会按照你的设置来帮你自动生成对应的代码。
我们先创建一个场景,用于捕获信号。然后运行他,同时遥控器发射信号,将信号原始数据记录在我们所需要的文件中。
随后我们再创建一个场景,将信号发射出去。
在频谱图上有反应的同时,玩具也跟我们预期的一样工作了起来。
如果你只是需要重放信号的话,还有更简单的方法:利用 HackRF Tools
hackrf_transfer -r toy.raw -f 433950000 -g 16 -l 32 -a 1 -s 8000000 -b 4000000
#接受信号
hackrf_transfer -t toy.raw -f 433950000 -g 16 -l 32 -a 1 -s 8000000 -b 4000000
#发射信号
参数都很简单,搞不明白的话就 hackrf_transfer -h
一下。
分析信号
理论上,我们可以通过分析录制的信号来获得最原始的 1 和 0 数据。
最简单的方法:把数据扔进 Audacity,一个短小精悍的开源音频处理软件。
在这里你就可以看到由高低电平代表的 0 和 1 了。如果你有写轮眼的话,甚至还可以直接读出来 0 和 1。
不过考虑到对自己的眼睛好一点,我们可以借助工具,Inspectrum。
你可以更轻松地读取每一个字节,在这里我们一般会查一下芯片的数据手册,看一下每一帧信号里到底发了多少个 01 信号,直接填进软件方便建立基准值。
然而咱这个遥控器上的芯片没丝印,事情就麻烦了许多。
你需要手动慢慢去尝试,一帧信号里到底包含了多少个 01 信号。说实话咱对了半天也没对个正好。
如果你最后可以成功导出 0 和 1 的原始数据的话,那么你还可以用 HackRF 直接发射最原始的数据。
甚至,你还可以做一个小玩意,不停的发射你想发射的信号,达到需要的结果。
比如,把你周围的几个玩具同时开启。具体的应用就看你自己的想象力了(x
*一本正经:前面说的玩具是玩具小车。
好耶,大佬又更新了!这次大佬带来的是重放小玩具遥控信号。话说回来,这个遥控器控制的小玩具,不像是小玩具车啊。😏
哼,咱说是啥就是啥😆
学会了这个造个同频率的遥控小车还不难?(逃
怎么看遥控器和我小区车辆道闸的很像
盯——
你好博主,可以模仿一些小区门口的栏杆吗