ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Flipper Zero 实战:用 Heath/Zenith 遥控灯开关 RAW 信号库构建暴力破解器

2026/9/14 20:51:53 拓冰建站 浏览量
Flipper Zero 实战:用 Heath/Zenith 遥控灯开关 RAW 信号库构建暴力破解器 Flipper Zero 实战用 Heath/Zenith 遥控灯开关 RAW 信号库构建暴力破解器【免费下载链接】FlipperPlayground (and dump) of stuff I make or modify for the Flipper Zero项目地址: https://gitcode.com/GitHub_Trending/fl/Flipper导读Heath/Zenith 遥控灯开关是北美市场上常见的 315 MHz 无线照明遥控设备其开关码基于 12 位静态编码码空间有限。本仓库中的Sub-GHz/LED/Health_Remote_Light_Switch_Bruteforce/目录收录了该遥控器全部 16 种 DIP 组合在「开」「关」两种操作下的完整 RAW 捕获信号并针对每种信号提供两套变体。阅读本文后你将掌握这套信号库的目录组织方式、.sub文件内部格式以及如何借助 Flipper Zero 的播放列表功能或信号拼接技巧将其组合成一个可用的暴力破解器并了解 315 MHz / 310 MHz 频率适配与 DIP 开关配对的关键细节。Heath/Zenith 遥控灯开关系统背景在进入信号库之前先了解目标系统的技术背景。仓库中与暴力破解集相邻的 Heath_Zenith_Light_Switch 目录给出了明确说明该系统运行在315 MHz频段采用Holtek HT12X 12 位静态码Holtek_HT12X 协议遥控器与接收器通过DIP 开关配对灯的操作为Dim / On / Off三态该文档还指出一个关键细节4 号 DIP 开关被接收器忽略例如 DIP1110与 DIP1111实际等效。这意味着暴力破解集虽然收录了0000到1111全部 16 种组合但其中部分组合如1110与1111在接收端可能产生相同效果。这一点与暴力破解集中每种码提供两个变体的设计相互印证——同一 DIP 值存在不止一种有效波形实际遍历时多试几组变体可以提高命中率。信号库目录结构按操作与 DIP 码组织暴力破解集的完整目录结构如下Sub-GHz/LED/Health_Remote_Light_Switch_Bruteforce/ ├── on/ # 开关「开」操作 │ ├── 0000_on.sub │ ├── 0000_on_2.sub │ ├── 0001_on.sub │ ├── 0001_on_2.sub │ ├── ...直至 1111 │ └── 1111_on_2.sub ├── off/ # 开关「关」操作 │ ├── 0000_off.sub │ ├── 0000_off_2.sub │ ├── 0001_off.sub │ ├── 0001_off_2.sub │ ├── ...直至 1111 │ └── 1111_off_2.sub └── README.md信号的组织遵循两个清晰的维度操作类型on/与off/两个目录分别存放「开」与「关」按压的捕获方便你只对需要的操作进行遍历DIP 码值文件名前缀0000~1111是 4 位二进制编码对应遥控器 DIP 开关的拨码组合共 16 种信号变体每个码值存在_2后缀的第二个文件例如0000_on.sub与0000_on_2.sub这是同一 DIP 码的两种不同 RAW 波形捕获可用于增加暴力尝试的覆盖面。原文档明确建议可以将这些信号加入播放列表playlist或用**拼接concatenate**的方式组合成一个简单的暴力破解器。.sub 文件内部格式解析以 on/0000_on.sub 为例每个捕获文件都是标准的 Flipper Sub-GHz RAW 格式Filetype: Flipper SubGhz RAW File Version: 1 Frequency: 315000000 Preset: FuriHalSubGhzPresetOok650Async Protocol: RAW RAW_Data: 1130 -262 195 -1250 197 -66 ... RAW_Data: 65 -66 99 -3554 ... RAW_Data: 99 -166 65 -232 ...各字段含义字段值说明FiletypeFlipper SubGhz RAW File文件类型标识Flipper 固件据此识别Version1文件格式版本Frequency315000000载波频率 315 MHz单位 HzPresetFuriHalSubGhzPresetOok650Async调制方式650 kHz 带宽的 OOK 异步接收预设ProtocolRAW以原始时基数据存储而非解码后的协议 KeyRAW_Data成对的正负整数序列正数代表脉冲持续时间μs负数代表脉冲间隔交替描述完整波形每行RAW_Data是一段连续的时基波形描述一个文件通常包含多行以覆盖完整的按键发射序列。由于采用 RAW 存储这些文件不依赖固件内置的解码协议表任何固件版本都能直接回放这正是它们能被灵活拼接的基础。值得注意的是暴力破解集中所有文件的Frequency均为315000000315 MHz而 Heath_Zenith_Light_Switch 目录下的 Key 格式文件同样使用 315 MHz 与Ook650Async预设但走的是解码协议路径Filetype: Flipper SubGhz Key File Version: 1 Frequency: 315000000 Preset: FuriHalSubGhzPresetOok650Async Protocol: Holtek_HT12X Bit: 12 Key: 00 00 00 00 00 00 01 00 TE: 320对比可知同一硬件体系既可以按 RAW 波形存储也可以按 HT12X 协议 Key 存储12 bit、TE320。暴力破解集选择 RAW 方式是因为它保留了包括频率偏差在内的全部原始波形信息更贴近“盲试”场景。频率适配315 MHz 与 310 MHz 的选择原文档给出的最重要实战提示是已在两种不同风格的 Heath 接收器上做过测试。根据你的具体接收器可能需要在 315 MHz 与 310 MHz 之间调整有些接收器对其中一个频率表现更好。因此在实地使用时先从 315 MHz 尝试这是信号库文件的默认频率若目标接收器无响应可在 Flipper 的 Sub-GHz 读取界面中把频率改为 310 MHz 后重新发送同一批文件无法预先判断哪种频率更适配时可以按“315 MHz 全量遍历 → 310 MHz 全量遍历”的顺序进行双频段尝试。这一提示也解释了为何同类设备在仓库中常同时存在多组频率数据——例如 Heath_Zenith_Light_Switch 以 315 MHz 收录而暴力破解集提醒你留意 310 MHz 的兼容可能。构建暴力破解器播放列表方式原文档建议的首选方式是利用 Flipper 的Sub-GHz 播放列表subplaylist应用。仓库中的 subplaylist 目录对此做了说明该应用允许按顺序播放列表中的多个.sub文件并支持循环repeat编译好的 FAP 插件可在 RogueMaster、Unleashed 等固件中通过Applications - Tools - Sub-GHz Playlist找到注意SD 卡上的目录名是subplaylist而不是旧文档中写的playlist播放列表文件需放置在该目录下播放列表文件按行书写每行以sub:开头后接设备上的绝对路径。仓库自带的示例播放列表 subplaylist/LEDs/On_Please.txt 已经包含了对本暴力破解集on/目录的完整引用摘录如下sub: /ext/subghz/LED/Health_Remote_Light_Switch_Bruteforce/on/0000_on.sub sub: /ext/subghz/LED/Health_Remote_Light_Switch_Bruteforce/on/0000_on_2.sub sub: /ext/subghz/LED/Health_Remote_Light_Switch_Bruteforce/on/0001_on.sub sub: /ext/subghz/LED/Health_Remote_Light_Switch_Bruteforce/on/0001_on_2.sub sub: /ext/subghz/LED/Health_Remote_Light_Switch_Bruteforce/on/0010_on.sub ...后续直至 1111_on_2.sub据此你可以将 Health_Remote_Light_Switch_Bruteforce 整个目录复制到 SD 卡的/ext/subghz/LED/下在 SD 卡subplaylist目录下新建一个文本文件如Heath_On.txt按上面的格式把on/目录下 32 个文件全部列出打开 Sub-GHz Playlist 应用选择该播放列表并开启重复播放即可自动遍历全部「开」信号同理创建Heath_Off.txt遍历off/目录用于关闭目标灯。播放列表方式的最大优势是无人值守——你只需要站在目标附近启动播放列表应用会自动按顺序并可循环发送所有信号。构建暴力破解器拼接Concatenate方式除播放列表外原文档还提出了“拼接”思路。由于每个.sub文件的RAW_Data是纯文本时基序列你可以在脚本层面读取多个文件将它们的RAW_Data行按顺序合并进同一个.sub文件保留文件头的Filetype/Version/Frequency/Preset/Protocol字段不变这样单个文件在 Flipper 上按下一次发送键就能一次性连续发送多组不同 DIP 码的信号拼接时应保持频率、预设一致本集合全部为 315 MHz Ook650Async可直接合并避免在合并后的文件中出现互相冲突的头部配置。仓库根目录的 wetox_scripts/draw_subghz.py 展示了社区对 Sub-GHz RAW 数据的解析处理方式可作为自行编写拼接脚本时的参考。仓库只读你可以在本地复制这些工具脚本或自行编写用于生成自定义的拼接信号文件。使用注意与安全边界在实地使用这套信号库时请务必记住以下限制与边界频率差异315 MHz 与 310 MHz 的选择因接收器型号而异需现场验证见前文DIP 码冗余根据 Heath_Zenith_Light_Switch 的说明接收器忽略 4 号 DIP 开关因此部分码值可能等效遍历时不必因某个码无响应而立刻放弃同组变体距离与环境RAW 波形回放受天线位置、墙壁遮挡与同频干扰影响建议在接收器有效射程内使用适用对象本信号库仅针对 Heath/Zenith 遥控灯开关这一产品体系设计不能直接用于其他品牌或协议的照明设备合法合规仅在获得设备所有者授权的前提下对你的设备进行测试与调试请勿将其用于未经许可的场合。总结Health_Remote_Light_Switch_Bruteforce虽然只是一个“信号杂货铺”式的原始捕获集合但其组织方式on/off分组、16 种 DIP 码、双变体已经为暴力破解做好了全部铺垫。配合 Flipper 的 subplaylist 播放列表应用你可以用最少的操作在几分钟内完成对 Heath/Zenith 灯开关的全面信号遍历而理解.sub文件头部的频率与预设字段则让你能够灵活地在 315 MHz 与 310 MHz 之间切换适配不同的接收器。若需要协议层面的深入信息可继续参阅仓库中的 Heath_Zenith_Light_SwitchHT12X 12 位静态码与 DIP 配对规则以及 subplaylist播放列表应用与目录命名说明。【免费下载链接】FlipperPlayground (and dump) of stuff I make or modify for the Flipper Zero项目地址: https://gitcode.com/GitHub_Trending/fl/Flipper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考