WEB3DEV

Cover image for Introdução aos Ataques de Empréstimos Relâmpago: Aprenda Sobre os Tipos de Ataques, sua Execução e Medidas de Prevenção
Paulo Gio
Paulo Gio

Posted on

Introdução aos Ataques de Empréstimos Relâmpago: Aprenda Sobre os Tipos de Ataques, sua Execução e Medidas de Prevenção

https://miro.medium.com/v2/resize:fit:1100/0*C4DQC2NT-14JXnsu

O que é um Empréstimo Relâmpago?

Um empréstimo relâmpago é um tipo único de empréstimo sem garantia e de curto prazo disponível no espaço das finanças descentralizadas (DeFi). Ao contrário dos empréstimos tradicionais que exigem garantias, os empréstimos relâmpago permitem que os usuários peguem emprestado criptomoedas sem fornecer garantias de antemão. Esses empréstimos são executados por meio de contratos inteligentes e são acessíveis por uma duração bem curta, geralmente dentro de um único bloco de transação.

Se você é novo em empréstimos relâmpago: aprenda como executar um Empréstimo Relâmpago aqui.

Como funcionam os Ataques de Empréstimo Relâmpago?

Os ataques de empréstimo relâmpago exploram as características únicas dos empréstimos relâmpago para manipular mercados, explorar vulnerabilidades em contratos inteligentes DeFi ou realizar roubos de fundos de protocolos. Esses ataques normalmente envolvem os seguintes passos:

  • Tomando um Empréstimo: O atacante inicia um empréstimo relâmpago em uma plataforma DeFi, pegando emprestado uma quantidade significativa de criptomoeda sem fornecer qualquer garantia antecipadamente. O empréstimo é obtido e liquidado dentro do mesmo bloco de transação.
  • Execução: Com os fundos emprestados em sua posse, o atacante pode manipular o preço de uma criptomoeda específica executando grandes ordens de compra ou venda em exchanges descentralizadas (DEXs). Essa manipulação pode criar movimentos de preço artificiais que favorecem a posição do atacante.
  • Pagamento: Para garantir o sucesso do ataque e manter a integridade do empréstimo relâmpago, o atacante reembolsa os fundos emprestados dentro do mesmo bloco de transação. Ao reembolsar prontamente o empréstimo, o atacante elimina a necessidade de garantia e minimiza a exposição ao risco para si mesmo.

O elemento-chave que torna os ataques de empréstimo relâmpago bem-sucedidos é a capacidade de executar todas as etapas necessárias dentro de um único bloco de transação. Essa restrição de tempo e a ausência de requisitos de garantia tornam difícil para as plataformas de empréstimo mitigar efetivamente os riscos associados a tais ataques.

Tipos de Ataques de Empréstimo Relâmpago

Ataques de empréstimo relâmpago podem se manifestar de diversas formas, dependendo das vulnerabilidades específicas ou táticas de manipulação empregadas pelos atacantes. Aqui estão alguns tipos comuns:

  1. Manipulação de Preço: Atacantes podem explorar empréstimos relâmpago para manipular o preço de uma criptomoeda alvo. Ao executar negociações de grande volume em um curto espaço de tempo, eles podem inflacionar ou deflacionar artificialmente o preço. Traders que baseiam suas decisões nesses preços manipulados podem sofrer perdas financeiras significativas.
  2. Arbitragem: Empréstimos relâmpago podem ser utilizados para explorar discrepâncias de preço entre diferentes exchanges descentralizadas (DEXs). Atacantes podem tomar emprestado fundos de uma exchange, aproveitar a diferença de preço em outra exchange e executar negociações de arbitragem para obter lucro. Embora esse tipo de ataque não seja inerentemente malicioso, ele ainda pode gerar impacto nos lucros de traders legítimos.

Aprenda Como Construir um Bot de Arbitragem de Empréstimo Relâmpago aqui.

  1. Exploração de Contratos Inteligentes: Empréstimos relâmpago podem ser usados para explorar vulnerabilidades presentes em contratos inteligentes DeFi. Por exemplo, atacantes podem aproveitar bugs de reentrância ou erros de overflow de inteiros para desviar fundos do contrato ou realizar outras ações não autorizadas. Esses ataques podem levar a perdas financeiras significativas e minar a confiança nos protocolos afetados.

É importante notar que os empréstimos relâmpago em si não são vulnerabilidades. Eles são ferramentas financeiras inovadoras que proporcionam liquidez e flexibilidade aos usuários. No entanto, atores mal-intencionados exploram as características únicas dos empréstimos relâmpago para orquestrar ataques sofisticados que podem ter consequências amplas.

Exemplos de Ataques de Empréstimo Relâmpago

Aqui estão dois casos notáveis de ataques de empréstimo relâmpago que ocorreram no espaço DeFi:

Euler Finance

Em 13 de março de 2023, Euler Finance, um protocolo de empréstimo DeFi, foi vítima de um ataque de empréstimo relâmpago. O ataque se desenrolou da seguinte forma:

https://miro.medium.com/v2/resize:fit:1100/format:webp/0*k2Tm6ThF9HuuauPH.png

  • O atacante iniciou um empréstimo relâmpago da Aave, pegando emprestado 30 milhões de DAI.
  • Dois contratos foram implantados: um para empréstimos e outro para liquidação.
  • O atacante utilizou a função de depósito e comprometeu 20 milhões de DAI ao contrato do Protocolo Euler, recebendo 19,5 milhões de eDAI em troca.
  • Aproveitando a função mint, o atacante pegou emprestado 195,6 milhões de eDAI e 200 milhões de dDAI, superando seu depósito inicial.
  • Para pagar sua dívida, o atacante usou os 10 milhões de DAI restantes emprestados do empréstimo relâmpago, destruindo assim 10 milhões de dDAI.
  • O atacante pegou emprestado mais 195,6 milhões de eDAI e 200 milhões de dDAI ao chamar a função mint novamente.
  • Ao doar 10 vezes a quantia necessária para pagar sua dívida (enviando 100 milhões de eDAI) através da função donateToReserves, o atacante iniciou o processo de liquidação.
  • Como resultado, o atacante obteve 310 milhões de dDAI e 250 milhões de eDAI ao chamar a função liquidate.
  • Finalmente, o atacante retirou 38,9 milhões de DAI, que foram usados para pagar os 30 milhões de DAI pegos emprestados no empréstimo relâmpago, resultando em um lucro de 8,87 milhões de DAI.

Para saber mais sobre esse ataque, você pode ler o artigo completo aqui.

Ataque do Projeto GDS

Em 3 de janeiro de 2023, um ataque de empréstimo relâmpago teve como alvo o projeto GDS na Binance Smart Chain. O ataque se desenrolou da seguinte forma:

  • O explorador iniciou um empréstimo relâmpago, tomando emprestado 2,38 milhões de USDT.
  • O explorador trocou 0,6 milhões de USDT por 3,4 milhões de tokens GDS.
  • Os 1,7 milhões de USDT restantes, juntamente com os 3,4 milhões de tokens GDS obtidos, foram adicionados ao pool de liquidez.
  • Esses ativos foram então trocados por 2,2 milhões de tokens LP na PancakeSwap.
  • Ao coletar recompensas do contrato do token GDS, o atacante obteve lucro.
  • Os tokens LP foram transferidos para outro contrato, e esse processo foi repetido aproximadamente 70 vezes para maximizar as recompensas.
  • Uma vez que as recompensas desejadas foram coletadas e a liquidez foi esgotada, o montante do empréstimo relâmpago foi reembolsado.

Como resultado deste ataque, o explorador obteve 39.000 USDT e quase 10,3 milhões de tokens GDS, avaliados em aproximadamente 148 mil dólares.

Para mais informações sobre o ataque ao GDS, você pode ler o artigo completo aqui.

Ataque da Cream Finance, Outubro de 2021 — Perda de ~$130m

  • O hacker tomou emprestado 500 milhões de dólares em DAI e $2 bilhões de dólares em ETH com endereços separados.
  • Utilizando uma série de transações e usando os empréstimos como garantia para mais empréstimos, o atacante duplicou artificialmente o preço do yUSD e reembolsou os empréstimos.
  • O atacante pegou emprestada toda a liquidez dos mercados Ethereum v1 da Cream usando os restantes 1 bilhão de dólares de crYUSD em garantia.
  • A análise pós-incidente da Cream identificou a vulnerabilidade no cálculo de preço do token encapsulável como o principal problema.

Ataque da xToken, Agosto de 2021 — Perda de ~$4.5m

  • Este ataque envolveu o uso de um empréstimo relâmpago para manipular o preço do token xSNX e a chamada não autorizada de uma função.
  • O hacker explorou a arbitragem artificial criada pela manipulação de preço do xSNX.
  • Como resultado deste ataque, a xToken decidiu retirar o produto xSNX do mercado devido à sua complexidade.

Ataque Pancake Bunny, Maio de 2021 — Perda de ~$200m

  • O hacker usou a PancakeSwap para tomar emprestado BNB e manipular os preços de USD/BNB e BUNNY/BNB.
  • Ao manipular os preços, o atacante adquiriu uma quantidade significativa de tokens BUNNY.
  • O atacante então descartou os tokens BUNNY adquiridos e o BNB restante, resultando em uma perda estimada em cerca de 200 milhões de dólares naquela época.

Platypus Finance ($8,5 Milhões)

  • Em fevereiro de 2023, o projeto Platypus Finance na rede Avalanche sofreu um ataque de empréstimo relâmpago, resultando em uma perda de 8,5 milhões de dólares.
  • O atacante tomou emprestado 44 milhões de USDC da Aave e utilizou o valor para colocar em stake e tomar emprestado mais fundos do contrato PlatypusTreasure.
  • Ao explorar um problema lógico na função emergencyWithdraw do contrato MasterPlatypusV4, o atacante conseguiu retirar diretamente os tokens LP em stake sem reembolsar os fundos que tomou emprestado.
  • A vulnerabilidade decorreu da função não verificar adequadamente o status de reembolso do usuário, permitindo ao atacante contornar a exigência de reembolso.

Protocolo Alpha Homora ($37 Milhões)

  • Alpha Homora, um protocolo de yield farming (cultivo de rendimento) alavancado, foi vítima do maior ataque de empréstimo relâmpago de 2021, resultando em uma perda de 37 milhões de dólares.
  • O atacante utilizou a plataforma de empréstimo Iron Bank da Cream Finance para tomar emprestado sUSD repetidamente através do dapp da Alpha Homora.
  • Com cada ciclo de empréstimo, o atacante duplicou o montante emprestado e emprestou os fundos de volta ao Iron Bank, recebendo cySUSD em troca.
  • Ao usar empréstimos relâmpagos para reembolsar o sUSD emprestado e tomar mais emprestado, o atacante acumulou grandes quantidades de cyUSD e o utilizou para pegar emprestado várias outras criptomoedas do Iron Bank, incluindo WETH, USDC, USDT e DAI.

Medidas para Prevenir Ataques de Empréstimos Relâmpago

Para mitigar os riscos associados aos ataques de empréstimos relâmpago, as seguintes medidas preventivas podem ser implementadas:

Oráculos de Preços Descentralizados

Ataques de empréstimos relâmpago frequentemente se baseiam na manipulação de preços. Ao utilizar oráculos de preços descentralizados, como Chainlink ou Band Protocol, os protocolos podem obter dados de preços precisos e confiáveis para diferentes criptomoedas. Isso reduz a vulnerabilidade a ataques como o que ocorreu com dYdX, onde os protocolos dependiam de feeds de preços de uma única exchange descentralizada (DEX).

Restrições Baseadas em Tempo

Introduza restrições ou limitações baseadas em tempo em certas operações contratuais para evitar a execução rápida ou simultânea de várias transações em um curto período. Isso pode ajudar a mitigar o impacto de ataques de empréstimos relâmpago que dependem da execução de várias transações dentro de um único bloco.

Limitar Dependências Externas

Reduzir a dependência de contratos ou dependências externas sempre que possível pode ajudar a minimizar a superfície de ataque e potenciais vulnerabilidades no sistema. Ao limitar dependências externas, a segurança geral do protocolo pode ser melhorada.

Implementar Controles de Acesso

Empregue mecanismos de controle de acesso para restringir certas operações a endereços ou cargos autorizados. Isso evita que entidades não autorizadas interajam com funções críticas do contrato, adicionando uma camada adicional de proteção contra potenciais ataques.

Limitar Tamanhos de Transação

Restrinja o valor máximo ou os limites de empréstimo para empréstimos relâmpago. Ao impor limites, o impacto potencial de um ataque pode ser mitigado, pois a capacidade do atacante de manipular grandes quantidades de fundos em uma única transação é significativamente reduzida.

Disjuntores

A implementação de disjuntores (circuit breakers) pode ser altamente eficaz na prevenção de ataques de empréstimos relâmpago. Esses mecanismos automatizados interrompem a negociação em uma plataforma se condições específicas forem atendidas, como uma queda repentina na liquidez ou um grande movimento de preços. Os disjuntores podem prevenir ataques de empréstimos relâmpago ao parar grandes movimentos de preços, tornando mais difícil para os atacantes manipularem os preços dos ativos.

Atualizações de Preços de Alta Frequência

Aumentar a frequência de atualizações de preços dentro dos pools de liquidez pode ajudar a deter ataques de empréstimos relâmpago. Ao consultar oráculos para preços mais recentes com mais frequência, o preço dos tokens dentro do pool é atualizado mais rapidamente, tornando a manipulação de preços mais desafiadora para os atacantes.

Preços Médios Ponderados pelo Tempo

Usar “Preços Médios Ponderados pelo Tempo”, ou TWAP (Time Weighted Average Pricing), pode fornecer uma camada adicional de proteção contra ataques de empréstimos relâmpago. Em vez de confiar em um único cálculo de preço (média ou mediana), o TWAP envolve a média de preços em vários blocos. A manipulação do TWAP requer a manipulação da blockchain inteira, tornando mais difícil para os atacantes a exploração de vulnerabilidades de empréstimos relâmpago.

Conclusão

À medida que a indústria DeFi continua a evoluir, é crucial abordar vulnerabilidades e fortalecer mecanismos de prevenção contra ataques de empréstimos relâmpago. Enquanto medidas como oráculos descentralizados, restrições baseadas em tempo, limitação de tamanhos de transação, disjuntores, atualizações de preços de alta frequência e estratégias TWAP podem ajudar a mitigar riscos, a indústria como um todo precisa adotar métodos mais eficazes para combater as explorações de empréstimos relâmpago. Com cada incidente, o ecossistema evolui e se torna mais resistente a possíveis ataques, tornando o DeFi um espaço mais seguro para usuários e protocolos.

Artigo original publicado por BuildBear Team. Traduzido por Paulinho Giovannini.

Top comments (0)