为了访问该菜的软件,Wouters使用他的自定义系统通过电压故障注入攻击绕过安全保护。当Starlink天线打开时,它会使用一系列不同的引导加载程序阶段。Wouters的攻击针对第一个引导加载程序(称为ROM引导加载程序)运行故障,该引导加载程序被刻录到片上系统并且无法更新。然后,攻击会在以后的引导加载程序上部署修补固件,这使他能够控制盘子。
Wouters说:“从高层次的角度来看,你可以尝试攻击两个明显的东西:签名验证或哈希验证。” 该故障不利于签名验证过程。“通常你想避免穿短裤,”他说。“在这种情况下,我们是故意这样做的。”
最初,Wouters试图在其启动周期结束时(即Linux操作系统已完全加载)使芯片出现故障,但最终发现在启动开始时更容易导致故障。Wouters说,这种方式更可靠。他说,为了让故障起作用,他必须停止用于平滑电源的去耦电容器的运行。本质上,攻击会禁用去耦电容器,运行故障以绕过安全保护,然后启用去耦电容器。
这个过程允许研究人员在启动周期内运行Starlink固件的补丁版本,并最终允许访问其底层系统。Wouters说,作为对这项研究的回应,Starlink向他提供了对设备软件的研究人员级别的访问权限,尽管他说他拒绝了,因为他对这项工作过于深入并想构建modchip。(在测试期间,他将修改后的盘子挂在这个研究实验室的窗外,并使用塑料袋作为临时防水系统。)
Wouters说,Starlink还发布了固件更新,这使得攻击更难执行,但并非不可能执行。任何想以这种方式闯入菜肴的人都必须投入大量时间和精力。虽然这次攻击不像破坏卫星系统或连接那样具有破坏性,但Wouters说它可以用来了解更多关于Starlink网络如何运作的信息。
“我现在的工作是与后端服务器通信,”Wouters解释道。尽管在Github上可以下载modchip的详细信息,但Wouters没有任何出售成品modchip的计划,他也没有向人们提供已修补的用户终端固件或他使用的故障的确切细节。