Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Starlink-FI — Modchip de injeção de falhas de tensão para avaliação de segurança em caixa-preta de terminais Starlink, contornando a verificação de assinatura do bootloader para executar firmware arbitrário. | Kitploit
Ferramentas/GitHubGitHub/kuleuven-cosic/starlink-fi
Segurança de Sistemas EmbarcadosExploraçãoEngenharia ReversaHacking de HardwareSegurança de HardwareAnálise de BináriosAnálise de Firmware
GitHubkuleuven-cosic/starlink-fi

Starlink-FI

Modchip de injeção de falhas de tensão para avaliação de segurança em caixa-preta de terminais Starlink, contornando a verificação de assinatura do bootloader para executar firmware arbitrário.

Ver Repositório
1.0k1366há 3 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Modchip do Terminal de Utilizador Starlink

Este repositório acompanha a apresentação intitulada "Glitched on Earth by Humans: A Black-Box Security Evaluation of the SpaceX Starlink User Terminal". Os slides estão disponíveis aqui; uma gravação da apresentação deverá estar disponível em breve.

A apresentação descreve como conseguimos executar código arbitrário no Terminal de Utilizador Starlink usando um modchip personalizado que realiza injeção de falhas por tensão. O modchip pode ser usado para contornar a verificação de assinaturas durante a execução do bootloader ROM do System-on-Chip (SoC) (BL1). Isto permite executar código arbitrário no SoC a partir do BL2 e permite explorar mais a fundo o Terminal de Utilizador Starlink e o lado de rede do sistema. Fornecemos o design do modchip para que outros investigadores possam desenvolver a partir do nosso trabalho.

🚨 USE POR SUA CONTA E RISCO 🚨

Embora tenhamos testado e utilizado o design do modchip fornecido, é possível causar danos permanentes num terminal de utilizador com este modchip. Da mesma forma, desmontar o terminal de utilizador pode resultar em danos permanentes e provavelmente anulará a sua garantia.

Visão geral do design do modchip

O modchip é controlado por um microcontrolador RP2040 que dispara na linha eMMC D0 e cria dois pulsos com um atraso e um offset (programáveis) para o driver do MOSFET. Um destes pulsos controla o MOSFET de glitch; quando o gate deste MOSFET é colocado em nível alto, a alimentação de tensão do núcleo do SoC é curto-circuitada para a terra. O segundo pulso gerado pelo RP2040 permite controlar dois MOSFETs que podem ativar/desativar dois bancos de condensadores. Estes condensadores são necessários para o UT arrancar completamente, mas os bancos de condensadores não podem ser ativados durante o glitch de tensão, pois isso impediria a obtenção da falha desejada.

O esquemático e os ficheiros Gerber para produzir o seu próprio modchip são fornecidos aqui.

Visão geral do modchip

Pré-requisitos

  • Desmonte o seu UT. Pare aqui se não quiser anular a garantia do seu UT ou se não estiver disposto a correr o risco de danos permanentes.
    • vários vídeos no YouTube demonstram o processo.
  • Leia o conteúdo do chip eMMC. Faça uma cópia de segurança!
    • O chip eMMC pode ser lido em circuito, ligando aos pontos de teste CMD, CLK e D0. Pinagem do eMMC
    • O eMMC espera níveis lógicos de 1V8!
    • Existem várias ferramentas para ler chips eMMC; uma opção boa e barata ($12) é o Low Voltage eMMC Adapter by the exploitee.rs.
  • Terá de extrair, corrigir e reempacotar os diferentes estágios de arranque para desativar a verificação de assinaturas.
    • O layout do eMMC está documentado na versão GPL do U-Boot no ficheiro spacex_catson_boot.h.
    • Mais informações sobre a extração do firmware podem ser encontradas no nosso artigo de blogue.
    • Os primeiros estágios de arranque são todos baseados no projeto ARM Trusted Firmware-A.
      • Pode utilizar a ferramenta TF fiptool para desempacotar os Firmware Image Packages nas partes distintas.
      • A correção destes estágios de arranque pode ser feita com o Ghidra após alguma análise estática básica (use o código aberto do TF-A para orientar os seus esforços).
      • Certifique-se de desativar a verificação de assinaturas e de reativar a saída UART.
      • Atualize o hash do firmware nos certificados. Nós contornamos a verificação de assinaturas com glitch, mas o hash ainda tem de ser válido.

Montagem do modchip na PCB do Starlink UT

  • Certifique-se de que o modchip que montou funciona antes de tentar soldá-lo no lugar.

  • Remova os condensadores de desacoplamento dentro dos quadrados vermelhos; estes são normalmente usados para estabilizar a alimentação de tensão do núcleo do SoC. Condensadores de desacoplamento

  • Alinhe o modchip montado na PCB do UT e solde-o no lugar usando os furos castelados. Certifique-se de que não cria nenhum curto-circuito entre a alimentação de tensão do núcleo e a terra.

    • Os furos castelados mais à direita não estão na posição correta. Pode redesenhar a PCB ou simplesmente mascarar os pads expostos na PCB do UT e ligar os furos castelados a um pad de terra próximo (ver imagem).
  • Ligue o ponto de teste marcado UT RST ao pino de ativação do regulador de tensão do núcleo.

  • Ligue o ponto de teste marcado 12V a uma fonte de 12V próxima na PCB do UT.

  • Ligue o pad de jumper mais à direita (por baixo do botão) ao ponto de teste eMMC D0.

    • Tivemos de o fazer devido a uma atualização de firmware que desativou a saída UART.
  • Ligue o ponto de teste marcado 1V8 a uma fonte de 1,8V próxima na PCB do UT (há um condensador de desacoplamento ao lado do eMMC que está ligado a 1V8).

Agora está pronto para começar a fazer glitch, boa sorte! A pasta Python contém um exemplo que demonstra como pode começar a utilizar o modchip para experimentação.

Modchip montado no UT.

Problemas e limitações conhecidos

  • O modchip foi concebido antes de a SpaceX introduzir uma atualização de firmware que queimou um fusível para desativar toda a saída UART. O modchip foi inicialmente concebido para disparar com a saída UART, mas pode ser adaptado para disparar com o sinal eMMC D0. Numa revisão mais recente, seria útil ter a capacidade de ler a saída UART e também disparar com os dados eMMC D0. A UART pode ser reativada no BL2 e pode fornecer uma forma fácil de verificar se o glitch foi bem-sucedido.
  • O modchip foi concebido para o terminal de utilizador circular; o mesmo ataque deverá funcionar no terminal de utilizador quadrado, mas exigirá que crie um novo design de PCB.
  • Uma secção dos furos castelados está na localização errada. Tenha cuidado ao utilizar o design tal como está e siga as instruções de montagem em conformidade.
  • Desligar o modchip do PC de controlo depois de o glitch ter sido bem-sucedido pode levar ao reinício da antena. Isto deve-se provavelmente à falta de uma resistência de pull-down no pino IN A do driver MOSFET MCP1405.
  • O firmware fornecido espera um PC de controlo externo para orquestrar as tentativas de injeção de falhas. Deverá ser relativamente simples transformar isto num modchip autónomo utilizando o segundo núcleo Cortex-M0 do RP2040 (atualmente não utilizado).

FAQ

  • Não vendemos modchips prontos
  • Não fornecemos firmware (corrigido) do Terminal de Utilizador Starlink
  • Não fornecemos parâmetros exatos de glitch. Os slides da apresentação contêm várias pistas e os parâmetros variam consoante a forma como corrige o firmware.
Baixar ferramenta
  • Da mesma forma, terá de fazer algumas alterações na imagem U-Boot para desativar a verificação de assinaturas.
    • Também pode aumentar o parâmetro bootdelay.
  • A Flattened uImage Tree pode ser desempacotada com o dumpimage, fornecido como parte do projeto U-Boot.
    • Faça as alterações que pretender e reempacote.
  • Reescreva o firmware corrigido no chip eMMC.