Como Hackeei uma Hardware Wallet de Criptomoedas e Recuperei Dois Milhões de Dólares
Um especialista em hardware hacking relata como conseguiu invadir uma Trezor, uma carteira de criptomoedas física, para recuperar o acesso a fundos de um cliente que havia esquecido sua senha. O artigo detalha o processo técnico, os desafios e as vulnerabilidades exploradas.
MundiX News·13 de abril de 2026·15 min de leitura·👁 4 views
Imagine ter dois milhões de dólares armazenados em um chip de silício do tamanho de um selo postal, mas você esqueceu a senha. Existem muitos chips desse tipo. As hardware wallets (carteiras de hardware) são projetadas para proteger as seed phrases (frases de recuperação) no mundo das criptomoedas. No entanto, muitas pessoas esquecem suas senhas e, se isso acontecer, você não poderá acessar as informações no chip e perderá o dinheiro. Este artigo aborda esse problema.
Fui contatado por pessoas que eu não conhecia. Eles tinham uma hardware wallet Trezor com alguns milhões de dólares armazenados nela. Eles me perguntaram se eu poderia hackear a carteira e obter acesso às informações para que pudessem provar que o dinheiro era deles.
Meu nome é Joe Grand e sou um hardware hacker. Hackear um produto como este é um desafio incrível, como resolver um quebra-cabeça, e temos apenas uma chance de fazer tudo certo.
Hacking não é como mostrado nos filmes. Não há efeitos gráficos se movendo na tela, nada acontece em frações de segundo. É uma montanha-russa, resolvendo quebra-cabeças, forçando o hardware a fazer o que não espera. A primeira coisa que fizemos foi assinar um termo de responsabilidade caso algo desse errado. E então trabalhei doze semanas neste projeto, tentando quebrar a proteção de forma confiável, sem apagar o conteúdo do dispositivo.
Durante o processo, me comuniquei com o cliente e expliquei os riscos. Por exemplo, ele ia me enviar o dispositivo por avião e discutimos o perigo da inspeção por raios-X. A maioria dos eletrônicos sobrevive à exposição aos raios-X, não é uma radiação particularmente poderosa.
Fundamentos
Criptomoeda é um sistema de moeda digital descentralizado. Ao contrário dos sistemas financeiros tradicionais, onde a confiança na moeda é determinada por bancos e governos, a confiança na criptomoeda é baseada na força da criptografia usada em seus sistemas. O tipo de criptografia usado varia dependendo da criptomoeda, mas geralmente é criptografia de chave pública: um usuário tem duas partes de uma chave, uma das quais ele mantém consigo e usa para assinar uma transação como prova de que foi o usuário quem a iniciou. A chave pública, derivada da chave privada, é usada para verificar a transação.
O blockchain é a tecnologia usada em criptomoedas, essencialmente como um livro-razão digital descentralizado: cada vez que uma transação ocorre, ela se torna pública. Se meus clientes, Dan e Jesse, perderem sua chave privada armazenada em sua hardware wallet física, as alterações no livro-razão não poderão ser feitas. Uma hardware wallet é essencialmente um computador de uso geral que armazena a chave privada, mas se você esquecer a senha da carteira, estará em apuros... a menos que encontre alguém como eu.
O cliente Dan Reich diz: "Há alguns anos, um amigo e eu investimos dinheiro em criptomoedas. Uma dessas moedas, THETA, disparou e tínhamos mais de dois milhões de dólares. Um amigo anotou a senha em uma carteira, mas depois esqueceu o PIN. A ironia é que ele é um jogador de pôquer profissional e tem memória fotográfica.
Se você inserir o PIN de quatro dígitos da carteira Trezor incorretamente muitas vezes, seu conteúdo será apagado. Então procuramos por tudo, pesquisamos no Google e procuramos pessoas que pudessem nos ajudar até encontrarmos Joe e alguns caras da Suíça que trabalhavam em um laboratório secreto. Perguntei a eles se eu poderia ir até eles para ter certeza de que tudo era real. Eles se recusaram. Eu estava até disposto a deixar que eles colocassem um saco na minha cabeça enquanto me levavam para aquele laboratório. Enquanto isso, Joe estava fazendo algum progresso e mostrou que poderia hackear o dispositivo. Ao mesmo tempo, ele explicou em detalhes como faria esse trabalho. Quando ele conseguiu hackear três carteiras de teste seguidas, peguei um avião e voei para Portland, esperando finalmente salvar as moedas."
Após dezesseis tentativas incorretas de inserir o PIN, os dados da carteira são excluídos. Dan e Jesse já haviam gasto doze tentativas e não queriam mais arriscar. Na época, essas moedas valiam um total de US$ 12.000. Dan já havia desistido e tirado esse dinheiro da cabeça. Ele estava pronto para aceitar... mas então o valor da criptomoeda subiu novamente. No final de 2020, suas moedas valiam mais de US$ 400.000 e, por um breve momento, atingiram um preço de mais de três milhões.
Já houve muitas histórias de pessoas esquecendo as senhas de suas hardware wallets e perdendo dinheiro. Por exemplo, em 2017, meu amigo Mark Frauenfelder armazenou 7,4 Bitcoins, que na época valiam três mil dólares. Ele anotou a senha em um pedaço de papel que uma faxineira jogou fora. Ele achava que se lembrava do PIN, mas descobriu que também o havia esquecido.
Em outro caso, uma pessoa fez todos os esforços para recuperar US$ 280 milhões em Bitcoins. Ele tinha 7.500 Bitcoins e a chave privada estava armazenada em um disco rígido. Ele tinha dois discos rígidos idênticos e acidentalmente jogou o errado fora. Curiosamente, o disco rígido foi jogado em um aterro sanitário local, o que significa que ele precisava procurar uma agulha em um palheiro muito fedorento.
E estas são apenas duas das histórias mais conhecidas. Eu estava praticamente certo de que poderíamos hackear a carteira. Já existiam exploits para o dispositivo Trezor One, então quando Dan me perguntou se eu poderia hackeá-lo, eu disse que sim. Achei que poderia repetir algum do trabalho. Em 2017, um hacker britânico de quinze anos chamado Salim Rashid encontrou uma maneira de hackear a carteira de Mark, mencionada acima. Rashid descobriu que quando uma carteira Trezor é ligada, ela cria uma cópia do PIN e da chave armazenada na memória flash segura do dispositivo e coloca a cópia na RAM. A vulnerabilidade permitiu que ele colocasse a carteira no modo de atualização de firmware e instalasse seu próprio código não autorizado no dispositivo, que lia o PIN e a chave da RAM. Mas ao instalar este código, o PIN e a chave são removidos da memória flash de longo prazo, deixando apenas uma cópia na RAM. Esta foi uma técnica arriscada: se apagarmos acidentalmente a RAM antes de ler os dados, a chave não poderá ser recuperada.
De qualquer forma, a Trezor fez alterações em suas carteiras desde então: o PIN e a chave copiados para a RAM na inicialização são removidos da RAM quando o dispositivo é alternado para o modo de atualização de firmware.
O Hack
No final, isso se transformou em um processo de tentativa e erro de três meses, verificando várias técnicas até que eu finalmente consegui. Eu sabia que precisaria de uma chamada injeção de falha (fault injection) para realizar o ataque: essencialmente, era necessário causar um comportamento defeituoso no chip de silício para contornar a segurança. Como resultado, consegui contornar acidentalmente a proteção e recuperar informações de um chip de teste, mas não conseguia acreditar porque estava tentando fazer algo completamente diferente. Contei para minha esposa e acrescentei que não conseguia reproduzir o processo. Ela sugeriu anotar tudo o que eu estava fazendo durante o processo, mas eu não sabia o que havia feito.
Comecei a anotar tudo desde o início do dia, incluindo as chamadas do Zoom. Investiguei o histórico da linha de comando e todas as ações realizadas com o computador. Acontece que um dos dispositivos que eu estava conectando ao computador estava causando uma falha no Trezor que eu não conseguia recriar. Decidi que a manhã traria conselhos e, pela manhã, comecei a investigar o código-fonte do dispositivo, porque pensei que em algum momento a passphrase deveria se mover para uma área da RAM que pudesse ser acessada através da interface de depuração.
Foi graças à linha mostrada acima que pude realizar o ataque. Esta é a função memcpy da versão de firmware 1.6.0. Na versão 1.6.1, esta função foi removida e toda a estrutura de memória foi alterada. Acontece que descobri uma área do código-fonte onde informações secretas são copiadas para a RAM quando a energia é ligada; depois disso, posso executar minha falha para derrotar a proteção do chip e obter acesso ao conteúdo da RAM.
Para realizar este ataque, precisei de muitos equipamentos diferentes. O microcontrolador do dispositivo Trezor possui um recurso de segurança que nos impede de ler o conteúdo da memória. Portanto, precisamos encontrar uma maneira de contornar esse recurso. O mecanismo de proteção é acionado apenas quando o dispositivo é ligado, portanto, precisamos executar o ciclo de ligar e desligar repetidamente ao realizar o ataque. Para fazer isso, usei um dispositivo chamado PhyWhisperer.
Com ele, fornecemos energia ao dispositivo e, em seguida, o desligamos. A falha só pode funcionar quando a energia é ligada, então se não funcionar, desligamos o dispositivo e o ligamos novamente. Precisamos derrotar a verificação de segurança exatamente no momento certo para convencer o chip de que temos acesso a ele. Com o Chip Whisperer, realizamos um ataque chamado fault injection ou voltage glitch: essencialmente, ele permite que o chip funcione incorretamente de uma forma que seja benéfica para nós. Os sistemas eletrônicos são projetados para operar dentro de uma certa faixa de parâmetros, e seu fornecedor garante a operação apenas dentro dessa área.
A questão é: podemos fornecer uma falha fora de seus limites e exatamente no momento certo, após o qual podemos continuar nosso ataque? Ao contornar a proteção corretamente, entraremos no chamado modo de depuração. Neste modo, o desenvolvedor real do dispositivo pode usar equipamentos externos para ler a memória e depurar o microcontrolador. No caso do Trezor, se derrotarmos a função de segurança, o modo de depuração será ativado, o que nos dará acesso apenas a uma área específica da memória - a RAM, que contém a passphrase e o PIN.
Além disso, precisamos modificar o dispositivo para que ele possa ser conectado ao restante do equipamento. Para começar, simplesmente conectei a carteira ao meu computador para garantir que ela estivesse executando a versão de firmware 1.6.0.
Ótimo!
Para modificar o dispositivo, abri a caixa com um bisturi, tomando cuidado para não danificar a placa de circuito e os componentes. Em seguida, usando produtos químicos, removi a camada de revestimento conforme que protege os componentes. Em seguida, precisei dessoldar um par de capacitores da placa e, em seguida, soldei os fios. Isso tornou o chip mais suscetível a pequenas falhas.
Agora conectamos o programador J-link Plus ao conector e também conectamos um osciloscópio ao sistema. Ligamos a energia e então tudo o que resta é sentar e esperar. Iniciamos o ataque de falha: o ciclo principal do programa executa repetidamente o ciclo de ligar e desligar, verificando se a interface de depuração foi aberta. Assim que funcionar, receberemos o ID do dispositivo e isso significará que ele está aberto para nós. Sugeri apostar em quanto tempo a falha funcionaria. Dan decidiu que levaria cerca de uma hora. Pareceu-me que provavelmente levaria de 3 a 4 horas. Talvez até seis horas: precisamos contornar uma faixa bastante ampla de cerca de dez mil tentativas e podemos testar apenas uma por segundo. Então não sabemos ao certo; Eu só esperava não ter que ficar acordado a noite toda. Ao mesmo tempo, eu estava fazendo outras coisas no computador, então adicionei a reprodução de áudio com a frase "Hack the planet" ao código do script.
Após 3 horas e 19 minutos, a falha funcionou. Restava entender se o conteúdo da RAM poderia ser extraído do dispositivo. Isso exigiu um programa externo. Após copiar com sucesso o conteúdo da memória, o PIN (que acabou sendo de cinco dígitos, não quatro, como os clientes pensavam) e a passphrase da carteira de criptomoedas apareceram na tela.
Em versões subsequentes do firmware, a Trezor corrigiu parcialmente o problema que usamos para hackear. As carteiras não copiam ou movem mais a chave e o PIN para a RAM. Agora eles são armazenados em memória flash segura, que não é afetada pelas atualizações de firmware.
No entanto, o problema fundamental com o chip STM32, graças ao qual a injeção de falha ainda pode existir, só pode ser resolvido pelo fabricante do chip, o que ele se recusa a fazer, ou substituindo o chip por um mais seguro. Os desenvolvedores da Trezor exploraram a segunda opção, mas descobriu-se que os fabricantes de chips mais seguros exigem a assinatura de um NDA, o que a empresa se recusa a fazer. A Trezor usa software de código aberto e, quando a equipe descobriu uma vulnerabilidade em um dos chips seguros, o fabricante citou o NDA, proibindo-a de falar sobre isso.
Sobre o autor
Joe Grand é um engenheiro eletricista e inventor que hackeia hardware desde os dez anos de idade. Ele era um membro do famoso coletivo de hackers L0pht sob o apelido de Kingpin. Em 1998, ele testemunhou no Senado dos EUA explicando uma vulnerabilidade que poderia ser usada para desativar a Internet ou monitorar o tráfego por agências de inteligência. Atualmente, ele treina hardware hacking para organizações e empresas que fabricam sistemas complexos e desejam saber como os hackers podem atacar seus produtos.
🛡️⚡
Pare de pesquisar. Comece a hackear.
O MundiX é seu copiloto de pentest com IA: comandos exatos, análise de outputs e próximo passo na kill chain — em segundos.
Sem cartão para começar · Planos a partir de R$49/mês
Imagine ter dois milhões de dólares armazenados em um chip de silício do tamanho de um selo postal, mas você esqueceu a senha. Existem muitos chips desse tipo. As hardware wallets (carteiras de hardware) são projetadas para proteger as seed phrases (frases de recuperação) no mundo das criptomoedas. No entanto, muitas pessoas esquecem suas senhas e, se isso acontecer, você não poderá acessar as informações no chip e perderá o dinheiro. Este artigo aborda esse problema.
Fui contatado por pessoas que eu não conhecia. Eles tinham uma hardware wallet Trezor com alguns milhões de dólares armazenados nela. Eles me perguntaram se eu poderia hackear a carteira e obter acesso às informações para que pudessem provar que o dinheiro era deles.
Meu nome é Joe Grand e sou um hardware hacker. Hackear um produto como este é um desafio incrível, como resolver um quebra-cabeça, e temos apenas uma chance de fazer tudo certo.
Hacking não é como mostrado nos filmes. Não há efeitos gráficos se movendo na tela, nada acontece em frações de segundo. É uma montanha-russa, resolvendo quebra-cabeças, forçando o hardware a fazer o que não espera. A primeira coisa que fizemos foi assinar um termo de responsabilidade caso algo desse errado. E então trabalhei doze semanas neste projeto, tentando quebrar a proteção de forma confiável, sem apagar o conteúdo do dispositivo.
Durante o processo, me comuniquei com o cliente e expliquei os riscos. Por exemplo, ele ia me enviar o dispositivo por avião e discutimos o perigo da inspeção por raios-X. A maioria dos eletrônicos sobrevive à exposição aos raios-X, não é uma radiação particularmente poderosa.
Fundamentos
Criptomoeda é um sistema de moeda digital descentralizado. Ao contrário dos sistemas financeiros tradicionais, onde a confiança na moeda é determinada por bancos e governos, a confiança na criptomoeda é baseada na força da criptografia usada em seus sistemas. O tipo de criptografia usado varia dependendo da criptomoeda, mas geralmente é criptografia de chave pública: um usuário tem duas partes de uma chave, uma das quais ele mantém consigo e usa para assinar uma transação como prova de que foi o usuário quem a iniciou. A chave pública, derivada da chave privada, é usada para verificar a transação.
O blockchain é a tecnologia usada em criptomoedas, essencialmente como um livro-razão digital descentralizado: cada vez que uma transação ocorre, ela se torna pública. Se meus clientes, Dan e Jesse, perderem sua chave privada armazenada em sua hardware wallet física, as alterações no livro-razão não poderão ser feitas. Uma hardware wallet é essencialmente um computador de uso geral que armazena a chave privada, mas se você esquecer a senha da carteira, estará em apuros... a menos que encontre alguém como eu.
O cliente Dan Reich diz: "Há alguns anos, um amigo e eu investimos dinheiro em criptomoedas. Uma dessas moedas, THETA, disparou e tínhamos mais de dois milhões de dólares. Um amigo anotou a senha em uma carteira, mas depois esqueceu o PIN. A ironia é que ele é um jogador de pôquer profissional e tem memória fotográfica.
Se você inserir o PIN de quatro dígitos da carteira Trezor incorretamente muitas vezes, seu conteúdo será apagado. Então procuramos por tudo, pesquisamos no Google e procuramos pessoas que pudessem nos ajudar até encontrarmos Joe e alguns caras da Suíça que trabalhavam em um laboratório secreto. Perguntei a eles se eu poderia ir até eles para ter certeza de que tudo era real. Eles se recusaram. Eu estava até disposto a deixar que eles colocassem um saco na minha cabeça enquanto me levavam para aquele laboratório. Enquanto isso, Joe estava fazendo algum progresso e mostrou que poderia hackear o dispositivo. Ao mesmo tempo, ele explicou em detalhes como faria esse trabalho. Quando ele conseguiu hackear três carteiras de teste seguidas, peguei um avião e voei para Portland, esperando finalmente salvar as moedas."
Após dezesseis tentativas incorretas de inserir o PIN, os dados da carteira são excluídos. Dan e Jesse já haviam gasto doze tentativas e não queriam mais arriscar. Na época, essas moedas valiam um total de US$ 12.000. Dan já havia desistido e tirado esse dinheiro da cabeça. Ele estava pronto para aceitar... mas então o valor da criptomoeda subiu novamente. No final de 2020, suas moedas valiam mais de US$ 400.000 e, por um breve momento, atingiram um preço de mais de três milhões.
Já houve muitas histórias de pessoas esquecendo as senhas de suas hardware wallets e perdendo dinheiro. Por exemplo, em 2017, meu amigo Mark Frauenfelder armazenou 7,4 Bitcoins, que na época valiam três mil dólares. Ele anotou a senha em um pedaço de papel que uma faxineira jogou fora. Ele achava que se lembrava do PIN, mas descobriu que também o havia esquecido.
Em outro caso, uma pessoa fez todos os esforços para recuperar US$ 280 milhões em Bitcoins. Ele tinha 7.500 Bitcoins e a chave privada estava armazenada em um disco rígido. Ele tinha dois discos rígidos idênticos e acidentalmente jogou o errado fora. Curiosamente, o disco rígido foi jogado em um aterro sanitário local, o que significa que ele precisava procurar uma agulha em um palheiro muito fedorento.
E estas são apenas duas das histórias mais conhecidas. Eu estava praticamente certo de que poderíamos hackear a carteira. Já existiam exploits para o dispositivo Trezor One, então quando Dan me perguntou se eu poderia hackeá-lo, eu disse que sim. Achei que poderia repetir algum do trabalho. Em 2017, um hacker britânico de quinze anos chamado Salim Rashid encontrou uma maneira de hackear a carteira de Mark, mencionada acima. Rashid descobriu que quando uma carteira Trezor é ligada, ela cria uma cópia do PIN e da chave armazenada na memória flash segura do dispositivo e coloca a cópia na RAM. A vulnerabilidade permitiu que ele colocasse a carteira no modo de atualização de firmware e instalasse seu próprio código não autorizado no dispositivo, que lia o PIN e a chave da RAM. Mas ao instalar este código, o PIN e a chave são removidos da memória flash de longo prazo, deixando apenas uma cópia na RAM. Esta foi uma técnica arriscada: se apagarmos acidentalmente a RAM antes de ler os dados, a chave não poderá ser recuperada.
De qualquer forma, a Trezor fez alterações em suas carteiras desde então: o PIN e a chave copiados para a RAM na inicialização são removidos da RAM quando o dispositivo é alternado para o modo de atualização de firmware.
O Hack
No final, isso se transformou em um processo de tentativa e erro de três meses, verificando várias técnicas até que eu finalmente consegui. Eu sabia que precisaria de uma chamada injeção de falha (fault injection) para realizar o ataque: essencialmente, era necessário causar um comportamento defeituoso no chip de silício para contornar a segurança. Como resultado, consegui contornar acidentalmente a proteção e recuperar informações de um chip de teste, mas não conseguia acreditar porque estava tentando fazer algo completamente diferente. Contei para minha esposa e acrescentei que não conseguia reproduzir o processo. Ela sugeriu anotar tudo o que eu estava fazendo durante o processo, mas eu não sabia o que havia feito.
Comecei a anotar tudo desde o início do dia, incluindo as chamadas do Zoom. Investiguei o histórico da linha de comando e todas as ações realizadas com o computador. Acontece que um dos dispositivos que eu estava conectando ao computador estava causando uma falha no Trezor que eu não conseguia recriar. Decidi que a manhã traria conselhos e, pela manhã, comecei a investigar o código-fonte do dispositivo, porque pensei que em algum momento a passphrase deveria se mover para uma área da RAM que pudesse ser acessada através da interface de depuração.
Foi graças à linha mostrada acima que pude realizar o ataque. Esta é a função memcpy da versão de firmware 1.6.0. Na versão 1.6.1, esta função foi removida e toda a estrutura de memória foi alterada. Acontece que descobri uma área do código-fonte onde informações secretas são copiadas para a RAM quando a energia é ligada; depois disso, posso executar minha falha para derrotar a proteção do chip e obter acesso ao conteúdo da RAM.
Para realizar este ataque, precisei de muitos equipamentos diferentes. O microcontrolador do dispositivo Trezor possui um recurso de segurança que nos impede de ler o conteúdo da memória. Portanto, precisamos encontrar uma maneira de contornar esse recurso. O mecanismo de proteção é acionado apenas quando o dispositivo é ligado, portanto, precisamos executar o ciclo de ligar e desligar repetidamente ao realizar o ataque. Para fazer isso, usei um dispositivo chamado PhyWhisperer.
Com ele, fornecemos energia ao dispositivo e, em seguida, o desligamos. A falha só pode funcionar quando a energia é ligada, então se não funcionar, desligamos o dispositivo e o ligamos novamente. Precisamos derrotar a verificação de segurança exatamente no momento certo para convencer o chip de que temos acesso a ele. Com o Chip Whisperer, realizamos um ataque chamado fault injection ou voltage glitch: essencialmente, ele permite que o chip funcione incorretamente de uma forma que seja benéfica para nós. Os sistemas eletrônicos são projetados para operar dentro de uma certa faixa de parâmetros, e seu fornecedor garante a operação apenas dentro dessa área.
A questão é: podemos fornecer uma falha fora de seus limites e exatamente no momento certo, após o qual podemos continuar nosso ataque? Ao contornar a proteção corretamente, entraremos no chamado modo de depuração. Neste modo, o desenvolvedor real do dispositivo pode usar equipamentos externos para ler a memória e depurar o microcontrolador. No caso do Trezor, se derrotarmos a função de segurança, o modo de depuração será ativado, o que nos dará acesso apenas a uma área específica da memória - a RAM, que contém a passphrase e o PIN.
Além disso, precisamos modificar o dispositivo para que ele possa ser conectado ao restante do equipamento. Para começar, simplesmente conectei a carteira ao meu computador para garantir que ela estivesse executando a versão de firmware 1.6.0.
Ótimo!
Para modificar o dispositivo, abri a caixa com um bisturi, tomando cuidado para não danificar a placa de circuito e os componentes. Em seguida, usando produtos químicos, removi a camada de revestimento conforme que protege os componentes. Em seguida, precisei dessoldar um par de capacitores da placa e, em seguida, soldei os fios. Isso tornou o chip mais suscetível a pequenas falhas.
Agora conectamos o programador J-link Plus ao conector e também conectamos um osciloscópio ao sistema. Ligamos a energia e então tudo o que resta é sentar e esperar. Iniciamos o ataque de falha: o ciclo principal do programa executa repetidamente o ciclo de ligar e desligar, verificando se a interface de depuração foi aberta. Assim que funcionar, receberemos o ID do dispositivo e isso significará que ele está aberto para nós. Sugeri apostar em quanto tempo a falha funcionaria. Dan decidiu que levaria cerca de uma hora. Pareceu-me que provavelmente levaria de 3 a 4 horas. Talvez até seis horas: precisamos contornar uma faixa bastante ampla de cerca de dez mil tentativas e podemos testar apenas uma por segundo. Então não sabemos ao certo; Eu só esperava não ter que ficar acordado a noite toda. Ao mesmo tempo, eu estava fazendo outras coisas no computador, então adicionei a reprodução de áudio com a frase "Hack the planet" ao código do script.
Após 3 horas e 19 minutos, a falha funcionou. Restava entender se o conteúdo da RAM poderia ser extraído do dispositivo. Isso exigiu um programa externo. Após copiar com sucesso o conteúdo da memória, o PIN (que acabou sendo de cinco dígitos, não quatro, como os clientes pensavam) e a passphrase da carteira de criptomoedas apareceram na tela.
Em versões subsequentes do firmware, a Trezor corrigiu parcialmente o problema que usamos para hackear. As carteiras não copiam ou movem mais a chave e o PIN para a RAM. Agora eles são armazenados em memória flash segura, que não é afetada pelas atualizações de firmware.
No entanto, o problema fundamental com o chip STM32, graças ao qual a injeção de falha ainda pode existir, só pode ser resolvido pelo fabricante do chip, o que ele se recusa a fazer, ou substituindo o chip por um mais seguro. Os desenvolvedores da Trezor exploraram a segunda opção, mas descobriu-se que os fabricantes de chips mais seguros exigem a assinatura de um NDA, o que a empresa se recusa a fazer. A Trezor usa software de código aberto e, quando a equipe descobriu uma vulnerabilidade em um dos chips seguros, o fabricante citou o NDA, proibindo-a de falar sobre isso.
Sobre o autor
Joe Grand é um engenheiro eletricista e inventor que hackeia hardware desde os dez anos de idade. Ele era um membro do famoso coletivo de hackers L0pht sob o apelido de Kingpin. Em 1998, ele testemunhou no Senado dos EUA explicando uma vulnerabilidade que poderia ser usada para desativar a Internet ou monitorar o tráfego por agências de inteligência. Atualmente, ele treina hardware hacking para organizações e empresas que fabricam sistemas complexos e desejam saber como os hackers podem atacar seus produtos.
📤 Compartilhar & Baixar
🧰 Ferramentas recomendadas
Divulgação: alguns links são patrocinados. Podemos receber comissão se você comprar — sem custo extra para você. Só indicamos o que faz sentido para a comunidade.