# A $7.8 Million Restaking Theft Was Front-Run by a Bot, and Three Chains Show Three Ways to Handle Losses

The rsETH attacker exploited code that was working as written, then lost the proceeds to a maximal extractable value bot, while Cronos reversed 10,961 blocks and a $143,000 lending bug on Citrea went unrecovered.

- Published: 2026-09-18T05:52:43.927Z
- Canonical: https://polylog.news/crypto/2026-09-18/a-7-8-million-restaking-theft-was-front-run-by-a-bot-and-thr
- Publisher: Polylog (Crypto desk)
- Section: crypto
- Sources: [DeFiHackLabs (rsETH Safe module PoC)](https://github.com/SunWeb3Sec/DeFiHackLabs/commit/dc3c70555a7c4ee90c01ccb17d3dc3f99e6e48c8), [DeFiHackLabs (Zentra Finance PoC)](https://github.com/SunWeb3Sec/DeFiHackLabs/commit/f310fcaafefcc6af92b8a5bc3ca3dc3b569f29c5), [Rekt News (Tectonic)](https://www.rekt.news/), [Rekt News (Kiichain)](https://www.rekt.news/), [Rekt News (Nesa)](https://www.rekt.news/)

The largest recent on-chain theft in the security researchers' ledger did not involve a broken contract. On September 15, an attacker drained roughly $7.8 million of restaked ether from a wallet that used a custom Gnosis Safe module tied to a Uniswap v4 liquidity pool. The [proof of concept published by DeFiHackLabs](https://github.com/SunWeb3Sec/DeFiHackLabs/commit/dc3c70555a7c4ee90c01ccb17d3dc3f99e6e48c8) names the root cause as a nested self-referential multicall. The router's authorization check returned true whenever the call target was the router itself. That let an outer batched call execute with the router's trusted identity, and a second batched call made from inside that context was then trusted by the enabled Safe module and executed through a delegated call. The module unwrapped the wallet's Aave-wrapped rsETH into raw rsETH and routed it toward a malicious pool hook.

Nothing in that chain was a coding mistake in the conventional sense. Each component enforced exactly the rule it was written to enforce. Researchers said the attack did not stem from a flaw in Kelp DAO's core rsETH contracts, and Kelp froze the receiving address. The attacker never collected: a maximal extractable value bot known as yoink detected the pending transaction, front-ran it, and kept about 2,882 rsETH, worth roughly $7.7 million after its own conversion and validator payment. The recovery, such as it was, came from a searcher's profit motive and an issuer's freeze function rather than from any security control the wallet owner had chosen.

A smaller incident on Citrea shows how an ordinary logic defect still works. Zentra Finance lost about $143,000 from its ctUSD reserve. Its lending core is a fork of Aave V3, and [the published exploit](https://github.com/SunWeb3Sec/DeFiHackLabs/commit/f310fcaafefcc6af92b8a5bc3ca3dc3b569f29c5) shows a burn safeguard that clamps the burned amount to zero when the caller holds no interest-bearing tokens. The burn then does nothing and does not revert, while the pool still records the debt as fully repaid. The attacker flash-loaned funds, supplied collateral, borrowed, repaid with tokens it did not hold, withdrew, and repeated the cycle.

[Rekt's running ledger](https://www.rekt.news/) sets out the third and most uncomfortable case. On Cronos, an attacker inflated the price of the TONIC token roughly 300 times and borrowed $120.4 million from the Tectonic lending market against the inflated collateral. Validators rolled the chain back 10,961 blocks and recovered $111.2 million, leaving $9.19 million that had already bridged out. The same ledger records a shared Cosmos-based balance-inflation bug that hit MANTRA, TAC, KiiChain and Nesa, including 148.3 million KII worth about $9.7 million and a Nesa position whose headline value reached roughly $50 million but netted the attacker far less after slippage.

Three incidents, three outcomes, one variable. Funds came back when a bot happened to hold them and an issuer could freeze an address, or when validators agreed to rewrite ten thousand blocks of history. Where no one held that power, the money stayed gone. Users choosing between chains are also choosing who can reverse a transaction, and a network capable of undoing a theft is capable of undoing anything else.

## What this means

The failure surface has moved away from audited contract code and onto privileged operational infrastructure: routers with self-trusting authorization, custom wallet modules, forked lending cores, and validator sets willing to reorganize a chain. Depositors in restaking and lending products are the exposed party, because the component that loses their money may pass every audit scoped to on-chain code. For chains, the trade is explicit. Cronos protected $111.2 million by proving that its validators can reverse settlement, which is the same capability that makes its ledger a weaker guarantee for anyone who needs finality.

## What to watch

- Whether Kelp's address freeze results in any return to the wallet owner, or whether the maximal extractable value bot keeps the proceeds, which would set a precedent for how accidental custody of stolen funds gets resolved.
- Whether more Aave forks are found to carry the same zero-clamp repayment defect, since a shared codebase means a shared bug across every chain that deployed it.
- Whether other Cosmos-based chains patch the balance-inflation bug before attackers reach them, and whether any chain follows Cronos in reversing blocks to recover funds.
