Bitget App
Trading inteligente
Comprar criptoMercadosTradingFuturosRendaWeb3CentralMais
Trading
Spot
Compre e venda criptomoedas
Margem
Amplie seu capital e a eficiência de seus fundos
Onchain
Opere Onchain sem tem que ir on-chain
Converter e bloquear o trade
Converta criptomoedas com um clique e sem taxas
Explorar
Launchhub
Comece a ganhar com vantagens desde o início
Copiar
Copie traders de elite com um clique
Robôs
Robô de trading com IA simples, rápido e confiável
Trading
Futuros USDT
Futuros liquidados em USDT
Futuros USDC
Futuros liquidados em USDC
Futuros Coin-M
Futuros liquidados em criptomoedas
Explorar
Guia de futuros
Uma jornada no trading de futuros
Promoções de futuros
Aproveite recompensas generosas!
Renda Bitget
Uma série de produtos para aumentar seus ativos
Renda Simples
Deposite e retire a qualquer momento para obter retornos flexíveis com risco zero
Renda On-chain
Ganhe lucros diariamente sem arriscar o investimento inicial
Renda estruturada
Inovação financeira robusta para navegar pelas oscilações do mercado
VIP e Gestão de Patrimônio
Serviços premium para uma Gestão de Patrimônio inteligente
Empréstimos
Empréstimo flexível com alta segurança de fundos
[Thread em inglês] Análise aprofundada do ataque ao Balancer V2: mecanismo da vulnerabilidade, etapas do ataque e lições aprendidas

[Thread em inglês] Análise aprofundada do ataque ao Balancer V2: mecanismo da vulnerabilidade, etapas do ataque e lições aprendidas

ChainFeedsChainFeeds2025/11/06 14:02
Mostrar original
Por:BlockSec

Chainfeeds Introdução:

O atacante definiu intencionalmente parâmetros, incluindo o número de iterações e o valor de entrada, para maximizar o efeito da perda de precisão.

Fonte do artigo:

Autor do artigo:

BlockSec

Opinião:

BlockSec: Em 3 de novembro de 2025, o Composable Stable Pool do Balancer V2, assim como vários projetos on-chain baseados em seu Fork, sofreram um ataque coordenado cross-chain, resultando em uma perda total superior a 125 milhões de dólares. A BlockSec emitiu um alerta imediatamente e, em seguida, publicou uma análise preliminar. Este foi um ataque altamente complexo. Nossa investigação mostrou que a causa raiz veio da perda de precisão nos cálculos do invariante, que foi explorada para manipulação de preços, afetando assim o preço do BPT (Balancer Pool Token). O atacante lucrou com pools estáveis específicos por meio de uma única operação batchSwap. O componente afetado foi o Composable Stable Pool do Balancer V2. Esse tipo de pool é projetado para ativos que devem manter uma taxa de câmbio próxima de 1:1, permitindo grandes negociações com mínimo slippage e aumentando significativamente a eficiência de capital para ativos correlacionados ou similares. Cada pool possui seu próprio BPT, cujo preço pode ser aproximadamente expresso como: Preço do BPT = D / totalSupply, onde D é o invariante da matemática estável, representando o valor total virtual do pool. Pela fórmula, se D for matematicamente reduzido (mesmo que os fundos reais não sejam perdidos), o preço do BPT será menor. O Balancer V2 oferece a função batchSwap(), que permite múltiplos swaps dentro do Vault, com dois modos no SwapRequest: GIVEN_IN e GIVEN_OUT. No modo GIVEN_OUT, o chamador especifica o valor de saída desejado, e o pool calcula o valor de entrada necessário. Nos pools estáveis, ao calcular o amountIn necessário, é preciso resolver uma equação polinomial baseada na fórmula do invariante, e esses cálculos passam por Upscaling e Downscaling. Em teoria, são operações opostas, mas na implementação real há arredondamentos em direções diferentes: o upscaling usa apenas arredondamento para baixo (mulDown), enquanto o downscaling pode arredondar para cima ou para baixo (divUp/divDown). Essa inconsistência abriu espaço para o ataque. A raiz da vulnerabilidade está no uso de arredondamento para baixo ao fazer Upscaling de swapRequest.amount em BaseGeneralPool._swapGivenOut(). O valor arredondado para baixo é usado como amountOut na entrada de _onSwapGivenOut(), fazendo com que o amountIn calculado seja menor do que o realmente necessário, violando o princípio de que o arredondamento deve sempre favorecer o protocolo. Para pools como (wstETH/rETH/cbETH), o atacante pode trocar uma quantidade menor de um ativo por uma quantidade maior de outro, reduzindo o invariante D e, assim, pressionando o preço do BPT para baixo. O atacante executou o ataque em duas fases. Na primeira fase, a lógica central do ataque é realizada em uma única transação, mas sem lucro imediato; na segunda fase, o lucro é retirado em uma transação separada. A primeira fase se divide em cálculo de parâmetros e batch swap. Tomando como exemplo a transação de ataque na rede Arbitrum (TX: 0x7da32e…55773), o atacante primeiro obtém os parâmetros do pool, incluindo scaling factors, A (fator de amplificação), taxa de câmbio do BPT, swap fee, etc., depois calcula o trickAmt e simula por meio de um contrato auxiliar. O atacante ajusta com precisão os parâmetros do swap seguinte, incluindo o número de iterações e os valores de entrada e saída de cada vez, combinando cálculos offline e simulações on-chain. Em cada iteração, são realizados três swaps: no primeiro, a quantidade do token alvo é elevada para trickAmt + 1; no segundo, continua-se a swapar o token alvo, ativando o arredondamento para baixo do _upscale(); no terceiro, faz-se um swap reverso, truncando o saldo do pool para baixo, removendo as duas casas decimais mais altas antes de trocar de volta. Por exemplo, 324.816 → 320.000. Em alguns casos, devido ao uso do método de Newton–Raphson para resolver a matemática do StableSwap, pode haver falha, e o atacante preparou dois fallbacks, tentando novamente com 9/10 do valor original. Após o ataque, como alguns mecanismos do Balancer não puderam ser pausados, o impacto foi ampliado, levando a ataques imitativos em várias redes, com perdas totais superiores a 125 milhões de dólares. O incidente expôs quatro questões críticas em protocolos descentralizados: mecanismos de arredondamento inconsistentes, evolução constante das técnicas dos atacantes, incapacidade de pausar o protocolo ampliando as perdas, e falta de monitoramento em tempo real do estado de inicialização e operação. O upscaling só permite arredondamento para baixo, enquanto o downscaling permite ambos os sentidos, e essa assimetria pode acumular perdas de precisão exploráveis sob parâmetros extremos. O arredondamento, que deveria sempre favorecer o protocolo, neste caso prejudicou seus interesses. O atacante usou uma abordagem em duas fases: primeiro executa o ataque sem lucro aparente, depois retira o lucro separadamente, evitando modelos de monitoramento on-chain. Cada etapa do ataque combinou simulações off-chain e on-chain, com contratos auxiliares até reutilizando a implementação StableMath do Balancer, mantendo até as mensagens de erro idênticas. Após o ataque, houve réplicas em múltiplas redes e muitos projetos Fork também foram afetados, mostrando que, enquanto a matemática estável e a lógica de arredondamento forem iguais, a vulnerabilidade pode se espalhar pelo ecossistema. O evento mostra que protocolos DeFi precisam de cálculos matemáticos de maior precisão, validação mais rigorosa de arredondamento, mecanismos de simulação de caminhos suspeitos e capacidade de pausa de emergência em situações anormais. [O texto original está em inglês]

0

Aviso Legal: o conteúdo deste artigo reflete exclusivamente a opinião do autor e não representa a plataforma. Este artigo não deve servir como referência para a tomada de decisões de investimento.

PoolX: bloqueie e ganhe!
Até 10% de APR - Quanto mais você bloquear, mais poderá ganhar.
Bloquear agora!

Talvez também goste

Stablecoin sintética USDX perde paridade e cai abaixo de $0,60; PancakeSwap e Lista monitoram a situação

O stablecoin USDX da Stable Labs, criado para manter sua paridade utilizando estratégias de hedge delta-neutro, perdeu sua paridade com o dólar na quinta-feira, caindo para abaixo de US$ 0,60. Protocolos como Lista e PancakeSwap estão monitorando a situação.

The Block2025/11/06 21:06
Stablecoin sintética USDX perde paridade e cai abaixo de $0,60; PancakeSwap e Lista monitoram a situação

Cardano Midnight Network atinge 1 milhão de endereços de mineração

A Midnight Network registrou 1.000.000 de endereços de mineração, marcando uma forte adoção por parte dos membros da comunidade.

Coinspeaker2025/11/06 20:31