Esse é o tipo de bug que mantém as equipes de protocolo acordadas à noite.
Uma exploração de US$ 5 milhões no ZKSwap, habilitada por uma única instrução deixada no lugar errado.
Aqui está um mergulho profundo em como isso aconteceu e como o monitoramento onchain poderia ter parado.
🧵

1/ Em 9 de julho, a GMX foi hackeada por US$ 42 milhões.
Mas outra coisa aconteceu naquele dia e quase ninguém percebeu: a ponte do ZKSwap foi silenciosamente drenada por US $ 5 milhões.
A parte interessante? Não houve nenhuma façanha extravagante envolvida. Apenas uma função crítica que fez ... nada.

2/ ZKSwap é um zk-rollup construído no Ethereum.
Como muitos rollups, ele usa uma ponte para mover ativos entre L1 e L2.
Como salvaguarda, a ponte inclui um "Modo Êxodo", uma maneira de os usuários recuperarem fundos sem precisar do operador.
Em teoria, essa é uma ótima ideia. Na prática...
3/ O Modo Êxodo permite que os usuários provem manualmente que possuíam tokens no último estado L2 verificado.
É um mecanismo alternativo: sem confiança, auto-custódia, não interativo.
Mas a implementação do ZKSwap tinha uma falha fatal: a função responsável por verificar as provas não verificava nada.
Literalmente.
4/ Aqui está o código que deveria ter parado o ataque 👇
À primeira vista, parece um verdadeiro verificador à prova de zk.
Mas olhe atentamente para a primeira linha: retorne verdadeiro;
É isso. Nada mais corre.

5/ O resultado? Cada "prova" de retirada (não importa o quão falsa) passou na validação.
O contrato aceitou reivindicações arbitrárias sobre saldos simbólicos ... e creditou-os como se fossem reais.
Ele transformou um mecanismo de fallback sem confiança em uma torneira desprotegida.
6/ O invasor não precisava de exploits sofisticados - apenas chamadas repetidas para exit() com dados inventados.
Eles ignoraram as verificações de saldo, retiraram vários tokens e abusaram da lógica fraca do anulador para evitar a detecção.
Tudo isso enquanto o contrato dizia: ✅

7/ Este não foi um caso obscuro.
Essa era a lógica central para a recuperação de ativos, deixada completamente aberta.
E como o Modo Êxodo raramente é acionado, o caminho quebrado passou despercebido... por meses.
8/ Aqui está o que deveria ter acionado os alarmes:
• Modo Êxodo sendo acionado após longa dormência
• Dezenas de chamadas de saque acontecendo de uma só vez
• Aumento repentino nas alterações de saldos para retirar
Tudo isso era visível e poderia ter sido interrompido com monitoramento onchain em tempo real.

9/ Então, qual é a lição?
• O código de emergência ainda é o código de produção
• Caminhos alternativos não ajudam se não funcionarem
• O monitoramento em tempo real não é opcional, é crítico para a sobrevivência
34,14 mil
379
O conteúdo desta página é fornecido por terceiros. A menos que especificado de outra forma, a OKX não é a autora dos artigos mencionados e não reivindica direitos autorais sobre os materiais apresentados. O conteúdo tem um propósito meramente informativo e não representa as opiniões da OKX. Ele não deve ser interpretado como um endosso ou aconselhamento de investimento de qualquer tipo, nem como uma recomendação para compra ou venda de ativos digitais. Quando a IA generativa é utilizada para criar resumos ou outras informações, o conteúdo gerado pode apresentar imprecisões ou incoerências. Leia o artigo vinculado para mais detalhes e informações. A OKX não se responsabiliza pelo conteúdo hospedado em sites de terceiros. Possuir ativos digitais, como stablecoins e NFTs, envolve um risco elevado e pode apresentar flutuações significativas. Você deve ponderar com cuidado se negociar ou manter ativos digitais é adequado para sua condição financeira.