Ataques ao setor DeFi: o novo desafio para auditores e usuários

Verificar o saldo da conta antes de fazer uma transferência bancária é algo regularmente feito, a menos que seja uma pequena quantia. No entanto, usuários ficariam surpresos em saber que a maioria dos ataques realizados até agora contra contratos inteligentes foram realizados aproveitando uma vulnerabilidade (conhecida como Ataque de Reentrada) que aproveita a não verificação do saldo de uma conta antes de fazer qualquer movimentação, seja transferência ou retirada, podendo fazer a transferência independentemente do saldo da conta.

Graças ao aumento das auditorias de contratos inteligentes, é possível que essa vulnerabilidade deixe de existir nos contratos em desenvolvimento no setor DeFi e, portanto, não seja mais explorada.

Neste ponto, os “criminosos” que tendem a se movimentar mais rápido do que os “mocinhos” decidiram virar o jogo realizando ataques que são, acima de tudo, legais (talvez não éticos) e que podem mudar o preço de um token e a arbitragem feita com ele, fazendo com que os usuários percam muito dinheiro e que o ativo perca seu prestígio.

A criação de flash loans, os dois lados da moeda

De julho de 2020 até agora, a evolução vista em apenas um ano do mercado cripto foi incrivelmente exponencial. O lançamento da Uniswap, marcou um antes e depois nesta indústria, assim como tudo o que veio a seguir. Poder trocar tokens baseados em Ethereum (ERC-20) em uma transação foi uma verdadeira revolução, embora agora pareça a coisa mais normal do mundo. Depois da Uniswap, plataformas como a SushiSwap, PancakeSwap e várias outras  “Swaps” apareceram.

A Uniswap permite criar pares e adicionar liquidez, tendo como ideia principal a de que o par seja sempre equilibrado, por isso quando o usuário fornece liquidez, por exemplo na MANA-ETH, a plataforma divide o valor colocado por dois, de modo que o par seja sempre balanceado e o preço de um token não possa ser influenciado.

Depois de transformar os “bancos” em pools de liquidez, chegou a vez dos empréstimos. Como em qualquer banco tradicional, para solicitar um empréstimo é necessário apresentar uma garantia. Desta forma, a liquidez pode ser retirada e a carteira terá a garantia de que o dinheiro será devolvido.

Como no mundo fora do universo cripto, nasceram os empréstimos não garantidos, conhecidos como empréstimos instantâneos (flash loans), que permitem tomar um determinado valor sem nenhuma garantia. Porém, neste caso, a diferença é que as comissões não são abusivas. O interessante desses empréstimos é que toda a operação é realizada em uma única transação, portanto a transação não é fechada até que o valor solicitado seja devolvido.

Esta foi uma grande mudança no mundo das finanças descentralizadas. Ser capaz de ter liquidez sem fornecer garantia é a ferramenta mais usada pelos usuários para desequilibrar pools de liquidez ou influenciar a governança, etc. O problema com isso é que essas ações não podem ser controladas em uma auditoria regular … pelo menos até agora.

blockchain

Diante de novos problemas, surgem novas soluções

Cada vez mais empresas estão solicitando testes financeiros para seus Smart Contracts e isso está começando a se tornar uma dor de cabeça para os auditores. Como realizar uma auditoria financeira de um aplicativo que usa contratos inteligentes? É uma questão para a qual muitos auditores estão desenvolvendo uma resposta e fazendo sua própria abordagem.

A primeira coisa a se perguntar é: de onde vem o dinheiro? Vem de flash loans. Portanto, a primeira coisa seria controlar os usuários que adquirem um empréstimo instantâneo, porque pode ser feito tanto para realizar arbitragem (algo que é permitido e que não influencia o preço de nenhum ativo) ou para tomar medidas contra pools de liquidez e assim por diante, influenciando o valor do ativo em um par. A questão é que a transação não é fechada até que o empréstimo seja reembolsado, portanto, a rastreabilidade é complicada de fazer.

defi

Talvez a solução seja detectar os blocos com mais comissões de taxas e aí capturar os endereços, porque certamente há um empréstimo envolvido. Quando a liquidez é fornecida a uma pool, as próprias plataformas a forçam a dividi-la em dois para não desequilibrar o par. A forma de influenciar o valor de um ativo em relação a outro é trocando uma grande quantidade de ativos na referida pool e, assim, deixando esse ativo quase ilíquido. É o que se chama de pool zumbi (zombie pool).

Portanto, as medidas mais eficazes serão aquelas fornecidas ao depositar e retirar liquidez na pool ou nas exchanges. Até agora as plataformas alertam sobre o impacto que isso pode causar, mas não impedem. E se considerarmos que os mineradores não pagam comissões, a tarefa fica ainda mais complicada.

Demanda por auditorias DeFi irá aumentar

Obviamente, o mundo das finanças descentralizadas vive um momento muito importante e não há garantia que os ataques vistos atualmente aconteçam no futuro. No entanto, o setor já está passando por uma adaptação de ataques de código para ataques de implementação.

Ataques estão sendo mais econômicos do hacks em si, e os invasores estão se adaptando. E os auditores não têm escolha a não ser fazer o mesmo. Portanto, até que haja uma regulamentação correta, auditar a parte financeira das plataformas vai ser um dos serviços mais demandados nesta década no setor DeFi.

O artigo Ataques ao setor DeFi: o novo desafio para auditores e usuários foi visto pela primeira vez em BeInCrypto.

Você pode gostar...