Saltar para o conteúdo principal

Como o Comentário de um Desenvolvedor se Tornou uma Catástrofe de $ 128M: O Exploit de Arredondamento do Balancer

· 10 min de leitura
Dora Noda
Software Engineer

Enterrado no código do contrato inteligente da Balancer, logo acima da função que eventualmente causaria a perda de $ 128 milhões, estava um comentário de desenvolvedor: "o impacto deste arredondamento deve ser mínimo". Eles estavam errados — por nove dígitos.

Em 3 de novembro de 2025, um invasor explorou um erro microscópico de arredondamento nos Composable Stable Pools da Balancer V2, drenando fundos em nove redes blockchain em menos de 30 minutos. Não foi um ataque chamativo de reentrada (reentrancy) ou uma chave privada comprometida. Foi aritmética — o tipo de bug que se esconde à vista de todos, passa por várias auditorias e espera pacientemente por alguém astuto o suficiente para transformá-lo em arma.

A Anatomia de um Exploit de Arredondamento

A Função Vulnerável

O recurso batchSwap da Balancer V2 permite que os usuários executem várias trocas de tokens (swaps) em uma única transação. Por baixo do capô, uma função interna chamada _upscaleArray normaliza os saldos de tokens para uma precisão comum antes dos cálculos. Esta função usa fatores de escala (scaling factors) — multiplicadores que consideram as casas decimais de cada token e a taxa interna.

O problema? Quando os fatores de escala são valores não inteiros (o que acontece sempre que as taxas de tokens são incorporadas), a aritmética de inteiros da Solidity arredonda para baixo. Na maioria dos cenários, a perda de precisão equivale a alguns wei — frações de um centavo. Mas os Composable Stable Pools, que detêm ativos estreitamente correlacionados como derivados de staking líquido, amplificam até mesmo pequenos erros de arredondamento através do seu cálculo de invariante StableSwap.

O Ataque em Três Estágios

A estratégia do invasor foi elegante em sua simplicidade:

  1. Pressionar o limite. Trocar grandes quantidades de BPT (Balancer Pool Tokens) por tokens subjacentes, levando o saldo interno de um token para a faixa crítica de 8 – 9 wei — o limite exato onde a divisão de inteiros da Solidity produz a perda máxima de precisão.

  2. Compor o erro. Executar micro-swaps rápidos envolvendo o token posicionado no limite. Cada swap aciona o _upscaleArray, que arredonda para baixo durante as operações EXACT_OUT. O arredondamento faz com que o invariante D da pool seja sistematicamente subestimado, suprimindo artificialmente o preço do BPT.

  3. Extrair a diferença. Cunhar ou comprar BPT ao preço suprimido e, em seguida, resgatá-lo imediatamente por ativos subjacentes pelo valor total. Repetir.

O invasor implantou contratos inteligentes cujos construtores executaram mais de 65 micro-swaps, compondo a perda de precisão em uma manipulação catastrófica de invariante. Cada erro de arredondamento individual era insignificante. Juntos, eles esvaziaram as pools.

$ 128 Milhões em Nove Redes em 30 Minutos

O exploit ocorreu simultaneamente no Ethereum, Base, Arbitrum, Avalanche, Optimism, Gnosis, Polygon, Berachain e Sonic. O Ethereum sofreu as maiores perdas, aproximadamente $ 99 milhões, enquanto as redes menores perderam entre $ 1 – 12 milhões cada.

O sistema de monitoramento automatizado da Hypernative detectou o ataque em poucos minutos, mas, a essa altura, o dano estava se espalhando pelas redes. A natureza multi-chain do exploit — o mesmo código vulnerável implantado em todas as redes — transformou o que poderia ter sido um incidente em uma única rede em uma crise em todo o ecossistema DeFi.

Respostas de Emergência a Nível de Rede

As respostas variaram dramaticamente por rede, revelando o espectro de filosofias de descentralização:

  • Berachain interrompeu toda a sua rede e executou um hard fork de emergência, revertendo o exploit para recuperar $ 12,8 milhões em depósitos de usuários. A decisão foi controversa — a rede tinha apenas alguns meses e teve que escolher entre a proteção do usuário e a imutabilidade.

  • Gnosis Chain adotou inicialmente uma abordagem mais moderada, restringindo a atividade da ponte (bridge) para evitar a movimentação de fundos entre redes. A Monerium congelou 1,3 milhão de EURe no cofre afetado. Então, em 22 de dezembro, a Gnosis executou um hard fork para recuperar $ 9,4 milhões — reescrevendo o estado da rede para mover forçosamente os fundos da carteira do invasor para um endereço de recuperação controlado pela DAO.

  • StakeWise DAO aproveitou a estrutura Safe Harbor da Balancer (BIP-726, estabelecida em 2024) para autorizar legalmente operações de recuperação whitehat, recuperando aproximadamente $ 19 milhões em osETH e $ 1,7 milhão em osGNO.

No total, cerca de $ 43 milhões foram recuperados ou congelados — aproximadamente um terço das perdas totais.

O Paradoxo da Auditoria

Talvez o aspecto mais perturbador do exploit da Balancer seja o fato de ele ter passado por várias auditorias de segurança profissionais.

A Trail of Bits auditou o código da Balancer V2 e, de fato, identificou preocupações relacionadas ao arredondamento. Em sua revisão de 2021 dos Linear Pools, eles sinalizaram o comportamento de arredondamento, mas não conseguiram determinar definitivamente se era explorável. Eles recomendaram testes de fuzz abrangentes para verificar se as "direções de arredondamento de todas as operações aritméticas correspondiam às expectativas".

Quando a Trail of Bits revisou posteriormente os Composable Stable Pools em setembro de 2022, a biblioteca Stable Math — o código exato que continha a vulnerabilidade — estava explicitamente fora do escopo.

O cenário de ameaças da indústria mudou. Em 2021, problemas de arredondamento e aritmética não eram considerados uma categoria de risco significativa. Em 2025, os erros de arredondamento tornaram-se a segunda vulnerabilidade mais explorada em DeFi, atrás apenas do roubo de chaves privadas. Os padrões de auditoria não acompanharam o ritmo.

A Certora, que realizou a verificação formal na Balancer V3, admitiu mais tarde que suas propriedades de verificação da V2 "não restringiam a relação entre swaps individuais ou o comportamento de arredondamento". As propriedades garantiam a solvência em um nível alto, mas perderam cenários onde operações iterativas poderiam acumular valor sistematicamente através do viés de arredondamento.

Um Padrão, Não uma Anomalia

O exploit da Balancer não surgiu de um vácuo. Ataques de precisão de arredondamento têm um histórico crescente em DeFi:

  • Hundred Finance (2023): Atacantes manipularam a taxa de câmbio no contrato hWBTC ao doar WBTC, explorando um erro de arredondamento na função redeemUnderlying para sacar quantias desproporcionais.

  • Raft Finance (2023): Um ataque de flash loan explorou a perda de precisão no protocolo de stablecoin, drenando $ 3,6 milhões.

  • Forks do Compound V2 (em andamento): Pools de empréstimo vazias ou quase vazias permanecem vulneráveis porque valores baixos de totalSupply permitem que atacantes inflem as taxas de câmbio por meio de ataques de doação, explorando o arredondamento da divisão de inteiros.

  • O incidente da própria Balancer em 2023: Um exploit de arredondamento menor, de $ 2,1 milhões, visou suposições aritméticas semelhantes — um tiro de alerta que prefigurou a violação catastrófica de novembro de 2025.

A causa raiz é sempre a mesma: o Solidity não possui suporte nativo para ponto flutuante. Cada operação de divisão trunca, cada multiplicação pode sofrer overflow e cada etapa de normalização introduz um erro potencial. Quando esses erros se acumulam em operações iterativas — especialmente em cálculos invariantes de AMM — os resultados podem ser devastadores.

Por que as Auditorias Continuam Ignorando Bugs de Arredondamento

As auditorias tradicionais de contratos inteligentes focam em falhas de lógica, controle de acesso, reentrada (reentrancy) e manipulação de oráculos. Erros de arredondamento exigem uma abordagem fundamentalmente diferente:

Eles são matematicamente sutis. Uma única operação de arredondamento perdendo 1 wei não é um bug. A vulnerabilidade só surge quando um atacante pode iterar essa operação milhares de vezes em uma única transação, transformando erros insignificantes em uma extração de valor material.

Eles são dependentes de contexto. O mesmo comportamento de arredondamento pode ser inofensivo em uma configuração de pool e explorável em outra. A Trail of Bits não conseguiu confirmar o problema nas Linear Pools porque as condições específicas para exploração não estavam presentes naquele tipo de pool.

Eles escapam da análise estática. Ferramentas automatizadas verificam padrões de vulnerabilidade conhecidos. A exploração de arredondamento exige a compreensão da relação matemática entre operações iterativas e invariantes de pool — algo que exige profundo conhecimento de domínio e testes baseados em propriedades (property-based testing).

A verificação formal ajuda — mas apenas com as propriedades corretas. A verificação da V3 pela Certora incluiu uma propriedade crítica que a V2 não possuía: swappingBackAndForth, que verifica se a troca de tokens de A para B e de volta para A não resulta em um ganho líquido. Essa única regra teria detectado o exploit da Balancer V2. A lição: a verificação é tão forte quanto as propriedades que ela verifica.

O Que Mudou Após o Exploit

A Reformulação de Segurança da Balancer V3

A Balancer V3, que não foi afetada pelo exploit, passou por uma reavaliação extensiva em colaboração com a Certora. A arquitetura da V3 elimina a vulnerabilidade específica de arredondamento através de:

  • Lógica de escalonamento redesenhada que lida com fatores não inteiros sem perda de precisão
  • Verificação formal com propriedades especificamente voltadas para invariantes de troca de ida e volta (roundtrip)
  • Aplicação explícita da direção do arredondamento em todas as operações aritméticas

Impacto em Todo o Setor

O exploit acelerou diversas tendências na segurança DeFi:

  • A execução em tempo de execução (runtime enforcement) ganhou força como um complemento às auditorias. A a16z crypto publicou pesquisas sobre o uso de verificações em tempo de execução para detectar anomalias numéricas durante a execução de transações — capturando exploits em tempo real em vez de depender apenas da análise pré-implantação.

  • Testes conscientes de arredondamento tornaram-se um requisito padrão de auditoria. Empresas líderes agora incluem fuzzing baseado em propriedades visando especificamente o acúmulo de arredondamento iterativo.

  • Frameworks de Safe Harbor, como o BIP-726 da Balancer, provaram seu valor, fornecendo cobertura legal para que respondedores whitehat recuperem fundos rapidamente sem medo de processos judiciais.

A Lição Mais Profunda

O exploit da Balancer expôs uma verdade desconfortável sobre a segurança DeFi: os bugs mais perigosos não são os dramáticos. Ataques de reentrada são bem compreendidos. Manipulações de flash loan possuem defesas estabelecidas. Mas um desenvolvedor escrevendo // o impacto deste arredondamento deve ser mínimo e seguindo em frente — essa é a vulnerabilidade que passa por todas as camadas de defesa.

Como os protocolos DeFi gerenciam mais de 100bilho~esemvalortotalbloqueado(TVL),amargemparao"esperadosermıˊnimo"eˊzero.Umerrodearredondamentoqueperde1weiporoperac\ca~otornaseumexploitde100 bilhões em valor total bloqueado (TVL), a margem para o "esperado ser mínimo" é zero. Um erro de arredondamento que perde 1 wei por operação torna-se um exploit de 128 milhões quando um atacante pode executar 65 operações em uma única chamada de construtor.

O incidente da Balancer é um estudo de caso sobre a lacuna entre o que pensamos ser insignificante e o que um adversário pode transformar em catástrofe. Em DeFi, não existe erro de arredondamento inofensivo.


A BlockEden.xyz constrói infraestrutura de API de blockchain de nível empresarial com arquitetura focada em segurança. À medida que os protocolos DeFi aprendem com incidentes como o exploit da Balancer, uma infraestrutura de nós robusta torna-se a base para interações on-chain mais seguras. Explore nosso marketplace de APIs para construir em uma infraestrutura projetada para confiabilidade.