他破解了整台车机,就为了把时间拨回一小时
爱沙尼亚有个叫摩尔察茨的人,开着 2014 年的雷诺 Latitude。10 月底欧洲换冬令时,仪表盘的时钟慢了一个小时,他照例去按设置,发现菜单里根本没有改时间这一项。两个设置按键,一个只管蓝牙和电话簿,另一个按下去直接弹窗,没有检测到地图。
判断先给出来:不是车坏了,是这套设计本来就没打算让他改。前车主卖车时提醒过,改时间得靠一张导航地图 SD 卡,他当时不信,没要那张卡,卡也顺手被扔了。
图片就是这台车 | 图源:Wikimedia Commons(CC BY 2.0,Rutger van der Maar)
那么这事是怎么做成的。这台车机是 TomTom 给雷诺定制的 Carminat,三星的 SoC,跑一个 2011 年的定制 Linux。摩尔察茨把固件拆开发现了真相:设置菜单的入口定义,就写在地图卡上。卡一拔,车机连设置长什么样都不知道。更绝的是卡还带防盗版校验,每张卡有烧死的唯一 ID,文件签名对着这个 ID 来,买张空卡拷文件都过不了。
图片拔了卡,设置入口整个消失 | 依据:机主博客 blog.nns.ee(2026-11-02),整理:人怎么能这么
动手之前他先搭了个模拟器。用 QEMU 把这台车机在电脑里整机组装出来,打补丁、伪造总线信号才让它开机。所有的招都在模拟器里先试一遍,不拿真车冒险。这个顺序本身就值得抄:在自己能承担代价的地方试错,是玩老硬件的底线。
配一张卡,连运费大概 60 欧元。他嫌贵,决定自己动手。思路是从内核漏洞的老套路里借的:车机每次开机都会自动加载卡上的一份自动化脚本,他不碰应用层,直接让内核去执行。Linux 有个记录程序崩溃日志的正经功能,把它的指向改成卡上的一行命令,进程一崩,内核就以最高权限把命令跑一遍。2011 年的内核,压根想不到有人这么用它。
图片两行脚本,剩下的是内核自己干的 | 依据:机主博客 blog.nns.ee,整理:人怎么能这么
进了系统,他在配置文件里找到这台车机存时区的方式:它没有时区概念,只记一个偏移分钟数,从 GPS 拿标准时间往上加。夏令时记 180,冬令时该记 120,他改了 60 个数。时钟对了,屏幕上那句没有找到地图,还挂在那儿。
图片改 60 分钟,用掉一整套逆向 | 依据:机主博客 blog.nns.ee,整理:人怎么能这么
放到今天看,这张卡还算是老前辈。这两年车企把功能做成订阅不是新闻,座椅加热按月付费,续航解锁要花钱,这张地图卡只是同一套思路的朴素版本:先给你一辆能开的车,再收走一半钥匙。
那么对哥们有什么影响。这事的荒诞点在于,防盗版没防住海盗,把正经车主锁在了车外。功能藏在配件里,是硬件圈的老毛病:打印机认原厂墨盒,NAS 认原厂盘托,扫地机认原装耗材。买这类带配件依赖的东西之前,先问三句:核心功能是不是得靠一张卡一个盒子才转得起来,配件停产了怎么办,二手转手要不要搭原装件。
图片被 60 欧元卡住的就是这类东西 | 图源:Wikimedia Commons(CC BY-SA 4.0,Dinkun Chen)
所以兄弟,下次遇到功能莫名缺失的机器,先怀疑是设计,不是玄学。文中只讲了原理和故事,没有任何操作步骤,车机这类涉及行车安全的设备,也别在家照着博客折腾。真被这种绑架恶心到了,记住那个 60 欧的答案:有时候不是功能做不到,是你没买票。
