【译文】我破解小米空气净化器 4 Pro 的故事

我在网上搜索了一款不错的空气净化器,小米 4 Pro 似乎能满足我的所有要求。过滤器大小、日程安排和风量都符合我的要求。我把它设置好后就没再多想,直到上周我的房间里响起了 “剩余0%”更换滤网的警告。我曾将设备设置为禁用液晶显示屏,所以这让我大吃一惊。我点击用户按钮解除了警告,15 分钟后,我的房间又亮了起来……

应用程序中没有任何地方可以让我禁用该警告,在这一年中,我已经多次清洁过滤器,我确信它至少还有 12 个月的使用寿命。我决定对粘在过滤器底部的噩梦般的 DRM RFID 芯片进行调查。

警察与小偷

当我拿起我的 Proxmark 时,我意识到肯定有人已经做了大量的工作,我部分地猜对了。Flamingo Tech 介绍说,他花了一些时间对这些过滤器进行了逆向工程,并公布了他的工作成果

在他的 repo 中,他概述了标签中的重要模块:

第 8 块回到 00000000,恢复到 100%
其他区块信息:

  • 区块 4 : rfid-factory-id
  • 区块 5 :rfid-product-id(xx:xx:xx:xx:xx 常规过滤器)
  • 区块 6:rfid-time
  • 区块 7:rfid-serial-num

不幸的是,NfcA 标签仍被锁定,没有密码我们就无法编辑标签。幸好 proxmark 社区已经解决了这个问题。您可以在这里查看他们发现密码密钥基因的过程。

Flamingo Tech 发布了一个由 Doegox 编写的脚本,概述了密码破解的工作原理。尽管标题是 “他们是这样做的!”,但他并没有在文章中解释代码,而是把博客作为推销自己标签的行动号召。通常这种事情不会让我感到困扰,但 “这将大大减少从整个过滤器……到一个贴纸的废物足迹 “的评论却让我感到不快。如果他真的关心碳足迹,他应该解释一下如何更新过滤器上的标签。不过,如果你想支持他的工作,还是可以在这里买到他的贴纸

我决定在这里解释代码,但如果你想跳过实际的过滤器重置,请向下滚动到 “破解标签”。

Password Key Gen:

脚本包含两个示例,第一个示例基于标签 UID “04A03CAA1E7080 “生成密码 “CD91AFCC“。

首先,我们将 UID 转换为字节数组。这样,04A03CAA1E7080 就变成了一个字节序列 [04、A0、3C、AA、1E、70、80]
接下来,对这个字节数组应用 SHA-1 哈希函数,得到 bcaf806333ccf720cd441a167f914fbe6ea4a513,将其转换为字节数组,因为我们只需要从这个字符串中提取 4 个字节来组成密码。

使用数组中的第一个字节 “BC“,我们将其转换为十进制,得到 188,并使用该字节确定每个字节在哈希值中的位置。
计算出的索引为

188 % 20 = 8
(188 + 5) % 20 = 13
(188 + 13) % 20 = 1
(188 + 17) % 20 = 5

现在回到我们之前生成的哈希值 – bcaf806333ccf720cd441a167f914fbe6ea4a513

按照正确的顺序抓取字节,我们可以得到

8th byte: CD
13th byte: 91
1st byte: AF
5th byte: CC

将这些字符串连接起来就是密码:
CD91AFCC

现在我们知道了它的工作原理,就可以修改/重置我们自己的过滤器了。不是每个人都能买到价值 350 美元的 Proxmark,因此我编写了使用任何 NFC 手机更新标签的说明。

破解标签

步骤 1:

为启用了 NFC 功能的 Android 或 iPhone 安装 NFC 工具。

第 2 步

使用免费应用程序的读取功能扫描滤镜底部的 NFC 标签。

步骤 3:

将获取的 “Serial Number/UID”(14 个字符的十六进制值)复制到某个地方。

步骤 4:

输入以下 14 个字符,生成重置命令。如果 UID 为 12345678901234,则密码为 011853E8,重置过滤器的命令为1B011853E8,3008,A20800000000

步骤 5:

在应用程序的主菜单中点击 “Other”->”Advanced NFC commands “并接受免责声明。然后将上述命令粘贴到数据框中。(注意:安卓用户必须从下拉菜单中选择 I/O 类别,即 “NfcA (ISO 14443-3A)“)。

步骤 6:

确保手机顶部位于标签上方,然后点击 “‘Send Command”。

完成!您已经成功重置了过滤器。根据需要重复操作,即可实现持续、无忧的空气净化。

兼容设备列表:

小米空气净化器  Compatible:  Tested:
4 Pro  ✓  ✓
4 Lite  ✓  ⨯
4  ✓  ⨯
MI PRO  ✓  ⨯
MI PRO H  ✓  ⨯
PRO H  ✓  ⨯
PRO  ✓  ⨯
3H  ✓  ⨯

如果您有时间对旧机型进行测试,请在下面发表评论,我将更新我的列表。

本文文字及图片出自 Breaking Free from DRM: The Story of Hacking My Air Purifier

余下全文(1/3)
分享这篇文章:

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注