OrionProtocol sofreu um ataque de reentrada, resultando em uma perda de 2,9 milhões de dólares; Análise de vulnerabilidades de segurança e recomendações de prevenção.

robot
Geração do resumo em andamento

Análise do incidente de ataque de reentrada do OrionProtocol

No dia 2 de fevereiro de 2023, a Orion Protocol na Ethereum e na Binance Smart Chain sofreu um ataque de reentrada devido a uma vulnerabilidade de contrato, resultando em perdas de aproximadamente 2,9 milhões de dólares. O atacante explorou a vulnerabilidade no contrato, realizando operações de callback através da criação de um contrato de Token especial, o que possibilitou o ataque de reentrada.

Análise do processo de ataque

O atacante primeiro criou um contrato de Token especial e realizou as operações de transferência e autorização relacionadas. Em seguida, o atacante tomou emprestado através do método swap de um DEX e chamou o método swapThroughOrionPool do OrionProtocol para realizar a troca de tokens. Durante o processo de troca, o atacante utilizou o contrato de Token que criou para fazer callbacks, chamando repetidamente o método depositAsset, o que resultou na acumulação do valor depositado. Por fim, o atacante completou o lucro através de uma operação de retirada.

Análise de Ataques de Reentrada do OrionProtocol com PoC

Fluxo de Capital

O capital inicial do atacante vem da conta da carteira quente de uma determinada plataforma de negociação. Dos 1651 ETH obtidos, 657,5 ainda permanecem no endereço da carteira do atacante, enquanto o restante foi transferido através de ferramentas de mistura.

Análise de ataque de reentrada do OrionProtocol com PoC

Análise de Vulnerabilidades

O problema central reside na função doSwapThroughOrionPool. Esta função atualiza a variável curBalance após a execução da transferência de tokens, mas não considera o risco potencial de ataques de reentrada. Um atacante pode adicionar lógica de callback na função transfer do Token personalizado, levando à atualização errada de curBalance, permitindo assim a realização do ataque.

Análise de ataque de reentrada do OrionProtocol com PoC

Análise de ataque de reentrada do OrionProtocol com PoC

Análise de Ataques de Reentrada do OrionProtocol com PoC

Análise de ataque de reentrada do OrionProtocol com PoC

Reproduzindo Ataques

Os pesquisadores forneceram parte do código POC, simulando o processo de ataque. Os resultados dos testes mostraram que, ao explorar vulnerabilidades no contrato, foi possível realizar uma movimentação de fundos semelhante ao ataque real.

Análise de ataque de reentrada do OrionProtocol com PoC

Análise de ataque de reentrada do OrionProtocol com PoC

Análise de ataque de reentrada do OrionProtocol com PoC

Análise de ataque de reentrada do OrionProtocol com PoC

Análise de ataque de reentrada do OrionProtocol com PoC

Sugestões de Segurança

  1. Durante o desenvolvimento do contrato, deve-se considerar os potenciais riscos associados a vários Tokens e caminhos de troca.
  2. Seguir a norma de codificação "Verificações-Efeitos-Interações" (Checks-Effects-Interactions), primeiro fazer a verificação, depois atualizar as variáveis de estado e, por último, executar chamadas externas.
  3. Reforçar as medidas de proteção contra ataques de reentrada, como o uso de bloqueios de reentrada e outros métodos.
  4. Realizar uma auditoria de segurança abrangente, com especial atenção às funções que podem ser exploradas para ataques de reentrada.
  5. Atualizar e otimizar regularmente o código do contrato, corrigindo rapidamente as vulnerabilidades encontradas.

Este incidente mais uma vez lembra as equipas de projetos Web3 da necessidade de dar elevada importância à segurança dos contratos inteligentes. Os desenvolvedores de contratos devem ser mais cautelosos ao lidar com a lógica relacionada à transferência de fundos, considerando plenamente os diversos cenários de ataque possíveis. Ao mesmo tempo, a realização regular de auditorias de segurança e programas de recompensas por falhas são também métodos eficazes para garantir a segurança do projeto.

TOKEN-1.79%
Ver original
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
  • Recompensa
  • 7
  • Compartilhar
Comentário
0/400
MevTearsvip
· 07-23 02:41
Estúpido! Mais uma vez a velha questão da reentrada.
Ver originalResponder0
MetaMiseryvip
· 07-21 02:18
Outra vez a fazer as pessoas de parvas, que pena.
Ver originalResponder0
RetailTherapistvip
· 07-20 20:40
Ainda há quem esteja preso.
Ver originalResponder0
PositionPhobiavip
· 07-20 03:55
Mais uma vez, os contratos inteligentes falharam.
Ver originalResponder0
CryptoTherapistvip
· 07-20 03:55
vamos fazer algumas respirações conscientes antes de explorarmos este trauma de reentrada
Ver originalResponder0
RektCoastervip
· 07-20 03:45
Clássico jogo de reentrada recursiva, já falado muitas vezes.
Ver originalResponder0
SnapshotDayLaborervip
· 07-20 03:33
Outra vez fui alvo de Cupões de Recorte. Que pena.
Ver originalResponder0
  • Marcar
Faça trade de criptomoedas em qualquer lugar e a qualquer hora
qrCode
Escaneie o código para baixar o app da Gate
Comunidade
Português (Brasil)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)