Falha de segurança em marketplace de NFTs coloca 2 milhões de usuários em risco; entenda

Na última quinta-feira (14), a Check Point Research (CPR) denunciou uma falha de segurança no marketplace de NFTs Rarible, rival da OpenSea. Na prática, essa vulnerabilidade permite que invasores assumam o controle total das carteiras digitais das vítimas que clicarem em um NFT malicioso. Assim, os criminosos podem aproveitar para roubar fundos.

A Rarible é uma plataforma que permite aos usuários criar, comprar e vender os famosos tokens não fungíveis, como fotografias, jogos e memes. A empresa registrou mais de US$ 273 milhões (aproximadamente R$ 1,2 bilhão) em volume de negócios em 2021 e mais de 2,1 milhões de usuários, o que facilmente a transforma em um dos maiores mercados de NFT do mundo, levando em conta que também suporta três blockchains com mais de 400 mil NFTs cunhadas.

Além disso, a Rarible oferece aos criadores de NFT um grande potencial de ganhos por meio de royalties, pois esses criadores podem ganhar até 50% em royalties sempre que alguém revender sua NFT. Tendo em mente as possíveis consequências dessa falha e segurança, a CPR imediatamente alertou a equipe da Rarible sobre esse risco, e a empresa colaborou com os pesquisadores, reconheceu a falha e agora se concentra em implantar uma correção.

Falha de segurança na plataforma Rarible

O NFT possui um padrão que fornece funcionalidade básica para rastreamento e transferência. Por sua vez, o padrão conta com uma função chamada setApprovalForAll. Conforme explicam os pesquisadores da Check Point Research, a função basicamente designa quem está autorizado a controlar todos os seus tokens, que são criados principalmente para terceiros — como Rarible, OpenSea, etc — para controlar em nome dos usuários.

A equipe da Check Point Research explica que essa função é muito perigosa, uma vez que pode permitir que qualquer pessoa controle suas NFTs se você for enganado para assiná-la. Nem sempre é claro para os usuários exatamente quais permissões são fornecidas ao autorizar uma transação. Na maioria das vezes, a vítima assume que se trata de transações regulares quando, na verdade, está permitindo total controle sobre suas próprias NFTs.

Os invasores usam esse tipo de transação geralmente em ataques de phishing (prática criminosa que consiste em enganar as pessoas para que compartilhem informações confidenciais como senhas e número de cartões de crédito), mas quando vem do próprio mercado NFT, os potenciais perigosos podem ser ainda maiores. 

No site, a CPR explica como foi feita essa descoberta: “Analisamos o marketplace de  NFT Rarible, que permite que qualquer pessoa crie e venda arte. Arte pode ser qualquer coisa que termine com as seguintes extensões: PNG, GIF, SVG, MP4, WEBM, MP3.  Verificamos o resultado da criação de arte maliciosa que contém código, por exemplo, uma imagem SVG. Criamos um arquivo SVG simples e o carregamos com um payload simples”, diz o comunicado.

A equipe percorreu todas as NFTs em busca dessa falha de segurança e conseguiu realizar a mudança setApprovalForAll para a carteira. Ao clicar no botão confirmar, teve acesso total a todas as NFTs  sob o contrato desejado, e então poderia transferir todos os NFTs para a conta usando a ação transferFrom no contrato.