羿阁 发自 凹非寺
量子位 | 公众号 QbitAI
被马斯克大吹特吹的“星链(Starlink)”,黑客竟然只需170块人民币就能轻松攻破?
没错,一位比利时小哥在今年的黑帽大会(Black Hat Conference)上公开演讲展示了自己是如何做到的。
他自制了一个可以连接到星链终端的定制黑客工具,而这款工具的基础,是一种名为“modchip”的电路板,售价不到170元。
连接到星链终端后,该自制工具就能发起故障注入攻击,导致系统暂时短路以绕开星链安全保护机制,继而成功侵入星链系统中原本锁定的部分。
目前,这位小哥已将该工具在GitHub上开源发布,并分享了关于攻击方式的一些细节。
具体怎么个情况,我们一起来看看。
攻击怎么做到的?
星链,是马斯克旗下SpaceX公司推出的一项卫星互联网服务。
它的互联网系统由三个主要部分组成:
负责实现信号覆盖的卫星、将互联网连接发送到卫星的网关(Gateway),以及用户购买安装的Dishy McFlatface卫星天线。
来自比利时鲁汶大学的安全研究员Lennert Wouters的研究,主要集中在这些用户终端(天线)上。
他解释道:
站在攻击者的角度,首先想到的自然是攻击卫星本体,也就是构建自有系统与卫星通信。但这显然非常困难。所以要想成功攻击,最好能借助于用户终端,这样很多难题就迎刃而解了。
为此,Wouters改造了他购买的一个星链天线,用“热风枪、撬棒、异丙醇再加上极大的耐心”取下天线上的金属盖,逐一分析星链终端的内部组件。
在直径达59厘米的金属盖下,隐藏着一个大型PCB。
其中的片上系统包括一枚定制化四核ARM Cortex-A53处理器,由于架构未经公开所以破解难度极大。板上的其他元件还包括射频设备、以太网供电系统和GPS接收器。
亲手拆解之后,Wouters逐渐弄清了星链终端是如何启动、又是怎样下载固件的。
为了进一步设计定制的modchip,Wouters扫描了星链天线并找到了最适合当前星链电路板的设计方案。
他设计的modchip需要通过几根线缆被焊接到星链PCB上,modchip本体则由树莓派微控制器、闪存、电子开关和稳压器组成。
有趣的是,在设计这块终端电路板时,星链工程师们在其上印制上了“人类制造于地球”(Made on Earth by humans)的字样。
Wouters则在自己的modchip上幽默了一把,印上了“人类在地球上制造的故障”(Glitched on Earth by humans)。
为了接入终端软件,Wouters的定制系统会通过电压故障注入攻击绕过安全保护机制。
在星链天线开启时,会经历多个不同的引导程序加载阶段。Wouters的攻击指向第一个引导加载程序(即ROM引导加载程序),此程序是被刻录到片上系统的,因此无法更新。
攻击成功后,他会在接下来的其他引导加载程序上修改固件,从而夺取对终端天线的控制权。
Wouters解释道:“总体来看,最理想的攻击切入点就只有两个:签名验证,或者哈希验证。”
他的方法指向的正是签名验证过程。“工程师在设计的时候会努力避免短路,但我们的攻击方法却是在刻意利用短路。”
最初,Wouters本打算在启动周期结束时(即Linux操作系统全部加载完成)再向芯片注入故障,但最终发现抢在启动开始时注入才是正确思路。Wouters表示,这种方式的可靠性更高。
为了注入故障,他必须让负责平滑电源的去耦电容停止工作。所以,Wouters攻击方案的实质就是先禁用去耦电容,再运行故障以绕过安全保护,最后重新启用去耦电容。
经此过程,Wouters就能在启动周期之内篡改并运行星链固件,最终获得底层系统访问权限。
除此之外,Wouters指出,在他研究期间,星链方面也做出过回应,表示愿意向他提供研究员级别的设备软件访问权限,但被他拒绝了。
虽然他设计的定制版modchip已经公布在GitHub上,但Wouters并没有出售modchip成品的打算,也从未向他人提供过篡改后的用户终端固件,或者利用此漏洞的确切细节获利。
星链回应
在Wouters的Black Hat会上演讲结束后,星链方面发布了一份六页的PDF,解释了其系统保护思路,文章提到:
我们意识到这是一种令人印象深刻的高水平攻击思路,也是我们在系统中发现的首例此类攻击。这让我们认识到,能够物理侵入星链终端的攻击者可以借此夺取访问权限、实施恶意活动。因此,我们将依靠「最低权限」设计原则限制这类攻击产生广泛影响。
星链项目方重申,此攻击需要对用户终端进行物理访问,并强调对安全启动系统注入故障只会影响到当前设备。
整个星链系统的其余部分不会因此受到影响。
换言之,普通星链用户无需担心受此攻击影响,也无需采取任何应对措施。
One More Thing
除了设计出攻击星链的黑客工具,这个比利时小哥之前还曾攻破过特斯拉高端车型Model X的安全漏洞。
创下了“用自制硬件在90秒内解锁特斯拉汽车”的记录,并迫使特斯拉推出了一系列修复方案。
在演示视频里,研究人员只用2000元左右,就可以用电脑DIY一个“车钥匙”,90秒打开车门,不到几分钟,就能把车开走。
特斯拉引以为傲的无钥匙进入,变成了真正字面意义上的“无钥匙进入”。
特斯拉、星链……不知道这位小哥的下一个目标是哪家公司?(手动狗头)
参考链接:
[1]https://github.com/KULeuven-COSIC/Starlink-FI
[2]https://www.blackhat.com/us-22/briefings/schedule/#glitched-on-earth-by-humans-a-black-box-security-evaluation-of-the-spacex-starlink-user-terminal-26982
[3]https://www.wired.com/story/starlink-internet-dish-hack/
[4]https://mashable.com/article/starlink-satellite-hacked-cheap