Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Starlink-FI — 用于 Starlink 终端黑盒安全评估的电压故障注入改装芯片,可绕过引导加载程序签名验证以执行任意固件。 | Kitploit
工具/GitHubGitHub/kuleuven-cosic/starlink-fi
嵌入式系统安全漏洞利用逆向工程硬件黑客硬件安全二进制分析固件分析
GitHubkuleuven-cosic/starlink-fi

Starlink-FI

用于 Starlink 终端黑盒安全评估的电压故障注入改装芯片,可绕过引导加载程序签名验证以执行任意固件。

查看仓库
1.0k1363年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Starlink 用户终端 Modchip

本仓库与题为“人类在地球上引发的故障:SpaceX Starlink 用户终端的黑盒安全评估”的演讲配套。 幻灯片可在此处获取,演讲录像不久后应可观看。

该演讲介绍了我们如何利用一枚执行电压故障注入的自制 modchip,在 Starlink 用户终端上实现任意代码执行。 该 modchip 可用于在片上系统(SoC)ROM 引导加载程序(BL1)执行期间绕过签名验证。从而允许从 BL2 开始,在 SoC 上执行任意代码,并允许进一步探索 Starlink 用户终端以及系统的网络侧。 我们提供了 modchip 设计,以便其他研究人员可以在我们工作的基础上继续构建。

🚨 风险自负 🚨

尽管我们已测试并使用所提供 modchip 设计,但使用该 modchip 仍可能对用户终端造成永久性损坏。 同样,拆解用户终端也可能导致永久性损坏,并很可能使您的保修失效。

Modchip 设计概述

该 modchip 由 RP2040 微控制器控制,它在 eMMC D0 线路上触发,并为 MOSFET 驱动器产生两个具有(可编程)延迟和偏移的脉冲。 其中一个脉冲控制 glitch MOSFET;当该 MOSFET 的栅极被拉高时,SoC 核心电压供电将被短路到地。RP2040 生成的第二个脉冲用于控制两个 MOSFET,从而启用/禁用两个电容器组。这些电容器是 UT 完全启动所必需的,但在电压故障注入期间不能启用这些电容器组,否则将无法获得我们想要的故障。

用于制作您自己的 modchip 的原理图和 Gerber 文件可在此处获取。

Modchip 概览

前提条件

  • 拆解您的 UT。如果您不想使 UT 保修失效,或不愿承担永久性损坏的风险,请到此为止。
    • 几个 视频 在 YouTube 上展示了该过程。
  • 读取 eMMC 芯片的内容。请做好备份!
    • 通过连接 CMD、CLK 和 D0 测试点,即可在电路内读取 eMMC 芯片。eMMC 引脚
    • eMMC 需要 1V8 逻辑电平!
    • 有多种工具可读取 eMMC 芯片,一个又好又便宜($12)的选择是 exploitee.rs 的低压 eMMC 适配器。
  • 您必须提取、修补并重新打包不同的启动阶段,以禁用签名验证。
    • eMMC 布局记录在 U-Boot GPL 发行版 的 spacex_catson_boot.h 文件中。
    • 有关提取固件的更多信息,请参阅我们的博客文章。
    • 早期启动阶段均基于 ARM Trusted Firmware-A 项目。
      • 您可以使用 TF fiptool 将固件镜像包(Firmware Image Package)解包为各个独立部分。
      • 在进行一些基本静态分析后,可以使用 Ghidra 修补这些启动阶段(可参考开源的 TF-A 代码来指导您的工作)。
      • 确保禁用签名验证并重新启用 UART 输出。
      • 更新证书中的固件哈希。我们通过 glitch 绕过签名验证,但哈希仍然必须是有效的。
    • 类似地,您还需要对 U-Boot 镜像进行一些更改以禁用签名验证。
      • 您还可以增大 bootdelay 参数。
    • 可以使用 dumpimage 解包 Flattened uImage Tree,该工具作为 U-Boot 项目的一部分提供。
      • 进行您想要的更改,然后重新打包。
  • 将修补后的固件写回 eMMC 芯片。

将 Modchip 安装到 Starlink UT PCB 上

  • 在尝试焊接之前,请确保您组装好的 modchip 工作正常。

  • 移除红色方框内的去耦电容,这些电容通常用于稳定 SoC 核心电压供电。 去耦电容

  • 将组装好的 modchip 对准 UT PCB,并使用半孔(castellated holes)焊接到位。确保不要在核心电压供电与地之间造成任何短路。

    • 最右侧的半孔位置不正确。您可以重新设计 PCB,或者直接遮蔽 UT PCB 上裸露的焊盘,并将半孔连接到附近的接地焊盘(见图)。
  • 将标记为 UT RST 的测试点连接到核心电压稳压器的使能引脚。

  • 将标记为 12V 的测试点连接到 UT PCB 上附近的 12V 电源。

  • 将最右侧的跳线焊盘(按钮下方)连接到 eMMC D0 测试点。

    • 我们必须这样做,因为一次固件更新禁用了 UART 输出。
  • 将标记为 1V8 的测试点连接到 UT PCB 上附近的 1.8V 电源(eMMC 旁边有一个连接至 1V8 的去耦电容)。

现在您应该一切就绪,可以开始进行 glitch 攻击了,祝好运! Python 文件夹 中包含一个示例,演示了如何开始使用该 modchip 进行实验。

安装在 UT 上的 Modchip

已知问题和限制

  • 该 modchip 设计于 SpaceX 引入烧断熔丝以禁用所有 UART 输出的固件更新之前。该 modchip 最初设计为在 UART 输出上触发,但可以改为在 eMMC D0 信号上触发。在较新的版本中,最好既能读取 UART 输出,也能在 eMMC D0 数据上触发。UART 可在 BL2 中重新启用,并可为验证 glitch 是否成功提供一种简便的方法。
  • 该 modchip 是针对圆形用户终端设计的,同样的攻击应适用于方形用户终端,但您需要设计一块新的 PCB。
  • 有一部分半孔的位置不对。按原样使用该设计时请小心,并遵循相应的安装说明。
  • glitch 成功后将 modchip 从控制 PC 上拔下可能会导致碟形天线重启。这很可能是由于 MCP1405 MOSFET 驱动器的 IN A 引脚上缺少下拉电阻。
  • 提供的固件需要一个外部控制 PC 来编排故障注入尝试。使用(当前未使用的)第二个 RP2040 Cortex-M0 内核将其变为独立的 modchip 应该相当简单。

常见问题

  • 我们不销售成品 modchip
  • 我们不提供(修补过的)Starlink 用户终端固件
  • 我们不提供确切的 glitch 参数。演示幻灯片中包含各种提示,具体参数将取决于您如何修补固件。
下载工具