Imagine que é 2013. Você compra 43,6 Bitcoin, então avaliados em 5.300 dólares, que com o passar dos anos se transformam em três milhões de dólares. Com a intenção de proteger o investimento, você decide guardar a chave da sua carteira digital em um gerenciador de senhas como um arquivo criptografado. No entanto, esse arquivo se corrompe, e você não consegue acessar sua fortuna.
Isso foi exatamente o que aconteceu com Michael, o dono de uma criptomoeda, segundo a revista Wired. Para tentar recuperar seu dinheiro, ele decidiu entrar em contato com um hacker especializado em hardware chamado Joe Grand, que já tinha obtido sucesso em outros casos de recuperação de carteiras criptográficas.
A criação da senha
Vamos destrinchar o caso. Para começar, Michael gerou uma senha de 20 caracteres usando o gerenciador RoboForm, que foi armazenada como um arquivo criptografado na ferramenta TrueCrypt para proteger suas criptomoedas, atualmente avaliadas em cerca de 17 milhões de reais.
O fato de ter guardado a chave dessa maneira se mostrou um desafio para Joe Grand, que era especializado principalmente em hackear hardware, ou seja, equipamentos físicos, como demonstrado em 2022 ao hackear uma carteira Trezor.
Como a chave de Michael estava armazenada em uma carteira baseada em software, Grand propôs várias soluções. Ele considerou usar um script para forçar a senha automaticamente, mas logo descartou essa opção. Também investigou possíveis falhas no gerenciador de senhas RoboForm, mas abandonou essa ideia após não encontrar vulnerabilidades óbvias.
Apesar de várias pessoas terem dito a Michael que era praticamente impossível recuperar a chave e, consequentemente, o dinheiro, Joe Grand aceitou o desafio. Junto com um amigo na Alemanha, ele começou a trabalhar em uma solução.
O desafio
Ambos realizaram engenharia reversa por meses em uma versão do gerenciador de senhas que acreditavam ter sido usada por Michael em 2013. Descobriram que o sistema criava números pseudo aleatórios para as senhas e que, até 2015, havia um erro que fazia com que esse processo não fosse completamente aleatório.
O programa vinculava as senhas com a data e a hora do computador do usuário, o que resultava em senhas previsíveis. Em outras palavras, se esses dados fossem conhecidos, havia uma grande chance de calcular qualquer chave gerada no passado.
Usando esses princípios no caso de Michael, eles perguntaram se ele se lembrava do dia ou do período em que havia criado a senha, além de tentar descobrir se ele havia utilizado números, letras maiúsculas, minúsculas ou caracteres especiais, para reduzir as possibilidades a um intervalo gerenciável.
Eles também decidiram manipular os dados do sistema, fazendo o RoboForm acreditar que era 2013, para replicar o erro que existia naquela época. No entanto, havia um problema crucial: Michael não se lembrava exatamente de quando havia criado a senha.
Os parâmetros corretos
Apesar das dificuldades, eles continuaram. Ao analisar o registro da carteira de Michael, descobriram que ele havia feito seu primeiro movimento de bitcoin em 14 de abril de 2013. Com essa informação, decidiram configurar o sistema para gerar novas senhas entre 1º de março e 20 de abril de 2013.
Quando isso não funcionou, ampliaram o período para 20 de abril a 1º de junho, mas também sem sucesso. No entanto, fizeram uma descoberta crucial: Michael encontrou duas senhas criadas com RoboForm também em 2013, que não continham caracteres especiais.
Com essas informações, eles ajustaram os parâmetros e, finalmente, encontraram a senha correta. Ela não tinha caracteres especiais e havia sido criada em 15 de maio de 2013, às 4:10:40 da tarde, no horário GMT.
Uma vulnerabilidade "corrigida"
Conforme explicam Grand e Bruno em um vídeo no YouTube, embora o RoboForm tenha afirmado que corrigiu o erro, eles não estavam convencidos. Isso porque, em nenhum momento, houve uma comunicação oficial informando que a falha havia sido corrigida, nem os clientes foram alertados para trocar suas senhas por questões de segurança.
Resumindo, dependendo do tipo de solução implementada em 2015, quando a versão corrigida do programa foi lançada, as senhas mais recentes ainda podem ser vulneráveis.
Para os hackers, mesmo que o erro ainda exista, não é algo que os preocupe. Depois de receberem seu percentual das moedas da conta de Michael como pagamento pelo trabalho, eles forneceram a senha para que ele pudesse acessar o restante, quando cada criptomoeda valia 38.000 dólares.
Mais tarde, Michael esperou até que o valor de uma coin subisse para 62.000 dólares para vender uma parte. Atualmente, ele tem apenas 30 BTC, avaliados em 53.260 dólares cada, ou quase 9 milhões de reais no total, e está esperando que o valor da criptomoeda alcance 100.000 dólares para ser vendido novamente.
Ver 0 Comentários