I got a bunch of questions regarding this tweet asking about the Cetus hack and how the Balancer hack compares to it. Both hacks involved overflow-related issues; Balancer had rounding errors, while Cetus had a bitshift overflow. But you're probably thinking, "Isn't Move supposed to be safer? What's the point in using Move if similar issues still happen?" Totally valid questions.
The biggest difference between Move and Solidity is that Move helps prevent you from accidentally shooting yourself in the foot with built-in u128/u256 overflow aborts, but it doesn't guarantee protection if you intentionally write unsafe code. If you look at this one line in Cetus' math library, you might be thinking what on earth is this:
It was a bitshift operation (<< 192) in their "safe" math library, which unfortunately turned out to be anything but safe, leading to the infamous $223M drain. This was done likely a hacky gas optimization. If they had used standard u128 multiplication with overflow checks, this wouldn’t have happened.
On high-performance chains like Sui, where the average transaction cost is well under one cent, the juice just is not worth the squeeze.
In essence, no money has been lost in Move hacks when following recommended Move practices.

First and foremost, my greatest sympathies to the @Balancer team as well as everyone affected by this exploit.
It's always a rough day when there's a significant DeFi hack like this, let alone from an OG protocol. More than the dollar cost of the stolen funds, this genuinely hurts all of crypto and DeFi's image as a whole and sets our industry back several months.
Fact of the matter is that Solidity is just too insecure a language for it to truly be the one that hosts the future of finance. Solidity has just too large of a surface area that makes it prone to hacks, with devs relying on manual checks for everything from access controls to precise math, and it is exactly why asset-first languages like Move were invented to begin with.
After doing a bit of digging, this was how Balancer was hacked: Attackers exploited rounding errors in stable pool swaps to distort the pool's invariant, a key math constant that represents balanced liquidity. They started with flash-loaned swaps of BPT (Balancer Pool Tokens) for an underlying asset like cbETH, pushing balances to exact rounding boundaries (e.g., scaled to 9). Then, they swapped between assets like wstETH to cbETH with crafted amounts (e.g., ~8.918 rounded down to 8 due to fixed-point scaling), underestimating reserve changes and artificially deflating the invariant (D).
This tanked the BPT price (D / totalSupply), letting attackers reverse-swap to mint excess BPT cheaply, burn it to withdraw underlying assets at "normal" rates, and pocket the difference, essentially stealing from liquidity providers. Profits accumulated in the Vault's internal balances and were cashed out via manageUserBalance with WITHDRAW_INTERNAL, no direct auth bypass needed since the math flaw subsidized the theft. It's a precision loss in Solidity's manual fixed-point libraries that cascades into massive drains.
The way Move would have bypassed this hack altogether is by baking in safety at the core: Assets are treated as resources with linear types that enforce strict conservation (no unintended dupes, drops, or losses), and math uses exact u64/u128 integers with built-in overflow aborts, no floats, no exploitable rounding slips in complex calculations.
In a Move-based DEX, swap functions would atomically check and update invariants via the VM, aborting on any imbalance, such as:
public entry fun swap(pool: &mut LiquidityPool, in: Coin, out_amt: u64): Coin {
assert!(coin::value(&in) >= calculate_required_in(pool, out_amt), E_INSUFFICIENT_INPUT);
coin::merge(&mut pool.coin_x_reserve, in);
let out = coin::extract(&mut pool.coin_y_reserve, out_amt);
assert!(check_invariant(pool), E_INVARIANT_VIOLATION);
out
}
Plus, atomic transactions kill reentrancy risks. This is why Move ecosystems have far fewer exploits compared to the EVM.
It's time for DeFi builders to embrace languages like Move that prioritize security from the ground up, so we can finally build a resilient financial future without preventable setbacks like this.
1,46 тис.
0
Вміст на цій сторінці надається третіми сторонами. Якщо не вказано інше, OKX не є автором цитованих статей і не претендує на авторські права на матеріали. Вміст надається виключно з інформаційною метою і не відображає поглядів OKX. Він не є схваленням жодних дій і не має розглядатися як інвестиційна порада або заохочення купувати чи продавати цифрові активи. Короткий виклад вмісту чи інша інформація, створена генеративним ШІ, можуть бути неточними або суперечливими. Прочитайте статтю за посиланням, щоб дізнатися більше. OKX не несе відповідальності за вміст, розміщений на сторонніх сайтах. Утримування цифрових активів, зокрема стейблкоїнів і NFT, пов’язане з високим ризиком, а вартість таких активів може сильно коливатися. Перш ніж торгувати цифровими активами або утримувати їх, ретельно оцініть свій фінансовий стан.

