Falha crítica na Coinomi – Erro com verificador ortográfico pode ter sido usado em roubo

Falha crítica na Coinomi – Erro com verificador ortográfico pode ter sido usado em roubo

By Melissa Eggersman - min. de leitura
Atualizado 10 junho 2021

Infelizmente o criptomercado é “assombrado” por diversas notícias negativas que acabam atrapalhando a adoção ou a confiança do público no mercado. Existem diversos casos em que altos valores são roubados de usuários e isso afasta novos investidores, principalmente com a falta de regulamentação.

De acordo com um investidor em criptomoedas chamado Warith Al Mawali, ele foi uma das mais novas vítimas de roubos de criptos, porém, o seu caso é bastante interessante, já que ele descobriu uma falha crítica na carteira Coinomi. Ao todo Warith perdeu mais de $60 mil em criptomoedas por causa de um erro “muito bem planejado” ou “completamente idiota”.

Em um relatório detalhado e extenso feito inicialmente no Reddit, Mawali disse que encontrou uma vulnerabilidade na carteira Coinomi após ter perdido todas as suas economias. Segundo ele, a carteira (que é bem popular nos dispositivos Android) tem uma falha que envia as frases de seed dos usuários para um corretor ortográfico em uma API do Google. A frase é enviada sem nenhuma criptografia e quem conseguir acesso aos servidores pode usá-las para movimentar valores, como aconteceu com Mawali.

No comunicado, Mawali disse:

“A minha frase de seed foi comprometida e $60k-$70k em criptomoedas foram roubadas por causa da Coinomi e como ela gerenciou minha chave privada. Eu estou revelando esse problema para o público porque a Coinomi se recusou a assumir a responsabilidade e todas as minhas tentativas de comunicação pelos canais privados falharam.”

A vulnerabilidade que supostamente foi usada para roubar as criptos de Mawali é uma função automática da Coinomi que, por algum motivo, passa a frase de acesso por um verificador de ortografia. A carteira envia a frase através de tráfego HTTP/HTTPS para o googleapis.com.

“Essencialmente a caixa de texto onde você coloca a chave privada é, basicamente, um arquivo HTML executado por um componente Chromium, e uma vez que você escreve ou cola algo na caixa, ele é imediatamente enviado para o googleapis.com para verificar a ortografia.” Mawali explicou em sua análise detalhada.

O que Mawali ainda não sabe é se o erro foi colocado lá propositalmente, para que algum agente que tenha acesso aos servidores do Google possa roubar criptomoedas ou se a empresa foi simplesmente “estúpida” em deixar algo tão simples em seu software.

A Segurança da Coinoimi

Mawali não está nada contente com o acontecido, como é de se imaginar. Ele fez um relato também em um domínio próprio chamado Avoid-Coinomi, lá, ele revela que estranhou a posição da companhia desde que ele descobriu um erro de assinatura.

Segundo ele, o instalador tinha uma assinatura digital, mas o produto já instalado não. Ao entrar em contato com a empresa através do Twitter, a Coinomi disse que iria corrigir o erro e simplesmente fez o upload de uma nova versão com a assinatura. A parte estranha é que depois a empresa apagou todos os tuítes que comprovavam esse erro descoberto pelo investidor.

Anteriormente, Mawali usava a carteira Exodus, mas quis trocar por uma aplicação com opções de diversas moedas, por praticidade. Ele optou pela Coinomi porque estava listada em diversos guias como uma opção segura, além de permitir que ele usasse a mesma chave privada que tinha na carteira Exodus

Porém ao instalar a carteira ele notou o erro de assinatura, e alguns dias depois, notou que suas criptomoedas começaram a ser movimentadas sem sua autorização. No dia 22 de fevereiro, 90% das criptos que ele tinha na carteira Exodus foram transferidas para diversos endereços, as primeiras transações foram feitas em BTC, depois em ETH e Tokens ERC20, LTC e por último BCH.

Ao perder todo esse valor, o investidor começou a voltar atrás passo-a-passo para saber onde ele tinha errado. Foi então que ele descobriu a suposta falha usando o Fiddler, um programa que monitora todo o tráfego HTTP/HTTPS de programas em execução.

Mawali gravou um vídeo de um dos testes para mostrar como o procedimento funciona: https://avoid-coinomi.com/files/coinomi_http_traffic_video.mp4

O curioso é que, mesmo com um erro tão bobo, não é qualquer pessoa que tem acesso aos dados enviados diretamente para servidores do Google. Por isso, ele acredita que o agente malicioso por trás do roubo ou é funcionário do Google ou alguém da Coinomi infiltrado com acesso aos servidores.

Apesar de ser uma ideia até conspiratória, Mawali diz no reddit que:

“Eu não ficaria surpreso se eles fizeram isso intencionalmente. Especialmente depois que você lê notícias sobre um fundador de uma exchange que morreu de forma suspeita e que agora ninguém consegue ter acesso aos ativos guardados pela empresa”. Uma clara referência ao caso QuadrigaCX.

Parte do problema da Coinomi está no fato de que ela deixou de ter o seu código aberto em 2018 e agora nenhum desenvolvedor tem acesso às informações do código base. Sendo assim, erros como esse não podem ser descobertos pelos usuários a não ser que algo grave aconteça.

Alguns usuários do Reddit recomendam que a melhor opção é utilizar carteiras confiáveis, mas sempre de código aberto. A transparência no código base é fundamental para a auditoria de segurança dessas aplicações.

O problema relatado por Mawali aconteceu com mais dois outros usuários do Reddit. Eles relataram a história Aqui e Aqui!

Resposta da empresa

O que deixou o investidor indignado não foi o erro em si, mas a resposta da empresa. Segundo mensagens trocadas entre ele o CTO da Coinomi, a empresa em nenhum momento admitiu a culpa ou responsabilidade e demonstrava o tempo todo estar apenas preocupada com a sua reputação diante do público.

O motivo de Mawali ter lançado o caso ao público era porque ele não estava conseguindo com que a Coinomi tomasse uma posição sobre o seu problema.

Philipp Seifert, do imToken, empresa que opera uma das maiores carteiras de Ethereum do mercado global, criticou a maneira que a Coinomi lidou com a situação.

“O pior sobre o caso da Coinomi não é a vulnerabilidade, mas que eles aparentemente não reagiram ao montante de BTC roubado de um usuário, caso a história seja verdade.”

Durante a tarde do dia 27, a Coinomi respondeu às acusações. Segundo a empresa, o problema realmente aconteceu, mas apenas nas versões de Desktop da wallet. Ainda assim, a Coinomi disse que é impossível que alguém tenha roubado os valores de Mawali ou de qualquer outro usuário.

Segundo eles:

  • As private keys não foram transmitidas em texto simples, elas foram enviadas encapsuladas em solicitações de HTTPS, com o Google sendo o único destinatário.
  • A frase de seed não foi transmitida a não ser que o usuário escolhesse a opção de restaurar suas carteiras desktop.
  • Os pedidos de verificação ortográfica enviados para o API do Google não foram processados ou armazenados, tudo o que acontecia era que eles retornavam um erro (código:400) por serem marcados como “Bad Request”.

Segundo a Coinomi, Mawali se recusou a divulgar o bug para a empresa de forma privada a menos que fosse pago um “resgate de 17 BTC”, implicando que o investidor tinha má-intenções dede o início.

A empresa ainda diz que é possível que todo o valor roubado da carteira do usuário pode estar ainda sob seu controle.

Leia a resposta da empresa na íntegra!

Veja também: Polícia fecha suposto escritório da Unick Forex!