Ledger carteiras de hardware criptomoeda foram encontrados para ser vulnerável, um pesquisador de segurança adolescente revelou em um post de blog. A 15-year-old Saleem Rashid descobriu o bug que os atacantes autorizados a fabricar geração de semente do dispositivo, e desta forma colher quaisquer fundos armazenados em endereços produzidos a partir desta semente. “A vulnerabilidade surgiu devido ao uso do Ledger de uma arquitetura personalizada para contornar muitas das limitações de seu elemento seguro”, Rashid explicou.
Como esta vulnerabilidade pode ser explorada?
Um invasor pode aproveitar a falha para comprometer o dispositivo antes que o usuário o receba, disse o jovem pesquisador. Um invasor também pode roubar chaves privadas do dispositivo fisicamente ou mesmo remotamente.
É possível o acesso físico antes da configuração da semente. Isso é conhecido como ataque à cadeia de suprimentos. Esse tipo de ataque normalmente não precisa de malware instalado inicialmente no sistema de destino. Também não precisa que o usuário confirme nenhuma transação. O pesquisador conseguiu demonstrar esse ataque em um Ledger Nano S real. Ele também foi mais longe – enviou o código-fonte para o Ledger para que a empresa pudesse reproduzi-lo.
Mais especificamente, um ataque à cadeia de suprimentos é quando um agente mal-intencionado instala um firmware malicioso em um dispositivo Ledger e o vende em um mercado de terceiros como Amazon ou eBay. E este não é um cenário improvável, como usuários geralmente, mas dispositivos de varejistas de terceiros. Por que os usuários estão dispostos a correr esse risco - os fabricantes de carteiras de hardware geralmente não conseguem produzir dispositivos suficientes para acompanhar a crescente demanda e ficar sem estoque.
A vulnerabilidade também concede acesso físico após a configuração. Esse tipo de comprometimento permite que o invasor extraia o PIN, semente de recuperação e quaisquer senhas BIP-39 usadas. A única condição é que o dispositivo tenha sido usado uma vez antes do ataque real.
Esse tipo de ataque também não precisa de malware pré-instalado na máquina, e não exige que o usuário confirme nenhuma transação. A única coisa que é necessária é que o invasor instale um firmware MCU personalizado para exfiltrar as chaves privadas sem o conhecimento do usuário.
E finalmente, a vulnerabilidade pode ser aproveitada em um ataque de malware que pode ser realizado com a ajuda de técnicas de engenharia social. Neste cenário, o usuário teria que atualizar o firmware do MCU em uma máquina infectada. Como isso pode acontecer? Exibindo uma mensagem de erro que solicita ao usuário que reconecte o dispositivo com o botão esquerdo pressionado (para entrar no bootloader do MCU). Então o malware pode atualizar o MCU com código malicioso, permitindo que o malware assuma o controle da exibição confiável e dos botões de confirmação no dispositivo, explica a pesquisadora.
Esse tipo de ataque pode ser bastante “frutífero” se for implantado quando um atualização de firmware legítima é lançada.
Como Ledger respondeu?
Os executivos da Ledger parecem ter discutido com Rashid nas mídias sociais após o lançamento da atualização do firmware. O CEO da Ledger, Éric Larchevêque, chegou a dizer que o jovem pesquisador exagerou na gravidade da falha, alegando que:
A vulnerabilidade relatada por Saleem requer acesso físico ao dispositivo ANTES da configuração da semente, instalando uma versão personalizada do firmware do MCU, instalar um malware no computador do alvo e fazer com que ele confirme uma transação muito específica.
Aqui está a resposta de Rashid a isso:
Estou intrigado sobre de onde essa afirmação poderia ter se originado. De contato posterior com Ledger, Fui informado de que o CEO não havia sido informado sobre a vulnerabilidade de segurança quando fez esses comentários no Reddit. [...] existem três métodos para explorar esta vulnerabilidade, nenhum dos quais requer condições tão improváveis quanto aquelas.