Análise do ataque ao contrato LibertiVault na cadeia de polígonos

De acordo com o monitoramento de risco de segurança Beosin EagleEye, alerta precoce e monitoramento de plataforma de bloqueio da empresa de auditoria de segurança blockchain Beosin,**, o contrato LibertiVault na cadeia Polygon foi atacado e a perda de cerca de 123ETH e 56.234USDT no valor de cerca de 290.000 dólares americanos , e a cadeia Ethereum 35ETH e 96223USDT valem cerca de US$ 160.000, totalizando mais de US$ 450.000. **A equipe técnica analisou e descobriu que esse ataque foi causado por uma vulnerabilidade de reentrada no contrato LibertiVault.

  1. O invasor emprestou 5 milhões de USDT usando o empréstimo flash e chamou a função de depósito do contrato LibertiVault para penhor. A lógica de penhor usará parte dos tokens prometidos para troca e, em seguida, calculará a quantidade de moedas cunhadas. A quantidade de moedas as moedas cunhadas são baseadas no contrato e no depósito O cálculo é baseado na proporção da quantidade de tokens depositados no saldo antes do depósito do contrato.

  2. O swap da operação de câmbio irá chamar o contrato do hacker. Neste momento, o hacker entra novamente no depósito da chamada pela primeira vez, e entra novamente nesta função pela segunda vez, depositando 2,5 milhões de USDT no contrato.

  3. Após a segunda reentrada, o contrato cunhará moedas para o hacker de acordo com a proporção de 2,5 milhões de USDT para o saldo de USDT do contrato anterior. Após a conclusão da função de depósito da primeira reentrada, o hacker deposita outros 2,5 milhões de USDT afim disso.

  4. Neste momento, a operação de câmbio na função de depósito externo é concluída e o contrato cunhará moedas de acordo com a proporção de 2,5 milhões de USDT para o saldo de USDT do contrato.

  5. O problema está no quarto ponto. Logicamente falando, o segundo cálculo do saldo do contrato deveria ser o saldo anterior mais o saldo de 2,5 milhões informado pela primeira vez como parâmetro para este cálculo, mas aqui está o Na forma de reentrada, o saldo do contrato foi obtido logo no início, portanto, os parâmetros não foram alterados e o saldo original ainda é usado para cálculo, resultando na emissão de um grande número de tokens de voucher para hackers.

  6. Por fim, o hacker removeu os tokens e devolveu o empréstimo instantâneo para obter lucro.

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)