Decentralized finance protocol Yearn Finance has published a detailed post-mortem on last week’s yETH exploit, laying out how a numerical bug in its legacy stableswap pool allowed an attacker to mint a near-infinite amount of LP tokens and drain roughly $9 million in assets.
The yield farming platform also confirmed that it has recovered a portion of the stolen funds.
In the incident breakdown, Yearn said the yETH weighted stableswap pool on Ethereum was exploited at block 23,914,086 on Nov. 30, 2025, following “a complex sequence of operations” that first pushed the pool’s internal solver into a divergent state and eventually triggered an arithmetic underflow.
Yearn emphasized that its v2 and v3 vaults and other products “were not affected,” with the impact isolated to yETH and its direct integrations.
The exploit targeted a custom stableswap pool that aggregates multiple liquid staking tokens (LSTs) — including apxETH, sfrxETH, wstETH, cbETH, rETH, ETHx, mETH, and wOETH — plus a yETH/WETH Curve pool.
Pre-exploit, those pools held a combined basket of LSTs and 298.35 WETH, according to Yearn’s asset snapshot.
Three-phase exploit and ‘infinite mint’ path
Yearn’s post-mortem breaks the attack into three phases.
First, the attacker used extremely imbalanced “add_liquidity deposits” to force the pool’s fixed-point solver into a regime it “was not designed to handle.”
That caused an internal product term, denoted Π, to collapse to zero, breaking the weighted-stableswap invariant and allowing the protocol to significantly over-mint yETH LP tokens for the attacker relative to the value of their deposits.
With over-minted LP tokens in hand, the attacker then repeatedly called “remove_liquidity” and related functions, draining nearly all LST liquidity while offloading the cost of the over-mint onto protocol-owned liquidity (POL) held in the staking contract. Yearn said this process drove the pool’s internal supply to zero while ERC-20 balances still existed.
In the final phase, the attacker re-entered a “bootstrap” initialization path intended only for the pool’s first launch. By depositing a crafted “dust” configuration that violated a key domain condition, they triggered an “unsafe_sub operation” in the solver that underflowed, minting a gigantic amount of yETH LP tokens.
Yearn’s post-mortem described this as an “infinite-mint” scale, which was then used to drain the yETH/ETH Curve pool.
Recovery and governance stance
The disclosure confirms that 857.49 pxETH has been recovered so far, in coordination with the Plume and Dinero teams, and notes that a recovery transaction was executed on Dec. 1.
Those funds will be distributed pro rata to yETH depositors based on balances immediately before the exploit, with additional recoveries — whether from the attacker or further tracing — also earmarked for depositors.
Yearn’s timeline shows that a war room was convened about 20 minutes after the exploit, SEAL 911 was engaged shortly after, and 1,000 ETH of the stolen funds were sent to Tornado Cash the same evening, with the remainder of the attacker’s funds also routed through Tornado on Dec. 5.
Earlier reporting from The Block highlighted that roughly $3 million worth of ETH moved through the mixer in the immediate aftermath of the attack.
The post-mortem reiterates that yETH is self-governed by its depositors under YIP-72 and explicitly cites the product’s “Use at Own Risk” clause, stating that Yearn contributors and YFI governance are “not liable for reimbursement.” Any recovered assets, it says, will be redistributed to affected users.
On Dec. 1, The Block reported that Yearn had already recovered about $2.4 million in stolen assets tied to the bug, a figure corresponding to the recovered pxETH.
Remediation plan
To address the issues, Yearn detailed a remediation plan that includes enforcing explicit domain checks on the solver and treating Π = 0 as a fatal condition, replacing unsafe arithmetic with checked math in critical sections, and gating or disabling bootstrap logic once a pool is live.
The team also plans to introduce hard caps that tie LP issuance to the value of user deposits and expand its testing approach with more aggressive invariant-focused fuzzing, adversarial numerical test cases, and differential testing against offchain models.
Yearn credits ChainSecurity for supporting root-cause analysis and SEAL 911 for assisting with incident response and asset recovery, and says technical analysis, recovery efforts and monitoring of attacker-linked flows remain ongoing.
© 2025 The Block. All Rights Reserved. This article is provided for informational purposes only. It is not offered or intended to be used as legal, tax, investment, financial, or other advice.