KVORUM
aaveSource: Aave governance v3 · #478

rsETH Incident: Liquidate rsETH attacker positions

executedMay 5, 2026, 05:56 PM UTCby660x66a2…73ff

01Summary

AISummary by Kvorumclaude-haiku-4-5

This proposal executes liquidations against 8 attacker positions across Aave V3 Ethereum Core and Arbitrum that hold 89,567 rsETH collateral obtained from the April 18, 2026 Kelp LayerZero V2 incident. The liquidations will seize the rsETH, convert borrowed WETH/wstETH into deficit, and transfer recovered collateral to a Recovery Guardian multisig to manage the incident resolution. Temporary permissions are granted to the Recovery Guardian to adjust risk parameters and eliminate deficits as needed.

Type
protocol addition

Key changes

  • Execute liquidations against 8 identified attacker positions holding 89,567 rsETH collateral across Ethereum Core and Arbitrum(high)
  • Transfer seized rsETH collateral to Recovery Guardian multisig (0x53cb4BB8F61fa45405dC75F476FaDAd801e653D9) for incident resolution(high)
  • Convert 82,650 WETH and 821 wstETH borrowed debt into deficit to stop interest accrual(high)
  • Grant temporary permissions to Recovery Guardian to adjust Umbrella parameters and eliminate deficits on both chains(medium)
  • Adjust Umbrella parameters to account for potential deficit increase up to total attacker debt, preventing slashing of Umbrella stakers(medium)

Notable concerns

  • Liquidation execution is conditional on positions remaining eligible at execution time; actual recovery may differ from current exposure values
  • Umbrella stakers are exposed to deficit risk, though parameters are configured to prevent slashing from this incident
  • Recovery Guardian permissions to eliminate deficits and adjust risk parameters are temporary but represent significant protocol authority delegation
ContractsAave V3 Ethereum CoreAave V3 ArbitrumUmbrella risk module
Generated by Kvorum
model: claude-haiku-4-5
provider: anthropic
profile: anthropic-fast-v1
prompt: v1.0
generated: 2mo ago
Read the description ↗

02Description

774 words

Simple Summary

As part of the Defi United recovery effort and technical plan, this proposal executes liquidations against the identified rsETH attacker’s positions on Aave V3 Ethereum Core and Aave V3 Arbitrum, subject to each position being eligible for liquidation at execution time.

The proposal is intended to reduce outstanding bad debt risk, recover available rsETH collateral through normal Aave liquidation mechanics, and route any recovered value according to the DAO-approved rsETH incident recovery process.

Motivation

On April 18, 2026, an external incident affecting Kelp’s LayerZero V2 Unichain–Ethereum rsETH route released 116,500 rsETH from the Ethereum-side OFT adapter to the attacker without a corresponding burn on the source chain. The incident was external to Aave. Aave’s smart contracts, oracles, repayment, and liquidation logic continued to function as designed. However, the attacker supplied 89,567 rsETH into Aave V3 and borrowed WETH and wstETH across Ethereum Core and Arbitrum markets.

These positions introduce direct protocol exposure backed by compromised rsETH. As rsETH accounting, backing, and redemption depend on external parties (Kelp, LayerZero, and others), the DAO should leverage protocol mechanisms to reduce risk. Executing standard Aave V3 liquidations on the attacker positions is the most straightforward path to recover rsETH collateral and contain bad debt exposure. This path prevents the attacker from withdrawing rsETH collateral, and allows the protocol to secure the collateral and halt further risk accumulation.

Specification

This proposal authorizes and executes liquidation calls against the known rsETH exploit attacker positions on Aave V3 Ethereum Core and Aave V3 Arbitrum.

Target Positions

MarketAttacker AddressCollateral SuppliedDebt BorrowedAction
Ethereum Core0x1f4c1c2e610f089d6914c4448e6f21cb0db3adef53,000.00 rsETH52,460.33 WETHLiquidate if eligible
Ethereum Core0x8d11aeac74267dd5c56d371bf4ae1afa174c2d49400.00 rsETH394.06 WETHLiquidate if eligible
Arbitrum0xeba786c9517a4823a5cfd9c72e4e80bf8168129b12,573.80 rsETH12,385.93 WETHLiquidate if eligible
Arbitrum0xcbb24a6b4dafaaa1a759a2f413ea0eb6ae1455cc9,299.00 rsETH4,309.21 WETH and 8.13 wstETHLiquidate if eligible
Arbitrum0x1b748b680373a1dd70a2319261328cab2a6f644c8,000.00 rsETH7,880.48 WETHLiquidate if eligible
Arbitrum0xbb6a6006eb71205e977eceb19fcad1c8d631c787770.00 rsETH758.50 WETHLiquidate if eligible
Arbitrum0x8d11aeac74267dd5c56d371bf4ae1afa174c2d491,024.43 rsETH28.69 WETH and 813.12 wstETHLiquidate if eligible
Arbitrum0xe9e2f48bb0018276391aec240abb46e8c3cad1814,500.00 rsETH4,432.77 WETHLiquidate if eligible

Aggregate Attacker Exposure

Collateral SuppliedWETH BorrowedwstETH Borrowed
89,567 rsETH82,650 WETH821 wstETH

Debt balances may differ slightly at proposal submission because borrow balances accrue continuously.

Payload Actions

The main objective of the payload is to seize the rsETH collateral from the attacker’s positions while ensuring no impact to the rest of users. The recovered rsETH will be transferred to a newly created multisig wallet, the Recovery Guardian (0x53cb4BB8F61fa45405dC75F476FaDAd801e653D9), which will act on behalf of the DAO to manage and resolve the rsETH incident. This Safe wallet is composed of DAO Service Providers and will hold the collateral and execute the necessary actions for resolution.

The proposal also grants temporary permissions to the Recovery Guardian to update Umbrella parameters if needed. However, Umbrella is already configured within this proposal to account for the potential increase in deficit (up to the total attacker debt at the time of the exploit), ensuring that Umbrella stakers are not impacted (e.g., no slashing can occur) by this proposal. Additionally, the Recovery Guardian is granted permission to eliminate deficits on Aave V3 Ethereum Core and Arbitrum markets, enabling the protocol to clear bad debt and prevent further risk. Both permissions are intended to be revoked once the incident is resolved.

For each attacker position, the proposal executes the following steps:

  1. Fetch position data and involved assets.
  2. Adjust risk parameters to make the position eligible for liquidation.
  3. Execute liquidations for rsETH/WETH or rsETH/wstETH on the relevant Aave V3 markets.
  4. Convert WETH or wstETH debt into deficit (no longer accruing interest).
  5. Transfer the seized rsETH collateral to the Recovery Guardian.

References

Copyright

Copyright and related rights waived via CC0.

03Mismatch analysis

AIMismatch analysis by Kvorumlow confidenceclaude-sonnet-5
Consistent

The decoded calldata exposes only two generic execute() calls (fallback pattern) to two payload contract addresses, both on chain 0x1 (Ethereum), with no decoded internal arguments. This matches the standard Aave Governance v3 pattern where a proposal action is a delegatecall to a deployed 'Payload' contract whose internal logic (parameter changes, liquidation calls, deficit conversions, transfers, permission grants) is not exposed in the top-level decoded calldata — the description points to the corresponding GitHub payload source files for that logic. Because of this opacity, I cannot verify specific claims such as the exact liquidation targets, the destination address for seized rsETH, the Umbrella configuration, or the granted permissions directly against the calldata. Notably, the description also describes six Arbitrum-side liquidation payloads (referenced in the Implementation links), but the decoded action set contains only two actions, both targeting chain 0x1, with no visible Arbitrum-chain (42161) action. This could be explained by cross-chain messaging invoked internally within the opaque execute() calls (a common Aave cross-chain governance pattern), but this cannot be confirmed from the data provided. Given the lack of visibility into the payload internals, I cannot responsibly assert a specific value, target, or omission mismatch — doing so would be guessing. There is no evidence contradicting the description, but there is also insufficient decoded detail to fully corroborate it, so confidence is low and no discrepancies are flagged despite the apparent chain-coverage gap in the visible action list.

Generated by Kvorum
model: claude-sonnet-5
provider: anthropic
profile: anthropic-strong-v1
prompt: v1.0
generated: 2mo ago
Review the decoded actions ↗

04Actions

2 total
#0fallback()chain 0x1
Target
0x0cd3…053c
Value
0 wei
Function
fallback()
Arguments
{}
Calldata
#0fallback()chain 0x1
Target
0x43ee…a12e
Value
0 wei
Function
fallback()
Arguments
{}
Calldata

05Tally

Summed from votes

Voters34
VP participating370.7K
Outcome (current)For
Current support100%

06Voters

34 total
Filter:
VoterChoice% of totalRationale
200x2079…d6ceFor123.6K33.34%—6mo ago
8B0x8b37…2a22For75.8K20.44%—6mo ago
2C0x2cc1…4df1For72.2K19.48%—6mo ago
B90xb933…8dd1For44.2K11.93%—6mo ago
360x3676…574dFor25K6.74%—6mo ago
DF0xdf71…a51fFor11.6K3.13%—6mo ago
070x0703…961bFor10K2.70%—6mo ago
EC0xecc2…6ac9For4.4K1.20%—6mo ago
6E0x6e3b…e13dFor1K0.27%—6mo ago
AA0xaaab…2335For987.20.27%—6mo ago
440x4444…34b3For588.30.16%—6mo ago
B90xb9f7…4060For554.70.15%—6mo ago
3D0x3ddc…05b0For518.10.14%—6mo ago
7F0x7fd5…caafFor104.90.03%—6mo ago
EC0xec35…939dFor30.30.01%—6mo ago
720x7204…6f00For15.50.00%—6mo ago
880x88c4…2fddFor11.70.00%—6mo ago
660x66f1…571fFor9.70.00%—6mo ago
2F0x2f2f…f78aFor5.20.00%—6mo ago
6D0x6d29…6c8eFor3.20.00%—6mo ago
050x0579…4048For10.00%—6mo ago
8C0x8c3a…aa35For0.40.00%—6mo ago
6C0x6c2e…3c04For0.40.00%—6mo ago
2C0x2c59…bb5eFor0.10.00%—6mo ago
160x168f…7400For0.10.00%—6mo ago
B80xb8f0…5e12For0.10.00%—6mo ago
530x53da…c14bFor00.00%—6mo ago
A90xa97c…ccc8For00.00%—6mo ago
AD0xadaa…bff0For00.00%—6mo ago
CB0xcb15…a1a0For00.00%—6mo ago
4D0x4d4a…1bdfFor00.00%—6mo ago
3E0x3ec6…cb63Against00.00%—6mo ago
E40xe408…738dFor00.00%—6mo ago
F00xf0b7…7bfeFor00.00%—6mo ago
Showing 34

07Forum

No forum thread is confidently linked to this proposal.