Anatomy of a Liquidity Freeze
A forged LayerZero message drained 116,500 rsETH from Kelp DAO. The attacker's collateral loop on Aave triggered the largest confidence-driven liquidity event in the protocol's history. WETH available liquidity fell from $689M to $1.5M in two hours.
Executive Summary
- On April 18, 2026, a forged LayerZero message drained 116,500 rsETH from Kelp DAO's Ethereum adapter, triggering the largest confidence-driven liquidity event in Aave's operational history. Aave V3 Ethereum Core available liquidity contracted from $9.77B to $5.75B within 29 hours (-41.1%) while the protocol's contracts, oracles, and liquidation engine functioned as specified throughout.
- The Kelp DAO rsETH OFT adapter released 116,500 rsETH (~$292M) in a single block. The attacker looped stolen collateral across Aave, Compound, and Euler for ~$236M in WETH and wstETH within 46 minutes, before Kelp's pauseAll fired at 18:21 UTC.
- Aave V3 WETH available liquidity on Ethereum Core collapsed from $689M at 17:00 UTC to $1.5M by 19:00 UTC as utilization reached 100%. USDT and USDC followed within 12 hours as stranded depositors panic-borrowed to exit. Underlying pool balances remained multi-billion dollar throughout. The Protocol Guardian's precautionary WETH freeze at 02:28 UTC on April 19 came roughly seven hours after utilization had already exhausted the pool.
- LlamaRisk scenario analysis puts bad debt at $123.7M to $230.1M. The Arbitrum Security Council's independent freeze of ~30,766 ETH (~$71M) of exploiter funds on April 20 represents ~25% recovery potential. The structural takeaway is a utilization-driven liquidity freeze, not a collateral failure.
The Drain Mechanism
At 17:35 UTC on April 18, Kelp DAO's rsETH Omnichain Fungible Token adapter on Ethereum released 116,500 rsETH to an attacker’s wallet in a single transaction. The authorizing cross-chain message passed a 1-of-1 Decentralized Verifier Network configuration in which LayerZero Labs held sole attestation authority. Per LayerZero's post-mortem, two op-geth RPC nodes the verifier relied on were compromised in advance, with backup endpoints DDoS'd to force failover onto poisoned nodes. A forged packet then cleared verification without any source-side burn.
The on-chain footprint is observable in rsETH transfer volume, which printed its largest daily value on record, and rsETH active addresses, which spiked as stolen collateral was distributed across lending contracts. The adapter balance fell from 116,723 to 223 rsETH in one block, leaving wrapped rsETH on approximately 20 other chains structurally under-collateralized from that block forward.


The Collateral Loop
Across the 46-minute window between the initial release and Kelp's pauseAll at 18:21 UTC, the stolen rsETH was supplied as collateral on Aave V3, Compound V3, and Euler to borrow real ETH-denominated assets.
LlamaRisk's on-chain accounting identifies seven attacker addresses active on Aave V3, which collectively supplied 89,567 rsETH and borrowed 82,650 WETH plus 821 wstETH at up to 93% LTV under E-Mode, extracting approximately $193M.
PeckShield's forensic composite adds ~$39M on Compound V3 and under $1M on Euler, for ~$236M total. The 95% liquidation threshold was never crossed because the Chainlink Exchange Rate oracle continued to price rsETH at its canonical ETH redemption rate.
The oracle was not manipulated and did not malfunction within its design scope. It had no mechanism to detect that the asset had become instantaneously under-backed at the bridge layer, and Aave's automated liquidation engine was therefore never triggered.
The Liquidity Freeze in Five Stages
The Aave V3 available liquidity by token at hourly resolution supports a five-stage decomposition. The metric measures the underlying-asset balance held by each reserve's aToken contract, equal in steady state to total supplied minus total borrowed. It approaches zero when utilization approaches 100%, and the pool has been borrowed out.
A Protocol Guardian freeze is a separate action that prevents new supplies and new borrows but does not restrict withdrawals or reduce available liquidity. Under high-utilization conditions, the underlying supplied balances remain in place; what collapses is the free, withdrawable slice.

Stage 1: Pre-event baseline (17:00 to 18:00 UTC, April 18). Total available liquidity stood at $9.77B at 17:00 UTC. The hour ending 18:00 UTC recorded a -1.3% contraction as the attacker's initial borrow executed.
Stage 2: Exploit window through Kelp pauseAll (18:00 to 19:00 UTC, April 18). Total available liquidity fell $1.56B (-16.2%) in a single hour. WETH collapsed from $665M to $1.5M (-99.8%), USDT fell $616M, and USDC fell $219M. Kelp's pauseAll at 18:21 UTC prevented two additional ~40,000 rsETH packets. Aave's Guardian executed the rsETH freeze at 18:52 UTC across Ethereum and eleven other deployments (freeze transaction), blocking new rsETH deposits and borrows but not restricting the WETH pool, which continued to compress through utilization.
Stage 3: rsETH freeze through WETH freeze (19:00 UTC April 18 to 03:00 UTC April 19). Total available liquidity fell an additional $1.11B (-13.8%) across the eight-hour window. WETH was already at zero, so compression concentrated in USDT and USDC as stranded depositors panic-borrowed stablecoins to exit, at aggregate synthetic-exit borrows of ~$300M per CoinDesk. USDT crossed 1% of pre-event level at 02:00 UTC, USDC at 05:00 UTC.
The Protocol Guardian executed the WETH freeze at 02:28 UTC on April 19 across Core, Prime, Arbitrum, Base, Mantle, and Linea. The freeze blocked new borrows and supplies but did not itself create the zero-liquidity condition, which utilization had produced seven hours earlier. Its practical effect was to close the primary organic pathway for pool replenishment through new deposits.
Stage 4: Post-WETH freeze stabilization (03:00 to 15:00 UTC, April 19). Twelve hours registered a $538M decline (-7.7%), markedly lower than preceding stages. With WETH, USDT, and USDC all at zero, compression shifted to wstETH (-6.1%), WBTC (-7.1%), and AAVE. This represents the transition from panic-driven stablecoin extraction to structural de-risking.
Stage 5: Continued stabilization (15:00 to 22:00 UTC, April 19). A further $673M contraction (-10.5%) brought cumulative available liquidity to $5.75B. wstETH drove the entire decline ($455M, -12.8%), the clearest signal of considered post-panic reassessment among larger holders.
Per CoinDesk, Aave's Ethereum deployment held $14.24B of $17.82B total outstanding borrows, with WETH at 39.49% of the protocol-wide loan book, the structural reason a single LRT failure produced a protocol-wide freeze. The ecosystem-wide footprint is observable in DeFi total value locked, which contracted approximately $13.2B across 48 hours, including on chains with no rsETH exposure.

Differential Token Behavior
Token responses divide cleanly into two groups. Three tokens were driven to effectively zero available liquidity: WETH, USDT, and USDC. DefiLlama's Aave V3 per-asset TVL data confirms that the underlying supplied balances for these three assets remained multi-billion dollar throughout, the balance-side view of the same condition.
Four tokens contracted materially without approaching depletion: wstETH (-7.1%), WBTC (-12.0%), AAVE (-25.2%), and DAI (-63.3%). All other tokens moved less than 10%.
The three zero-depletion assets share one property: they were the canonical borrow-side assets depositors used as exits when withdrawals on their own collateral became unavailable. The USDT-before-USDC depletion sequence reflects relative pool size and borrow-rate dynamics rather than any asset-specific vulnerability.
The Repricing Was Clean
AAVE, the governance token backstopping any residual bad debt through Umbrella, fell approximately 21% from $115 to $90 across April 18 and 19. The AAVE exchange net position change showed a sharp shift toward exchange balances on April 19, and AAVE perpetual funding turned negative alongside the spot move, indicating derivatives traders were paying to hold short exposure rather than chasing the drawdown.


ETH perpetual funding followed the same pattern, with Binance printing -0.0104% on April 19 and -0.0230% on April 20.

Glassnode’s liquidation heatmaps identified a significant cluster of long liquidations stacked around the $2.3k level, which acted as a magnet for the spot move.

By contrast, stETH, weETH, ezETH, and pufETH showed no material peg deviation against ETH across the window. The market priced Kelp-specific risk without repricing the broader LRT category. This was despite the preliminary observation suggesting WBTC, stETH, and weETH had elevated exchange inflows during the event window.

The Absent Contagion
Throughout this incident, the WETH supply fell by 357,861 WETH on April 18, a -16.8% single-day move and the largest daily drop in the series' eight-year history, clearing the prior February 6 Renzo-related record by ~82,000 WETH.

Depositors who exited Aave before WETH utilization reached 100% did not rotate into other DeFi venues; they unwrapped to native ETH. Justin Sun's ~65,584 ETH Aave withdrawal and the attacker's ~82,650 WETH cashout together account for approximately 41% of the day's unwrap volume. The April 19 print showed a modest +38,750 WETH recovery as the panic phase passed. The behavioural signal is flight-to-base-asset across the wider WETH holder base, even on chains and protocols with no rsETH exposure.
On the institutional flow side, the ETH spot ETF net flows recorded five consecutive inflow days ending April 16 at +$60.4M, and April 17 printed +$127.4M.
The first two post-event sessions extended rather than broke the streak: April 20 at +$67.8M and April 21 at +$43.4M, bringing the streak to nine consecutive days and adding $111.2M in post-event activity. BlackRock's ETHA and ETHB together accounted for +$89.3M on April 20 and +$52.5M on April 21, more than the total net on both days, while Fidelity's FETH swung from +$84.1M on April 17 to small outflows, and Grayscale continued its structural bleed. The pattern is continued institutional accumulation with a narrowing composition, consistent with non-BlackRock allocators pausing pending resolution of the Aave bad-debt question rather than liquidating.

The cross-protocol picture is consistent with containment. Morpho Blue's isolated-market architecture absorbed approximately $1M of losses across two of roughly 500 vaults.
SparkLend, which deprecated rsETH as collateral in late January 2026, was entirely unaffected and drew Aave outflows. The Arbitrum Security Council independently froze 30,766 ETH (~$71M) tied to the exploiter on April 20, ~25% of the original drain, if formally returned through coordinated governance.
The data support two coexisting observations. First, behavioural stress at the wrapped-asset layer was real and historic in magnitude. Second, the institutional, structural, and cross-protocol evidence points to a contained rather than systemic repricing of LRT-linked collateral.
The Wrapper Stack Problem
The April 18 losses concentrated in a specific participant type: depositors in a chain of receipt tokens moving from ETH to stETH (Lido), optionally through EigenLayer, to rsETH (Kelp), and finally into Aave as collateral looped back into the same stack. Each wrapper adds a smart-contract surface, a governance surface, and, in the rsETH case, a cross-chain verifier surface. The failure mode is that these surfaces compound multiplicatively. A failure at the deepest layer, the LayerZero 1-of-1 DVN configuration, propagated upward through every layer above it.
The loss distribution maps cleanly: native ETH and stETH holders took zero direct exposure (Lido's staking was unaffected, stETH peg held), rsETH holders at the terminal layer absorbed the direct under-collateralization (~26.46% adapter-backing on L2 rsETH post-drain), and loop-stack participants at the Aave layer absorbed terminal-layer loss plus liquidation risk plus locked-collateral penalty plus ~$300M in synthetic-exit costs.
The critique is architectural, not categorical. LSTs did not fail. What failed is a specific liquid-restaking wrapper configured for cross-chain deployment across ~20 chains with centralized verifier dependencies, a risk surface that does not apply to single-chain staking receipts. Morpho Blue's isolated-market architecture, accepting the same category of LRT collateral, took $1M in losses across two of ~500 vaults. SparkLend had deprecated rsETH in late January 2026 and was unaffected. Within the same ecosystem, on the same day, under the same shock, isolated-market designs produced order-of-magnitude different outcomes than Aave's shared-liquidity model.
Final Thoughts
The April 18 incident is best read as a bridge-layer failure that stressed a shared-liquidity lending design without breaking it. Aave's contracts, oracles, and liquidation engine functioned as specified. The $8.45B of 48-hour outflows and the staged compression from $9.77B to $5.75B unfolded because depositors could not distinguish Kelp-specific impairment from the rest of the protocol's reserves in real time, and the attacker's borrow stacked on a withdrawal wave drove WETH utilization to 100% within 1.4 hours. The Protocol Guardian's WETH freeze at 02:28 UTC on April 19 did not create the zero-liquidity condition; utilization produced it seven hours earlier. The freeze's practical effect was to close the primary pathway for organic replenishment.
The $123.7M to $230.1M bad-debt range is a governance-decision problem rather than a solvency problem, materially narrowed if the Arbitrum $71M freeze is recovered through coordinated governance. Three structural takeaways follow. First, cross-chain verifier configurations warrant the same due diligence as oracle configurations; the Chainlink oracle did what it was designed to do, but the attack fell outside what any price oracle can detect. Second, the three-token depletion pattern of borrow-side WETH plus two stablecoin exits should inform reserve-parameter design at shared-liquidity lending protocols. Third, measurably different outcomes across lending-protocol designs on the same day support the interpretation that architectural choice, shared-liquidity versus isolated-market, is a material input to protocol resilience.
LRT collateral as an asset class survived the stress test; one specific implementation did not. Post-event ETF flow data through April 21 confirms continued institutional accumulation at +$111.2M across two sessions, though with narrowing composition toward BlackRock. The data available as of April 22 is consistent with the event being absorbed as a narrow bridge-verifier failure rather than a broader institutional reassessment of ETH exposure. The remaining open variables are Aave governance convergence on a loss-allocation path and Kelp DAO's decision between uniform socialization and L2-isolated allocation. Should supplier haircuts emerge, and the narrowing ETF composition persist, the repricing of wrapped LRT collateral would extend beyond rsETH. The weight of current evidence points toward the narrower interpretation.
Disclaimer: This report does not provide any investment advice. All data is provided for informational and educational purposes only. No investment decision shall be based on the information provided here, and you are solely responsible for your own investment decisions.
Exchange balances presented are derived from Glassnode’s comprehensive database of address labels, which are amassed through both officially published exchange information and proprietary clustering algorithms. While we strive to ensure the utmost accuracy in representing exchange balances, it is important to note that these figures might not always encapsulate the entirety of an exchange’s reserves, particularly when exchanges refrain from disclosing their official addresses. We urge users to exercise caution and discretion when utilizing these metrics. Glassnode shall not be held responsible for any discrepancies or potential inaccuracies.