Atualmente, o mercado de blockchain como um todo está em sua infância, e o mercado de finanças descentralizadas (DeFi) é sua parte mais promissora. De acordo com dados da DefiLlama, em 2021, o mercado DeFi tinha cerca de US$ 200 bilhões de liquidez bloqueados em contratos inteligentes. Se encararmos esse capital como um investimento inicial, esse mercado parece um empreendimento altamente promissor. Não são muitas as empresas globais que podem se gabar de tal capitalização. Mas qualquer mercado jovem tem seus problemas iniciais. Com o DeFi, o principal problema é a falta de desenvolvedores qualificados de blockchain.

06b66973 e9ea 409f b7df 06a6c9c66c24

Esta indústria é muito jovem e tem uma base de usuários relativamente pequena. A maioria das pessoas já ouviu falar sobre DeFi sem ter ideia do que é. Mas, como acontece com todo novo empreendimento promissor, rapidamente cria muito interesse especulativo. Infelizmente, preparar o pessoal leva muito mais tempo, especialmente quando se trata de esferas de conhecimento intenso como blockchain e desenvolvimento de contratos inteligentes. Isso significa que algumas equipes de projeto terão que se comprometer e contratar pessoal menos experiente.

Esse problema inevitavelmente cria um risco crescente de brechas de segurança no código desses projetos. E então temos que lidar com suas consequências na perda de capital do usuário. Para apenas uma breve compreensão de quão grande é esse problema, posso dizer que cerca de 10% da liquidez total bloqueada do DeFi foi roubada por hackers. Não deveria surpreender ninguém que o grande público prefira ficar longe de um sistema financeiro que representa tantos perigos para seus fundos.

Relacionado: Como os protocolos DeFi são hackeados?

Como as explorações DeFi mudaram recentemente?

Os ataques ao DeFi há muito se concentram em ataques de reentrada. Podemos relembrar o famoso O hack DAO de 2016 que resultou na perda de US$ 150 milhões em capital de investidores e levou ao hard fork do Ethereum. Desde então, essa vulnerabilidade foi explorada muitas vezes em diferentes contratos inteligentes.

02caf5b9 8a09 421b 8609 15f03f853163

A função de retorno de chamada é utilizada ativamente por protocolos de empréstimo: permite que contratos inteligentes verifiquem o saldo de garantias dos usuários antes de conceder um empréstimo. Todo esse processo acontece em uma transação, o que deu aos hackers uma solução alternativa para roubar dinheiro desses contratos inteligentes. Quando você envia uma solicitação de empréstimo de fundos, a função de retorno de chamada verifica primeiro o saldo da garantia, depois concede o empréstimo se a garantia for suficiente e, em seguida, altera o saldo da garantia do usuário dentro do contrato inteligente.

Para enganar o contrato inteligente, os hackers retornam a chamada para a função de retorno de chamada para iniciar esse processo desde o início. Como a transação não foi finalizada no blockchain, a função concede outro empréstimo pelo mesmo saldo de garantia. Embora a solução para esse problema já esteja em cena há tempo suficiente, muitos projetos ainda são vítimas dela.

Às vezes, equipes de projeto com pouca habilidade em escrever contratos inteligentes decidem emprestar a base de código de outro projeto DeFi de código aberto para implantar seu próprio contrato inteligente. Eles normalmente fazem isso com projetos respeitáveis ​​que foram auditados e têm grandes bases de usuários e provaram ser construídos com segurança. Mas eles podem decidir fazer pequenas modificações no código emprestado para adicionar funcionalidades que desejam ter em seu contrato inteligente, sem sequer alterar o código original. Isso pode prejudicar a lógica do contrato inteligente, que os desenvolvedores muitas vezes não percebem.

Foi isso que permitiu que hackers roubassem cerca de US$ 19 milhões do Cream Finance em agosto de 2021. A equipe do Cream Finance emprestou o código de um protocolo DeFi diferente e adicionou um token de retorno de chamada em seu contrato inteligente. Mesmo que você possa evitar ataques de reentrada implementando o padrão “verificações, efeitos, interações” que prioriza a mudança de saldo sobre a emissão de fundos, algumas equipes ainda não protegem suas plataformas dessas explorações.

Ataques de empréstimos em flash permitem que hackers roubem fundos de forma diferente e vêm se tornando cada vez mais populares desde o boom DeFi de 2020. A ideia principal dos ataques de empréstimos em flash é que você não precisa ter garantias para emprestar fundos de um protocolo porque a paridade financeira ainda é garantida pelo fato de que o empréstimo é tomado e devolvido em uma única transação. E isso não acontecerá se você não devolver o empréstimo com juros em uma transação. Mas os invasores conseguiram realizar ataques de empréstimo em flash bem-sucedidos em muitos protocolos.

Relacionado: Necessário: Um projeto de educação massivo para combater hacks e golpes

Ao fazê-los, eles usam vários protocolos para emprestar e arrastar a liquidez até o ato final, onde amplificam o preço de um token por meio de oráculos ou pools de liquidez e o usam para enganar um pump-and-dump e desaparecer com liquidez em uma matriz de algumas das principais criptomoedas, como Ether (ETH), Wrapped Bitcoin (wBTC) e outras. Alguns ataques famosos de empréstimos em flash incluem o ataque Pancake Bunny, onde o protocolo perdeu US$ 200 milhões, e outro ataque Cream Finance, no qual mais de US$ 100 milhões foram roubados.

Como se defender contra exploits DeFi?

Para construir um protocolo DeFi seguro, idealmente, você deve confiar apenas em desenvolvedores experientes de blockchain. Eles devem ter um líder de equipe profissional com habilidade na construção de aplicativos descentralizados. Também é aconselhável lembrar de usar bibliotecas de código seguras para desenvolvimento. Às vezes, as bibliotecas menos atualizadas podem ser a opção mais segura do que aquelas com as bases de código mais recentes.

O teste é outra coisa crucial que todos os projetos sérios de DeFi devem fazer. Como CEO de uma empresa de auditoria de contratos inteligentes, sempre tento cobrir 100% do código de nossos clientes e ressalto a importância da proteção descentralizada das chaves privadas usadas para chamar funções de contratos inteligentes com acesso restrito. É melhor usar a descentralização da chave pública por meio de uma assinatura múltipla que impede que uma entidade tenha controle total sobre o contrato.

No final, a educação é uma das chaves que permitirá que os sistemas financeiros baseados em blockchain se tornem mais seguros e confiáveis. E a educação deve ser uma das principais preocupações de quem procura emprego na DeFi porque pode oferecer recompensas de dar água na boca a todos que puderem dar uma contribuição viável.