CyberSIXT Search
Original

Check Pointmatthewsu

How an Attacker Drained $128M from Balancer Through Rounding Error Exploitation

According to Check Point Research, on 3 November 2025 an attacker drained $128.64 million from Balancer V2 across six blockchain networks by exploiting arithmetic precision loss in pool invariant calculations within ComposableStablePools. The attack leveraged a rounding error in the _upscaleArray function, where small balances pushed to the 8-9 wei range cause Solidity’s integer division to incur significant precision loss, enabling repeated arbitrage cycles in batchSwap operations.

The exploitation occurred during contract deployment, with the constructor executing 65 micro-swaps that compounded the losses and stored the stolen value in the exploit contract’s internal balance. The stolen funds were subsequently withdrawn to the final recipient via a withdrawal function that transferred the exploit contract’s internal balance to the attacker, as evidenced by InternalBalanceChanged events and a total of 6,586 WETH, 6,851 osETH, and 4,259 wstETH accumulated across two targeted pools.

In total, the attack transferred 6,586 WETH plus the associated osETH and wstETH out of the Vault, illustrating how tiny rounding errors can be weaponised when amplified through numerous atomic operations.

Sources

On this device

Following

Intel

VendorsThreat actorsResearch reports

Settings

CyberSIXT summarises security news every 30 minutes.

↑↓ move↵ open⌘C copy CVE IDEsc close

Keyboard shortcuts

Everything works with a mouse or touch. Shortcuts are a faster path.

Search ⌘K
Search /
Next item J
Previous item K
Go to Today GT
Go to News GN
Go to CVEs GC
Go to Briefing GB
Reduce motion on this device