Исследователь из Лёвенского католического университета продемонстрировал на конференции Black Hat технику компрометации пользовательского терминала Starlink, используемого для подключения абонентов к спутниковой сети SpaceX. Терминал оснащён собственным 64-разрядном SoC, созданным компанией STMicro специально для SpaceX. Программное окружение основано на Linux.
Предложенный метод позволяет выполнить свой код на терминале Starlink, получить root-доступ и доступ в недоступную пользователю через обычные порты внутреннюю сеть, используемую терминалами, например, для обновления прошивок. Опубликованные наработки также могут быть применены для продвинутых экспериментов в области программно определяемых радиосистем (SDR), в силу специфичной структуры терминала Starlink (фазированная антенная решётка, управляемая программно).
Взлом терминала Starlink интересен с точки зрения атаки на хорошо защищённую Linux-систему с качественной реализацией режима безопасной загрузки (Secure Boot). Так как программно систему не удалось скомпрометировать, взлом был осуществлён на аппаратном уровне с применением специального лабораторного оборудования. В конечном счёте, необходимое для взлома оборудование удалось свести к готовой плате-надстройке (modchip), использующей обычный микроконтроллер Raspberry Pi RP2040 (2-ядерный Cortex M0).
Подготовленная modchip-плата подключается к определённым дорожкам основной платы терминала Starlink и вызывает сбой путём изменения напряжения в определённых частях электрической схемы ("voltage fault"). Вызов сбоя в момент проверки цифровой подписи в ROM bootloader (BL1) позволяет запустить на SoC произвольный код, несмотря на отсутствие для этого кода корректной цифровой подписи.
Схема платы для взлома терминалов Starlink опубликована на GitHub в формате KiCad. Также опубликован код использованной для атаки прошивки микроконтроллера. Стоимость изготовления платы оценивается примерно в 25 долларов.