Tecnologia

Golpe cibernético causa perda de US$ 3 milhões em NFTs

O mercado de NFTs (non-fungible token, ou token não-fungível, em português) sofreu um golpe no último sábado, dia 19 de fevereiro. Cibercriminosos roubaram centenas de NFTs de usuários do OpenSea, o maior marketplace de NFTs do mundo, causando pânico em sua vasta base de usuários. Uma planilha compilada pelo serviço de segurança blockchain PeckShield registrou 254 tokens roubados ao longo do ataque, incluindo tokens Decentraland e Bored Ape Yacht Club. O ataque resultou em uma perda financeira de, ao menos, US$ 3 milhões.

LEIA MAIS: O que é o NFT e para que serve

A Check Point Research (CPR), divisão de Inteligência em Ameaças da Check Point Software Technologies, uma fornecedora de soluções de cibersegurança global, analisou um artigo que o OpenSea publicou há alguns dias sobre seu planejamento de migração de contratos. Esse procedimento teria dado uma oportunidade dos cibercriminosos se aproveitarem de usuários desatentos para aplicar um golpe e roubar NFTs. 

A ideia por trás dessa migração de contratos do OpenSea é abordar as listagens inativas existentes de NFTs antigos e, para isso, eles planejam atualizar para um novo contrato. Todos os usuários serão obrigados a “migrar” suas listagens no Ethereum para o novo contrato inteligente. A equipe do OpenSea deixou as instruções públicas, para ampliar a transparência.  

No entanto, a situação permitiu que cibercriminosos aproveitassem o processo de atualização e conseguissem enganar os usuários da plataforma. Eles enviaram um e-mail se passando como a OpenSea para atrair as vítimas (como no exemplo ao lado). Ao clicar no link, os usuários eram direcionados a um site de phishing que solicitava a eles para assinarem uma transação que se parecia com a transação do blog do OpenSea.

Como aconteceu o ataque

Ao assinar a transação, uma solicitação atomicMatch_ seria enviada ao contrato do atacante, o qual ele criou um mês antes do ataque. A partir daí, o atomicMatch_ seria encaminhado para o contrato OpenSea. O atomicMath no OpenSea é responsável por todas as suas transações de confiança zero (Zero Trust). Atomic significa que a transação só ocorrerá se todos os parâmetros da transação forem atendidos. E é assim que todos os NFTs se movimentam nas contas do OpenSea. 

Por isso, o cibercriminoso decidiu usar o atomicMatch para dar o golpe, pois esse tipo de solicitação é capaz de roubar todos os NFTs em uma única transação. 

A Check Point explica que o fluxo do ataque é o seguinte: 

  1. A vítima clica em um link malicioso do e-mail de phishing.
  2. O link abre um site de phishing e solicita que a vítima assine uma transação.
  3. Ao assinar a transação, uma solicitação atomicMatch_ seria enviada para o contrato do atacante.
  4. O atacante encaminha a solicitação para atomicMath do contrato da OpenSea.
  5. O contrato OpenSea verifica todos os parâmetros do negócio e executa a transação, pois tudo é assinado pela vítima e aprovado.
  6. O contrato OpenSea se comunica com os contratos NFT e transfere o NFT da vítima para o atacante de acordo com os parâmetros atomicMatch.

A partir das transações na conta do atacante, a Check Point Research pôde ver que a carteira tem mais de US$ 3 milhões em Ethereum com a venda de alguns dos NFTs roubados. 

Como manter a segurança

Para manter a segurança na transação de NFTs, a Check Point recomenda: 

  • Muitos sites e projetos solicitam acesso permanente aos NFTs enviando uma transação para o usuário assinar. Essa transação dará aos sites/projetos acesso ao seu NFT a qualquer momento, a menos que o usuário cancele a transação via link (como este aqui).
  • Assinar uma transação é semelhante a dar permissão a alguém para acessar todos os seus NFTs e criptomoedas. É por isso que assinar é muito perigoso. O usuário deve prestar atenção extra sobre onde e quando ele assina uma transação.
  • Os e-mails de phishing podem ser complicados. Não é recomendado que se clique em links de e-mails, não importa quem seja o remetente; o usuário deverá sempre procurar pelas mesmas informações no site do provedor.