对于黑客来说,电脑可以破解、游戏机可以破解、手机可以破解,那远在天上的卫星可以破解吗?
答案是可以的!而且被破解的还是世界首富马斯克旗下Space X星链计划中的卫星。
破解星链卫星的小哥来自来自比利时鲁汶大学,名字叫Lennert Wouters,从事研究员工作。Wouters在拉斯维加斯近日召开的Black Hat Security Conference(黑帽安全技术大会)上现场展示了破解Space X的全过程。
花25美元破解价值50万美元的卫星
据Lennert Wouters介绍,他用了一年的时间来研究如何破解卫星,最终的破解方案仅需要25美元的成本。其破解的思路可以概括为“使用定制电路板绕过签名验证检查,用欺骗的方式让系统误以为启动过程正确,并不存在篡改”。这个跟以前流行的破解游戏主机的思路相似。
了解了思路之后,让我们跟着Lennert Wouters的介绍一起了解他破解卫星终端的过程。要想破解卫星,首先你需要Space X的卫星终端——用来跟卫星连接的天线(不是猫窝)。
通过天线,Lennert Wouters能够了解卫星的运作以及终端的工作原理,以便于他着手破解卫星。
但单单是看着这个天线是不够的,还需要拆开这个天线,研究天线的内部结构,才能够找到攻击卫星终端,注入代码的攻击点。
于是,Lennert Wouters使用异丙醇、撬棒、热风机等工具对卫星天线进行拆解,不过据他本人介绍,整个拆解的过程相当麻烦,拆解者需要拥有极强的耐心。
经过一番操作之后,卸下天线的金属外壳,就可以拿到像下面这样,直径为59cm的电路板。
电路板上集成的电路系统有:一枚定制化的四核ARM Cortex-A53处理器、射频电路、以太供电系统以及GPS接收器。
拆解完之后,Lennert Wouters发现这颗定制化的处理器架构未曾公开过,所以破解难度较大。
但攻破技术难关,这就是黑客的乐趣所在。为了破解卫星天线的电路主板,黑客小哥需要自制modchip(破解芯片)。于是他扫描了整块天线的电路主板,找到最适合破解芯片的电路设计方案。
完成电路扫描之后,Lennert Wouters根据自己制作的电路设计方案使用Rasperrt Pi(树莓派)微控制器、闪存、电子开关和稳压器做了一块针对卫星天线的破解芯片,然后将破解芯片通过线缆焊接到天线锅的PCB板上。
到这一步,用于攻击卫星天线的硬件工具已经制作完毕。接下来要做的就是寻找攻击点,使用破解芯片注入攻击到卫星终端(天线锅)的系统中,修改卫星终端上的固件,最终夺取对天线终端的控制权。
在Lennert Wouters长时间的摸索中,他发现在卫星终端启动时,会经历多个不同的引导程序加载阶段。其中第一个引导加载程序因为是被刻录到片上系统的,无法更新,所以在攻击成功后注入的修改固件不会被重置,从而实现最终夺取对卫星终端的控制权。
确定了攻击目标之后,Lennert Wouters在“签名验证”及“哈希验证”这两个理想攻击切入点中选择了更适合的“签名验证”。Lennert Wouters表示,工程师在设计电路的时候会努力避免短路,但黑客的攻击方法经常会刻意利用短路或者制造电路问题扰乱电路板的原有设定,实现“浑水摸鱼”。
因此Lennert Wouters在注入故障的时候,需要先让负责平滑电源的去耦电容停止工作,实现电路板的安全保护机制短路,之后注入故障修改硬件程序并绕过安全保护,完成上面的操作之后,重启去耦电容,即可实现篡改并运行星链固件,取得底层系统访问权限。
上面思路理清楚之后,就可以开始进入破解的实操环节了。在实操过程中,Lennert Wouters本来打算在卫星终端的启动周期结束(Linux操作系统全部加载完成)再发起攻击,但在后续的实验中,他发现抢在启动前发起进攻才是更为可靠的方法。最终,Lennert Wouters实现了在卫星终端的启动周期之内篡改并运行星链固件,获得设备的底层系统访问权限 。
至此,Lennert Wouters完成了自己对卫星终端的破解,并实现了通过卫星终端给天边的卫星注入代码,实现修改卫星固件。
目前,Lennert Wouters的定制版modchip已经公布在GitHub上,但并没有出售modchip成品的打算,也从未向他人提供过篡改后的用户终端固件,或者利用此漏洞的确切细节获利。
Space X高度认可,提出漏洞赏金计划
作为一名安全研究员,在去年,Lennert Wouters就已经向SpaceX报告了这些漏洞,星链也通过漏洞悬赏计划向Wouters支付了相应的赏金。Lennert Wouters表示,虽然SpaceX已发布的更新使攻击更加困难,但避免此类攻击的唯一可靠方法是创建一个新版本的主芯片,否则无法从根源上解决问题。
SpaceX方面则是对Lennert Wouters的破解表示了极高的认可,在Lennert Wouters进行破解的时候,SpaceX官方还曾表示可以提供“研究员级别”的身份辅助Lennert Wouters进行破解研究。
同时,星链项目方重申,此攻击需要对用户终端进行物理访问,并强调对安全启动系统注入故障只会影响到当前设备。整个星链系统的其余部分不会因此受到影响。换言之,普通星链用户无需担心受此攻击影响,也无需采取任何应对措施。
公司还表示欢迎各个研究人员发现并报告漏洞,对“星链”网络进行非破坏性测试、报告并发现漏洞的研究人员可获得100美元25000美元的奖励,并列出了已报告“重大安全问题”的32名研究人员。
卫星正在成为恶意黑客心中的不法之地
星链卫星被破解,让天边的卫星走进了大部分人的视野当中,但透过这一次破解,我们需要提高警惕。
星链计划是马斯克旗下Space X公司于2015年公布的卫星通讯计划,目前计划发射4.2w颗卫星,实现用户在全球各地都可以享受上网。但有消息指出,在俄乌战争中,星链计划给乌方提供了通讯支持,实现乌方无人机定点打击的功能。
星链计划真实目的不得而知,但目前恶意黑客已经将卫星互联网视为攻击目标。最早于02年的时候,我国便出现过卫星被不法组织黑入,导致电视画面异常的情况。此外,在北斗卫星还没部署之前,中国曾在一次军事演习中被美国关闭了GPS使用权,导致导弹发射偏离轨迹。
当下太空资源已经成为了大国之间的必争之地。在如今,亚马逊、OneWeb、波音、Telesat和SpaceX等民营组织加入其中将进一步加剧资源的争夺。但最重要的是各方在此次破解当中应当提高安全警惕,防止为了无畏的扩张,导致“太空垃圾”泛滥,让卫星成为黑客违法的助力。