无线电安全-RTLSDR配合CC1101分析重放遥控信号

[无线电安全]RTLSDR配合CC1101分析和重放遥控信号

SDR介绍

软件无线电-Wiki

SDR是软件定义无线电的缩写,指将无线电系统中的信号处理功能(如通信协议的实现、信号的调制解调和频谱分析等)通过基于软件的数字信号处理来实现,少部分模拟信号处理和数模转换功能通过通用硬件实现。SDR的原理:通用硬件接收到模拟信号并转换成数字信号,数字信号由软件处理,处理完后软件输出要发射的数字信号,数字信号由通用硬件转换为模拟信号并发射。相比于传统的全硬件无线电,软件无线电可以不修改硬件,仅修改软件实现多种不同的无线协议或标准,具有灵活性强、开放性强、兼容性强、硬件成本低的优点。对于无线电技术爱好者,SDR既能满足DIY研究技术的需求,又能省去大量的专用设备购买成本。

SDR可以干什么

SDR的应用于航天、军事、工业、消费电子产品、多媒体等各个领域,产品包括:手机、电脑、无人机、汽车、智能家居、网络设备、传感器、工控机、移动通信、卫星通信、无线电广播和电视等。从无线技术的类别来分,包括:近场通信NFC、蓝牙BLE、射频RFID、工控无线传输ZigBee、无线局域网WiFi、卫星定位GPS、卫星通信SATCOM、手机蜂窝网络Cellular、航空无线电ADS-B等。

从安全攻防的角度来看,SDR可以涵盖无线通信安全的大部分内容,比如:跟踪商用飞机轨迹和航班信息、搭建伪基站、GSM窃听、GPS欺骗、捕获分析重放遥控器信号以及其它各类无线协议的分析和攻击。攻击手段主要有4种:监听、重放、欺骗、劫持。

需要哪些前置知识

  • 通信原理
  • 通信系统
  • 数字信号处理
  • 调制与解调
  • 信号与系统

SDR硬件

常见SDR硬件:HackRF、RTL-SDR、BladeRF、USRP、LimeSDR、PlutoSDR、Airspy

设备名称 工作频率 全/半双工 价格
HackRF One 1MHz到6GHz Rx+Tx 500-1000元
RTL-SDR(R820T/R860/R828D) 24MHz-1.76GHz Rx 80-300元
BladeRF 300MHz-3.8GHz Rx+Tx 500-10000元
USRP系列 取决于具体型号,所有设备涵盖直流电至6GHz,见官网 Rx+Tx 2000-20w元
LimeSDR 有Mini2.0、XTRX、X3三个型号,最高3.8GHz,见官网 Rx+Tx $400/800/20000
PlutoSDR(ADALM-PLUTO) 325MHz-3.8GHz(可提升至70MHz-6GHz:参考) Rx+Tx $195(淘宝1000元左右)
Airspy(Mini/R2/HF+) 24-1700MHz Rx $99/169(淘宝1000元左右)

SDR硬件主要包含天线、射频前端、数模转换器和用于执行数字功能的FPGA或SoC。对于半双工的SDR,可以添加射频前端模组对其功能进行拓展。虽然SDR的理念是软件替代硬件,但有时也需要依赖额外的硬件实现特定功能(比如接收ADS-B信号),开发能力强的话也可以DIY自己的SDR设备。

SDR软件

常见SDR软件:GNU Radio、SDR++、GQRX、SDR#、MATLAB、Simulink、SoapySDR、PothosSDR、PySDR。

结合硬件和目标应用选择软件。

业余无线电介绍

业余无线电是一种在全世界非常普遍的业余爱好,业余无线电爱好者又被称为HAM。根据Wiki的数据,截至2024年,中国有24万左右HAM,美国有75万左右HAM,全世界有三至四百万HAM。搞无线电涉及到安全和法律的问题,受各国政府严格管控,因此“准”业余无线电爱好者需要经过考试才能得到业余无线电执照,有了执照才能合法开展业余无线电活动,成为真正的HAM。不同国家有不同的业余无线电执照和相应制度。

在中国,执照分为中国无线电协会业余电台操作证书(简称“操作证书”)和中华人民共和国无线电台执照(简称“业余电台执照”)两个部分。

  • 操作证书分为A类、B类和C类,是业余无线电爱好者个人的操作技术能力的证明,也是使用业余无线电台的许可。

    统一在CRAC官网进行考试报名和信息查询。A类和B类考试由各省的考试机构自行组织,C类考试由CRAC统一组织。

    操作证书由中国无线电协会业余无线电分会(简称CRAC)负责核发,在全国范围通用,并且终身有效。

    初次申领者不限年龄,但只能参加A类考试;取得A类操作证书取得业余无线电台执照6个月以上可以参加B类考试;取得B类操作证书并取得载明30MHz以下频段的业余无线电台执照18个月以上可以参加C类考试。

    详情参见《业余无线电台管理办法》第三章及CRAC官网。

  • 业余电台执照是设置业余无线电台的许可,证明你的电台是合法的。

    需要取得操作证书后才能申请对应频率的设备的业余电台执照,参考对照表如图。

    1

    对于没有呼号的申请者,无线电管理机构颁发业余无线电台执照时会同时核发业余无线电台呼号。业余无线电操作员在无线电通信中以“呼号”唯一地表明自己或台站的身份。

    除了有型号核准的无线电发射设备,也可以申请自制、改装、 拼装等未取得型号核准的设备,但是需要提交额外的说明材料并经过检验。

    详情参见《业余无线电台管理办法》第二章及CRAC官网。

业余无线电-Wiki

业余无线电爱好者 - Wiki

中华人民共和国业余无线电执照制度 - Wiki

中华人民共和国业余无线电台管理办法

中国无线电协会业余无线电分会官网

无线电相关的政策查询、频率划分查询、认证考试、备考刷题和模拟考试都可以在智谱APP上进行。

此外,还可以关注各地区的无线电协会公众号,HAM会举办各类的活动例如跳蚤市场、聚会、比赛等。

无线电频率划分

无线电波的频率范围:0~3000GHz。无线电频率的划分非常复杂,涉及到地区、国家、部门、业务和应用等因素,这里不赘述。

了解特定业务频率范围可以查阅最新政策文件:《中华人民共和国无线电频率划分规定》(2023版)

也可以参考较新的野生资料:2024最全无线通信频率分配

其它常见无线电频率补充:

  • 无线电遥控器:27Mhz、315MHZ、330MHZ、350MHZ、390MHZ、418MHZ、430MHZ、433.92MHZ、915MHz、2.4GHz。

  • 广播与电视:

    2

  • 对讲机/电台:频率越高,穿透力越强,抗干扰能力越弱,成本越高。

    民用对讲机(公众无线电)

    1
    2
    3
    4
    5
    6
    7
    8
    专业对讲机:V段136-174MHZ,U段400-470MHZ
    民用对讲机(公众无线电):409-410MHz
    武警公安用:350-390MHZ
    海岸用:220MHZ
    交通信号灯监控、防空警报器:223.025-235Mhz
    业余无线电:V段144.000-145.800MHz,U段430.000-435.000MHz和438.000-440.000MHz
    集群用:800MHZ
    手机:900MHZ/180MHZ

    民用对讲机,我国频段是409-410MHz,欧美国家分462MHz和467MHz两组

    3

  • 蜂窝网络(Cellular network):主流蜂窝网络包括GSM、UMTS/HSPA(3G)、LTE/LTE-A(4G)、NR(5G)。安卓手机可以用Cellular-Z APP测试蜂窝信号。具体不同网络和不同供应商的频率划分参考上文的野生资料。

全双工SDR系统搭建

软硬件介绍

1
2
3
4
5
6
硬件:
RTL-SDR(R820T2调谐器+RTL2832U解调器+天线)
ESP32-WROOM-32开发板
E07-M1101D 443M射频模块
软件:
Universal Radio Hacker(URH)

RTL-SDR(R820T+RTL2832U+天线)

廉价,能够实现较大频率范围的无线信号接收,但没有发送信号的功能。有V3、V4等较新的型号,频率和基本功能不变,优化了稳定性、发热问题等细节。

用途1:接收DVB-T电视(在国外有DAB-T格式电视的地区)、FM广播、ADS-B等。

用途2:作为SDR使用,可以接收24MHz-1.7GHz的无线电信号。

射频模块和主控

由于RTL-SDR不具有发射功能,还需要通过主控+CC1101射频模块实现无线信号的发射,参考**cc1101-tool**项目,HackRF的射频发送功能也采用该方案。CC1101也能接收信号,但是和SDR软件不兼容,分析信号不方便,并且工作频率范围是387.0MHz~464.0MHz,远不如专门的SDR硬件。

主控用于烧入程序控制整个系统的交互。主控有很多选项,包括ESP32、Arduino Pro Micro、ESP8266、STM32、Arduino-NANO等。笔者用的是ESP32-WROOM-32。

ESP-WROOM-32开发板介绍

CC1101无线芯片是一款国际大厂TI德州仪器(Texas Instruments)研发的低功耗无线传输芯片,能够工作在315、433、868和915MHz频段。淘宝上买到的开发板主要有TI-CC1101、M1101D系列。

4

Universal Radio Hacker(URH)

一个用于逆向解析无线通信协议的开源工具。发表在12th USENIX Workshop on Offensive Technologies(woot’18)会议。

1
通用无线电黑客 (URH) 是一套完整的无线协议调查工具,原生支持多种常见的软件定义无线电。URH 可以轻松解调信号,并自动检测调制参数,从而可以轻松识别空中传输的比特和字节。由于数据通常在传输前进行编码,URH 提供可自定义的解码,甚至可以破解 CC1101 数据白化等复杂编码。在协议逆向工程方面,URH 有两种用途。您可以手动分配协议字段和消息类型,也可以让 URH使用基于规则的智能自动推断协议字段。最后,URH 包含一个针对无状态协议的模糊测试组件和一个用于有状态攻击的模拟环境。

论文和ppt github仓库 操作使用手册

E07-M1101D + ESP32配置

接线

E07-M1101D无线收发模块各引脚含义及与主控的接线方式如图。

图片来自cc1101-tool中的E07-M1101D-SMA_Usermanual_EN_v1.30.pdf

5

6

笔者买的ESP32-WROOM-32主控的引脚如图。可以看到有H和V两组SPI引脚,E07-M1101D中CSN、SCK、MOSI、MISO四个引脚连接到ESP32上任意一组4线SPI接口即可,两组SPI接口是一样的。GND和VCC不用多说,还剩下GDO2和GDO0两个数据输出接口不知道怎么连。

7

我们参考ESP8266和CC1101模块,GDO0和GDO2分别连D1和D2引脚。

图片来自cc1101-tool中的Esp8266_CC1101.png

8

查询ESP8266中D1和D2引脚的作用。如图,分别是SCL和SDA,那么E07-M1101D的GDO0和GDO2分别连接ESP32的I2C_SCL(GPIO22,D22)I2C_SDA(GPIO21,D21)

图片来自cc1101-tool中的ESP8266_Pinout_Diagrams.pdf

9

总结,笔者的设备接线如下:

E07-M1101D 443MHz ESP32-WROOM-32
引脚1(GND) GND
引脚2(VCC) 3V3
引脚3(GDO0) D22(I2C_SCL)
引脚4(CSN) D15(HSPI_CS)
引脚5(SCK) D14(HSPI_CLK)
引脚6(MOSI) D13(HSPI_MOSI)
引脚7(MISO/GDO1) D12(HSPI_MISO)
引脚8(GDO2) D21(GPIO21,I2C_SDA)

安装CP2101驱动

ESP32-WROOM-32开发板使用CP2102-USB转串口芯片来和外部设备进行串口通信,所以还要安装CP2102的驱动,否则如图无法识别设备。

10

CP2102驱动下载传送门

下载如下文件并安装驱动

11

安装完成后可以正常识别

12

Arduino烧录交互程序至ESP32

cc1101-tool项目为我们提供了要烧录到ESP32的串口终端程序,负责处理ESP32、CC1101模块和PC间的交互,使用Arduino IDE进行烧录。

下载并安装Arduino IDE:传送门

安装CC1101的依赖库

13

安装ESP32开发板软件包

14

Arduino IDE配置完成后选择自己设备对应的ino文件进行烧录。笔者要烧录的是cc1101-tool-esp32-wroom.ino。因为板子有两组SPI接口,笔者接线用的是HSPI,原本代码用VSPI,gdo0和gdo2接线也不同,所以代码中引脚定义部分需要进行修改,如图

15

连接串口

用终端仿真工具连接串口,Putty、SecureCRT、MobaXterm等都可以,这里用MobaXterm,波特率设置为代码中的115200,端口选择ESP32的CP2102对应端口。

16

连上后显示Connect OK并且help正常显示命令,配置成功

17

RTL-SDR和URH配置

RTL-SDR接线

18

RTL-SDR驱动安装

windows下使用Zadig工具安装对应驱动

19

插上RTL-SDR,开启Options -> List All Devices。分别选中Bulk-In,Interface 1Bulk-In,Interface 0接口,分别安装默认的WinUSB驱动。

20

URH安装和使用

URH github仓库

windows平台下载Release中的安装程序安装。几个主要功能如图。一般先频谱分析获取无线电信号的频率,然后记录该频率的信号保存为文件并进行分析。

21

设备选择RTL-SDR,刷新后能识别出设备说明之前驱动安装得没问题。

22

遥控技术安全

遥控技术主要有红外遥控 、无线电(射频)遥控、蓝牙遥控和WIFI遥控。

红外遥控(非无线电波):将遥控信号(二进制脉冲码),调制在38kHZ的载波上,经过缓冲放大后送至红外发光二极管,转化为红外信号发射出去。红外线的频率不在无线电波范围内,现有大部分SDR平台无法收发红外线信号。部分手机有红外功能,Android也支持红外遥控开发的API,可以配合红外收发模块DIY自己的红外设备。红外遥控通信距离短、无法绕过障碍物,一般只应用于玩具或廉价家电,因此红外遥控安全的研究价值较低。

蓝牙和WIFI遥控的安全性主要是针对蓝牙和WIFI协议本身。

无线电遥控的安全性涉及编码和加密、通信协议等,由专用的编码和解码芯片来实现,主要有固定码、学习码和滚动码三种方案,安全性:滚动码>学习码>固定码。

  • 固定码:编码固定,所有通信信号不变,易被截获并重放。常见编码芯片有2260、2262、PT2264等,解码芯片有2270、2272、2294等。
  • 学习码:信号的某部分固定,另一部分可自定义。例如可学习用户指定信号。常见编码芯片有1527、2240、527等,解码一般通过单片机。
  • 滚动码:每次信号发送都生成新的动态代码,基于一定的同步算法进行匹配(比如AES加密使用随机密钥,发射方和接收方同步生成密钥的种子和时间),无法直接重放信号。常见编码芯片有HCS301、HCS300、HCS200、HCS101等;解码芯片有TDH6301、TCT6301、SMC400等。

以上编解码芯片的名称都由字母前缀+数字组成,其中数字代表型号,字母代表品牌。只写数字表示该型号芯片有多个不同品牌。

无线电遥控的应用:汽车钥匙、车库门遥控器、智能家居设备等,比较常见的频率有315/433MHz、868MHz、2.4GHz。

目前市面上有遥控器频率测试仪、拷贝型遥控器和学习型遥控器(类似于智能卡中的变色龙),还有集成了识别频率、编码芯片型号、编码类型等参数功能和学习拷贝功能的设备。理论上,识别频率、拷贝并重放信号的操作同样可以通过SDR实现,编码芯片型号的识别则需要研究不同芯片的具体编码特征。针对滚动码遥控的拷贝一般需要通过捕获并分析信号、测信道攻击、逆向编解码芯片的固件等方式,分析编码方式和通信协议并获取关键密钥。

实战测试

测试内容:捕获遥控器的信号并分析后进行重放。

1
2
3
4
遥控器型号:杜亚DOOYA DC2700AC单通道发射器(编码芯片未公开)
频率:433.92MHz
功能:和窗帘电机完成对码后控制窗帘升降
按键:3(窗帘放下、窗帘上升、暂停)

遥控器使用前需要和电机对码,因此大概率是学习码芯片

确认频率

进入spectrum analyzer功能,捕获遥控器信号,观察峰值频率为433.92MHz,确认频率。

23

记录信号

进入Record Signal功能,记录遥控器发出的三种基带数字信号并分别保存为文件

24

解调信号

URH打开文件进行解调和分析,调制方式设置为ASK(遥控器大多采用ASK的调制方式),点击Autodetect parametres,显示方式设置为Hex。

25

放大信号,这里软件自动识别参数进行ASK解码,得到三个按键的信号数据完全相同,说明参数存在问题。

26

经观察,三种功能的信号结构大致相同,都是一大段连续的波+断断续续的脉冲,采用OOK调制。选中的每段脉冲+空白长度都是1050,单个短脉冲长度350,长脉冲长度700相当于两个短脉冲。我们可以推测一个bit对应350个样本,将左侧分析参数中的 Samples/symbol 修改为350。这里具体的样本数每次接收都会不同,但是波的组成是一样的,需要根据具体接收的样本数调整解调参数。

27

在Signal View也可以将信号显示为解调状态

28

解调后,三个功能分别得到如下数据

1
2
3
4
5
6
7
8
9
10
11
#up
d24926d24d24d26da492493493493 [Pause: 11343 samples]
fffc26924936926926936d249249a49a498 [Pause: 8239 samples]
fffc26924936926926936d249249a49a498 [Pause: 8236 samples]
fffc26924936926926936d249249a49a498 [Pause: 8231 samples]
fffc26924936926926936d249249a49a498 [Pause: 8232 samples]
fffc26924936926926936d249249a49a498 [Pause: 8222 samples]
fffc26924936926926936d249249a49a498 [Pause: 16687 samples]
fffc26924936926926936d249249a49b6d [Pause: 8577 samples]
fffc26924936926926936d249249a49b6d [Pause: 8573 samples]
fffc26924936926926936d249249a49b6d [Pause: 2973321 samples]
1
2
3
4
5
6
7
8
9
#stop
d24926d24d24d26da4924934d34d3 [Pause: 11341 samples]
fffc26924936926926936d249249a69a698 [Pause: 8231 samples]
fffc26924936926926936d249249a69a698 [Pause: 8238 samples]
fffc26924936926926936d249249a69a698 [Pause: 8231 samples]
fffc26924936926926936d249249a69a698 [Pause: 8226 samples]
fffc26924936926926936d249249a69a698 [Pause: 8237 samples]
fffc26924936926926936d249249a69a698 [Pause: 16714 samples]
fffc26924936926926936d249249a69a698 [Pause: 3026397 samples]
1
2
3
4
5
6
7
8
9
10
 #down
d24926d24d24d26da49249349b49b [Pause: 11369 samples]
fffc26924936926926936d249249a4da4d800003fff09a4924da49a49a4db4924926936936 [Pause: 8262 samples]
fffc26924936926926936d249249a4da4d8 [Pause: 8257 samples]
fffc26924936926926936d249249a4da4d8 [Pause: 8263 samples]
fffc26924936926926936d249249a4da4d8 [Pause: 8254 samples]
fffc26924936926926936d249249a4da4d8 [Pause: 16772 samples]
fffc26924936926926936d249249a4db69 [Pause: 8611 samples]
fffc26924936926926936d249249a4db69 [Pause: 8606 samples]
fffc26924936926926936d249249a4db69 [Pause: 1909995 samples]

分析编码和协议

三种功能信号的整体结构如图

29

细看功能码的结构推测编码时3bit一组,通过占空比进一步区分0和1,占空比高表示1,占空比低表示0, 即在上面解调出来的数据中,100对应1,110对应0。

30

按3bit一组对解调数据进一步编码后信号数据如下(功能码都省略掉了10个高位bit+3个低位bit的前缀,即一长串连续波的部分)

1
2
3
4
5
6
7
8
9
10
up开始码:  1000 0001 1000 1000 1001 1100 0000 0010 0010 001
up功能码: 0100 0000 1100 0100 0100 1110 0000 0001 0001 0001
up结束码: 0100 0000 1100 0100 0100 1110 0000 0001 0001 1110

stop开始码:1000 0001 1000 1000 1001 1100 0000 0010 1010 101
stop功能码:0100 0000 1100 0100 0100 1110 0000 0001 0101 0101

down开始码:1000 0001 1000 1000 1001 1100 0000 0010 0110 011
down功能码:0100 0000 1100 0100 0100 1110 0000 0001 0011 0011
down结束码:0100 0000 1100 0100 0100 1110 0000 0001 0011 1100

我们发现开始码都是39位,功能码都是40位,各功能的开始码后7位不同,功能码和结束码的后8位不同。

参考该文章可知最常见的PT226X固定码一般包括三个部分:同步位、地址位、数据位。

  • 同步位:提示接收器解码类型;使接收器的处理程序和信号同步
  • 地址位:设备id,区分设备
  • 数据位:功能编号,区分功能

推测开始码后7位不同和其它码的后8位是数据位。更多的分析需要结合硬件或固件逆向进行验证,由于遥控器不方便拆除,这里直接进行重放,否则拆除后要买新遥控器重新拆卸电机进行对码。

进行重放

CC1101有以下的功能

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
help
setmodulation <mode> :设置调制模式。 0 = 2-FSK,1 = GFSK,2 = ASK/OOK,3 = 4-FSK,4 = MSK。

setmhz <频率> :在这里您可以设置基本频率。默认 = 433.92 )。cc1101 可以:300-348 MHZ、387-464MHZ 和 779-928MHZ。

setdeviation <deviation> :设置频率偏差(以 kHz 为单位)。值从 1.58380.85

setchannel <channel> :设置从 0255 的 Channelnumber。默认为 cahnnel 0

setchsp <spacing> :通道间隔乘以通道号 CHAN,并添加到基频(以 kHz 为单位)。值从 25.39405.45

setrxbw <Receive bndwth> :设置接收带宽(以 kHz 为单位)。值从 58.03812.50

setdrate <datarate> :设置数据速率(以 kBaud 为单位)。值从 0.021621.83

setpa <功率值>:设置射频发射功率。根据频段,可以进行以下设置。 (-30 -20 -15 -10 -6 0 5 7 10 11 12) 默认为最大值!

setsyncmode <同步模式>:组合同步字限定符模式。 0 = 无前导码/同步。 1 = 检测到 16 个同步字位。 2 = 检测到 16/16 同步字位。 3 = 检测到 30/32 个同步字位。 4 = 无前导码/同步,载波侦听高于阈值。 5 = 15/16 + 载波侦听高于阈值。 6 = 16/16 + 载波侦听高于阈值。 7 = 30/32 + 载波侦听高于阈值。

setsyncword <十进制低位,十进制高位>:设置同步字。发射器和接收器必须相同。 (同步字高,同步字低)默认值为 211,145

setadrchk <address chk> :控制接收包的地址检查配置。 0 = 不检查地址。 1 = 地址检查,无广播。 2 = 地址检查和 0 (0x00) 广播。 3 = 地址检查和 0 (0x00) 和 255 (0xFF) 广播。

setaddr <address> :用于数据包过滤的地址。可选的广播地址为 0 (0x00) 和 255 (0xFF)。

setwhitedata <whitening> :打开/关闭数据白化。 0 = 美白关闭。 1 = 美白开启。

setpktformat <pktformat> :RX 和 TX 数据的格式。 0 = 正常模式,使用 FIFO 进行 RX 和 TX。 1 = 同步串行模式,数据在 GDO0 上输入,数据在任一 GDOx 引脚上输出。 2 = 随机发送模式;使用 PN9 发生器发送随机数据。 3 = 异步串行模式

setlengthconfig <mode>:设置数据包长度模式:0 = 固定数据包长度模式。 1 = 可变数据包长度模式。 2 = 无限数据包长度模式。 3 = 保留

setpacketlength <mode> :表示启用固定数据包长度模式时的数据包长度。如果使用可变包长模式,该值表示允许的最大包长度。

setcrc <mode> :打开/关闭 CRC 计算和检查。 1 = 启用 TX 中的 CRC 计算和 RX 中的 CRC 检查。 0 = TX 和 RX 禁用 CRC。

setcrcaf <mode> :当 CRC 不正确时启用 RX FIFO 的自动刷新。这要求 RXIFIFO 中只有一个数据包,并且数据包长度仅限于 RX FIFO 大小。

setdcfilteroff <mode> :在解调器之前禁用数字直流阻塞滤波器。仅适用于数据速率 ≤ 250 kBaud 当禁用 DC 阻塞时,建议的 IF 频率会发生变化。 1 = 禁用(当前优化)。 0 = 启用(更好的灵敏度)。

setmanchester <mode> :启用曼彻斯特编码/解码。 0 = 禁用。 1 = 启用。

setfec <mode>:启用前向纠错 (FEC),并交织数据包负载(仅支持固定数据包长度模式。0 = 禁用。1 = 启用。

setpre <mode> :设置要传输的最小前导码字节数。值:0 : 21 : 32 : 43 : 64 : 85 : 126 : 167 : 24

setpqt <mode>:前导码质量估计器阈值。

setappendstatus <mode> :启用后,两个状态字节将附加到数据包的有效负载中。状态字节包含 RSSI 和 LQI 值以及 CRC OK。

getrssi :显示有关通过 RF 最后接收的帧的质量信息

scan <start> <stop> :扫描最高信号的频率范围。

chat :在许多设备之间启用聊天模式。无法退出,请断开设备退出

rx:嗅探器。启用或禁用在串行终端上打印接收到的 RF 数据包。

tx <hex-vals> :通过 RF 发送最大 60 字节 <hex 值> 的数据包

jam :启用或禁用所选频段的连续干扰。

brute <microseconds> <number-of-bits> :使用 <nb-of-bits> 关键字进行暴力车库门,其中符号时间为 <usec>。

rec :启用或禁用缓冲区中的记录帧。

add <hex-vals> :手动将单帧有效负载(最多 64 个十六进制值)添加到缓冲区,以便可以重播

show : 显示录音缓冲区的内容

lush : 清空记录缓冲区

play <N> :重播 0 = 所有帧或先前存储在缓冲区中的第 N 个记录帧。

rxraw <microseconds> :通过以 <microsecond> 间隔采样来嗅探无线电并以十六进制打印接收到的字节。

recraw <微秒> :以 <微秒> 采样间隔记录 RAW RF 数据。

addraw <hex-vals> :手动将块(最多 60 个十六进制值)添加到缓冲区,以便可以进一步重播它们。

showraw :以 RAW 格式显示记录缓冲区的内容。

playraw <microseconds> :以 <microsecond> 采样间隔重播之前记录的 RAW RF 数据。

showbit :以 RAW 格式将记录缓冲区的内容显示为位流。

save :将录音缓冲区内容存储在非易失性存储器中

load :将内容从非易失性存储器加载到记录缓冲区

echo <mode> :在串行终端上启用或禁用 Echo。 1 = 启用,0 = 禁用

x:停止干扰/接收/记录数据包。

init :使用默认参数重新启动 CC1101 板

1.设置调制模式

1
setmodulation <mode> :设置调制模式。 0 = 2-FSK,1 = GFSK,2 = ASK/OOK,3 = 4-FSK,4 = MSK。

2.设置频率

1
setmhz <频率> :在这里您可以设置基本频率。默认 = 433.92)。cc1101 可以:300-348 MHZ、387-464MHZ 和 779-928MHZ。

3.构造信号

4.设置缓冲区

1
addraw <hex-vals> :手动将块(最多 60 个十六进制值)添加到缓冲区,以便可以进一步重播它们。

5.重放

1
playraw <microseconds> :以 <microsecond> 采样间隔重播之前记录的 RAW RF 数据。

Reference

【星盟安全】PWN系列课程 无线电安全基础入门

cc1101-tool

使用R820T+RTL2832U玩软件无线电

物联网安全101-8.软件无线电(Software Defined Radio,SDR)简介(翻译)

sdr 软件_【SDR】软件无线电入门玩法,让你不用网络接收电视频道、追踪飞机…

软件无线电wiki

433MHz低功耗RF收发芯片——CC1101评测

软件无线电模块测试 : SDR++ 软件测试

我国无线电频率划分和规划概况

使用HackCube-Special分析滚动码信号

Hitag2加密方案简述

无线遥控信号逆向分析

315MHz 遥控器固定码信号分析和重放

[基础教程]获取并发射杜亚433.92Mhz遥控器的发射码

三天时间, 无线破解从入门到放弃


无线电安全-RTLSDR配合CC1101分析重放遥控信号
https://lkliki.github.io/2025/02/11/无线电安全-RTLSDR配合CC1101分析重放遥控信号/
作者
0P1N
发布于
2025年2月11日
许可协议