Curve está profundamente envolvido em incidentes de segurança, como estabelecer um "mecanismo ofensivo e defensivo" para prevenir hackers e rastrear fundos?

Produzido|Okey Cloud Chain Research Institute

Autor|****MatthewLee

Em 31 de julho, Curve declarou na plataforma que o pool de stablecoin do Vyper 0.2.15 foi atacado devido a uma vulnerabilidade no compilador. Especificamente, devido à invalidação da função de bloqueio de reentrada, os hackers podem facilmente lançar ataques de reentrada, ou seja, permitir que os invasores executem determinadas funções em uma única transação. Alguns dos pools de fundos no Curve usam uma versão antiga do compilador, que oferece oportunidades para hackers.

(O ataque de reentrada é um tipo de vulnerabilidade causada pelas características do Vyper e pela redação imprópria de contratos inteligentes. Isso já aconteceu muitas vezes antes. A equipe de segurança da Okey Cloud Chain fez uma análise detalhada desses casos antes. Clique em " Leia o texto original" para visualizar, então este artigo não mostrará os detalhes do ataque)

Imediatamente depois, muitos outros projetos anunciaram que haviam sido atacados. O protocolo de compromisso NFT JPEG'd, o projeto de empréstimo AlchemixFi e o protocolo DeFi MetronomeDAO, a ponte de cadeia cruzada deBridge e o DEX Ellipsis usando o mecanismo Curve sofreram enormes perdas .

![Curve está profundamente envolvida em incidentes de segurança, como estabelecer um "mecanismo ofensivo e defensivo" para prevenir hackers e rastrear fundos?](https://img-cdn.gateio.im/resized-social/moments-69a80767fe-a549a8eea9 -dd1a6f-1c6801)

No entanto, em 30 de julho, algumas partes do projeto já sabiam da ameaça potencial de ataque. Tomando a Alchemix como exemplo, ela já começou a transferir ativos no dia 30 e transferiu com sucesso 8000ETH, mas no processo de transferência de ativos, o invasor ainda roubou os 5000ETH restantes no contrato AMO.

![Curve está profundamente envolvida em incidentes de segurança, como estabelecer um "mecanismo ofensivo e defensivo" para prevenir hackers e rastrear fundos?](https://img-cdn.gateio.im/resized-social/moments-69a80767fe-667cfcf04e -dd1a6f-1c6801)

Fonte da imagem: OKLink Explorer

Outras partes do projeto também tomaram algumas medidas, como AAVE proibindo Curve de emprestar; Alchemix também removeu a liquidez controlada pela AMO do pool de curvas; Metronome suspendeu diretamente a função da rede principal.

Como evitar ataques de hackers de fins ofensivos e defensivos**? **

Esta não é a primeira vez que o Curve foi hackeado. Como um projeto Defi top, não é imune a ataques de hackers. As partes comuns do projeto devem prestar mais atenção aos ataques de hackers e defesas contratuais.

** Então, para o lado ofensivo, que preparativos o partido do projeto pode fazer? **

A equipe OKLink recomenda que a parte do projeto** identifique antecipadamente as carteiras com histórico negro por meio do sistema de rotulagem on-chain** para evitar interações com endereços com comportamento anormal. Um dos endereços do atacante do Curve estava com cadastro ruim e foi registrado pelo OKLink, conforme a figura abaixo:

![Curve está profundamente envolvida em incidentes de segurança, como estabelecer um "mecanismo ofensivo e defensivo" para prevenir hackers e rastrear fundos?](https://img-cdn.gateio.im/resized-social/moments-69a80767fe-1e7d7b06b4 -dd1a6f-1c6801)

Fonte da imagem: OKLink Chainelligence Pro

Seu padrão de comportamento também foge do senso comum até certo ponto, conforme mostra a figura abaixo, são três dias com mais de cem transações.

![Curve está profundamente envolvida em incidentes de segurança, como estabelecer um "mecanismo ofensivo e defensivo" para prevenir hackers e rastrear fundos?](https://img-cdn.gateio.im/resized-social/moments-69a80767fe-e54ce0d88f -dd1a6f-1c6801)

Fonte da imagem: OKLink Onchain AML

**Como o grupo do projeto se defende no lado defensivo? **

Com base na análise dos incidentes acima, descobrimos que a parte do projeto tem dois problemas ao lidar com tais incidentes.

1. O trabalho de manutenção não está em vigor. A maioria dos projetos presta muita atenção à escrita de código e auditoria, mas o trabalho de manutenção não foi levado a sério.Esta vulnerabilidade no compilador Vyper foi descoberta há dois anos, mas o pool sob ataque ainda usa uma versão antiga do compilador.

2. O cenário de teste de código é muito único. Muitos códigos de teste não podem realmente testar o problema. Métodos de teste mais complexos, como teste fuzz, devem ser adicionados e o teste deve ser realizado em várias dimensões, como caminho de ataque de hacker, complexidade do ataque, confidencialidade e integridade.

Como recuperar fundos roubados?

Na realidade, a maioria dos fundos roubados é difícil de recuperar. A figura abaixo mostra o paradeiro dos fundos transferidos pelo hacker. Pode-se ver que o ETH roubado não foi transferido e o endereço não foi associado a uma entidade.

![Curve está profundamente envolvida em incidentes de segurança, como estabelecer um "mecanismo ofensivo e defensivo" para prevenir hackers e rastrear fundos?](https://img-cdn.gateio.im/resized-social/moments-69a80767fe-0d31681c86 -dd1a6f-1c6801)

Fonte da imagem: OKLink Chainelligence Pro

Alguns endereços estão associados a entidades, como o endereço 0xb752DeF3a1fDEd45d6c4b9F4A8F18E645b41b324 (2.879,54 ETH foi devolvido), e endereços semelhantes estão associados a entidades, podemos recuperar os fundos ligando para a polícia e negociando com as entidades.

![Curve está profundamente envolvida em incidentes de segurança, como estabelecer um "mecanismo ofensivo e defensivo" para prevenir hackers e rastrear fundos?](https://img-cdn.gateio.im/resized-social/moments-69a80767fe-6df2a9a204 -dd1a6f-1c6801)

Fonte da imagem: OKLink Chainelligence Pro

A maneira correta de lidar com esse incidente é usar as funções de alerta antecipado e rastreamento do OKLink ou de outros provedores de serviços técnicos, aguardar a movimentação de fundos subsequente do endereço de precipitação e tomar outras ações. No entanto, a melhor maneira é o setor trabalhar em conjunto para desenvolver um mecanismo de resposta baseado em incidentes de segurança, que possa reprimir melhor o comportamento anormal.

Aviso para nós

Incidentes de segurança, como ataques de reentrada, certamente ocorrerão, portanto, além dos esforços mencionados acima, precisamos fazer em ambas as extremidades do ataque e da defesa, A parte do projeto precisa fazer um plano de emergência, para que ele pode responder da maneira mais oportuna quando é atacado por hackers, para reduzir a perda de partes e usuários do projeto. Os colaboradores do Vyper também sugeriram que, para produtos públicos como o Vyper, deveríamos reforçar os incentivos públicos para encontrar brechas importantes. O OKLink exige que um conjunto de padrões de resposta de segurança seja estabelecido o mais rápido possível para facilitar o rastreamento de fundos de endereços preto/cinza.

Assim como os produtos OKLink desempenham um papel na prevenção de hackers e rastreamento de fundos nas extremidades ofensivas e defensivas de tais incidentes, a parte do projeto deve considerar o valor adicional que os provedores de serviços técnicos terceirizados podem trazer ao construir o módulo de segurança da plataforma, mais rápido e melhor Construir uma fortaleza de segurança para o projeto.

*Raymond Lei e Mengxuan Ren, da Okey Cloud Chain, também contribuíram para este artigo. *

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
  • Comentário
  • Compartilhar
Comentário
0/400
Sem comentários
  • 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)