Balancer sofreu um ataque de Hacker com uma perda de 520 mil dólares. O risco de compatibilidade com as Finanças Descentralizadas volta a gerar seguir.

robot
Geração de resumo em curso

Análise técnica do ataque do Hacker à plataforma DeFi Balancer

Recentemente, uma plataforma de Finanças Descentralizadas (DeFi) que ganhou destaque pelo modelo "empréstimo é mineração" sofreu um ataque de Hacker. O atacante explorou uma vulnerabilidade nos pools de tokens ERC20 deflacionários STA e STONK da plataforma, causando perdas superiores a 500 mil dólares.

Após a análise dos especialistas em segurança, descobriu-se que a raiz do problema reside na incompatibilidade entre o token deflacionário na plataforma e seu contrato inteligente em determinadas circunstâncias. Isso permitiu que os atacantes criassem pools de liquidez de tokens com desvios de preços e lucrassem com isso.

O processo de ataque é dividido principalmente em quatro etapas:

  1. O atacante obteve uma grande quantidade de WETH como um empréstimo relâmpago de uma plataforma de empréstimos.

  2. O atacante executa repetidamente a chamada swapexactMountin() até que a maioria dos tokens STA detidos pela plataforma alvo seja consumida, preparando-se para o próximo passo do ataque.

  3. Ao explorar a incompatibilidade entre o token STA e os contratos inteligentes, ou seja, a discrepância entre o registro e o saldo, o atacante conseguiu esgotar os outros ativos do fundo, obtendo no final um lucro superior a 520 mil dólares.

  4. O atacante reembolsou o empréstimo relâmpago e transferiu os ativos digitais obtidos na ataque.

Na segunda etapa do ataque, o hacker habilmente fez com que a plataforma tivesse apenas uma quantidade muito pequena de STA, o que levou a um aumento anômalo no valor do STA. Em seguida, o hacker aproveitou o mecanismo de taxas de transferência de tokens, resultando em um desvio entre a quantidade de STA que a plataforma realmente recebeu e os registros internos.

Através da chamada repetida da função gulp() para redefinir a contabilidade interna, o atacante conseguiu continuamente trocar uma quantidade mínima de STA por uma grande quantidade de outros ativos, até esgotar os ativos como WETH, SNX e LINK no pool de liquidez.

Este evento expôs novamente os riscos de compatibilidade existentes na combinabilidade do DeFi. Para prevenir ataques semelhantes, recomenda-se:

  1. Os tokens deflacionários devem ser revertidos ou retornar False diretamente quando o montante não é suficiente para pagar a taxa de transferência.

  2. A plataforma DeFi deve verificar o saldo real após cada chamada da função transferFrom().

Mais importante ainda, os desenvolvedores de projetos DeFi devem adotar boas normas de codificação e realizar testes de segurança abrangentes antes do lançamento. Ao mesmo tempo, é crucial realizar uma verificação de compatibilidade abrangente para os diversos padrões de tokens e para os comportamentos combinados dos projetos DeFi.

Este ataque causou uma perda de cerca de 523 mil dólares, envolvendo vários ativos digitais. Isso, sem dúvida, terá um impacto em todo o ecossistema de Finanças Descentralizadas, e lembra os desenvolvedores da importância de se atentar à segurança dos contratos inteligentes. Com o rápido desenvolvimento do setor DeFi, eventos de segurança semelhantes podem continuar a ocorrer, tornando essencial aumentar a conscientização sobre segurança e medidas técnicas de prevenção.

Ver original
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
  • Recompensa
  • Comentar
  • Partilhar
Comentar
0/400
Nenhum comentário
  • Pino
Negocie cripto em qualquer lugar e a qualquer hora
qrCode
Digitalizar para transferir a aplicação Gate
Novidades
Português (Portugal)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)