Como hackeamos o Keystone: de uma vulnerabilidade no USB SDK à extração da frase mnemônica

Principais Resultados
• O USB SDK carece de validação para comprimentos controlados pelo host, resultando em leitura e escrita fora dos limites (OOB) em um buffer fixo
• Atacantes podem sequestrar a tabela de callbacks de USB class para converter a escrita OOB em execução de código arbitrário no MCU
• Configurações incorretas de MPU permitiram a execução direta de shellcode a partir da SRAM
• Após obter o Passcode, o OTP e o material criptográfico do elemento seguro, é possível reconstruir a AES Key e extrair a seed phrase BIP39
• SDKs de terceiros também fazem parte do perímetro crítico de segurança de hardware wallets e devem ser submetidos a auditorias completas






