Saleem Rashid, um jovem de 15 anos do Reino Unido, demonstrou ontem uma falha de segurança nas carteiras físicas de criptomoedas da empresa Ledger. Os dispositivos, de acordo com a empresa, seriam “à prova de hackers”, tanto que eles eram vendidos sem nenhum tipo de selo no pacote porque, segundo a empresa, mesmo que a embalagem fosse violada, os invasores não conseguiriam comprometer o aparelho.

Mas, como Rashid demonstrou, não era o caso. Usando um código malicioso com apenas 300 bytes de tamanho, o adolescente conseguiu criar um “backdoor” no Ledger Nano S, uma das carteiras de criptomoedas da empresa, que é vendida por US$ 100 e, segundo o Ars Technica, já foi comprada por milhões de pessoas.

Rashid ainda considera que o mesmo tipo de ataque pode ser aplicado à carteira Ledger Blue, da mesma empresa, que é vendida como a versão “premium” do dispositivo por US$ 200. O jovem britânico notificou a empresa de sua descoberta duas semanas atrás, e a empresa já soltou uma atualização para resolver o problema. Mas Rashid diz que a atualização não é suficiente, já que trata-se de um problema de segurança com o hardware do dispositivo, e que uma sutil modificação no código pode reviver o problema.

Camareira malvada

O ataque que Rashid demonstrou contra os dispositivos da Ledger é conhecido com um tipo de ataque de “Evil Maid”, ou “camareira malvada”. Esse nome vem do fato de que mesmo uma pessoa com acesso muito restrito ao dispositivo – como uma camareira que estiver limpando um quarto de hotel – pode infectá-lo para seu próprio benefício sem que o dono se dê conta.

A criação de Rashid funciona da seguinte forma: a carteira usa dois microcontroladores para garantir sua segurança. Um deles fornece a autorização criptografica para o aparelho funcionar, mas não se conecta aos demais sistemas. O outro, por sua vez, é o que faz o dispositivo funcionar. O que o jovem conseguiu fazer foi substituir o sistema do segundo microcontrolador por uma versão adulterada e, ao mesmo tempo, fazer com que esse microcontrolador seja capaz de fornecer a autorização criptográfica ao primeiro.

Nesse ataque, Rashid pode adulterar o sistema do dispositivo para cometer uma série de roubos sem que o dono do aparelho saiba. Ele pode, por exemplo, fazer com que todos os pagamentos feitos por meio da carteira sejam multiplicados por 100 e desviados para o atacante, por exemplo. Ou pode ainda fazer com que a cada pagamento feito pelo dono da carteira, outro pagamento de mesmo valor seja feito também ao atacante.

Em geral, as empresas que produzem aparelhos físicos consideram que ataques nos quais o atacante precisa ter acesso físico ao dispositivo não são válidos, já que seria uma “pisada na bola” da parte do usuário permitir o acesso ao seu aparelho. No entanto, como o dispositivo da Ledger tem justamente o objetivo de proteger contra esse tipo de acesso indevido,