## Incident Overview - A liquidation occurred in the `rETH Stability Pool Strategy` of the `yUSND vault` ([Nerite’s USND](https://www.nerite.org/) Tokenized Stability Pool vault) - While auctioning off the `rETH` liquidation rewards back into `USND`, the strategy incurred significant losses - Losses were caused by insufficient `USND` liquidity to absorb the large volume of collateral rewards being sold, resulting in severe slippage during the `rETH --> USND` conversions - Yearn fully absorbed the loss, ensuring user principal was unaffected. Only the vault’s realized yield potential was impacted ## Background The `yUSND vault` allocates deposited `USND` into the various [Nerite Stability Pools](https://app.nerite.org/earn). Stability Pool depositors earn rewards from three sources: 1. A portion of the total interest paid by stablecoin minters (payed in `USND`) 2. Upfront minting fees (also payed in `USND`) 3. Liquidation rewards (payed in collateral tokens) For example, if a liquidation occurs in the `rETH` collateral branch: • The Stability Pool provides `USND` liquidity to process the liquidation • In return, depositors in that branch’s pool receive the liquidated collateral (`rETH`) This means a depositor’s stablecoin balance in a Stability Pool may decrease during a liquidation, but they receive collateral tokens in return. The strategy design is to sell those collateral tokens promptly in order to restore holdings to USND while minimizng exchange risk exposure and compound yield for depositors. ## Incident Details During a liquidation event in the `rETH Stability Pool`, the strategy received approximately `17.02 rETH` as collateral rewards. To convert these rewards back into the stablecoin `USND`, the strategy initiated a [dutch auction](https://mirror.xyz/0x70aE22ae821d34DC80ecD712D60f5e64e8b10010/dfiS3TxZ1x--p2XIxyKSdshPUqDoGmzFDI_KS7_OxCg). The auction resulted in repeated swaps along the `WETH --> USND` route. Because available `USND` liquidity was insufficient to absorb the entire amount in a short period, the conversions suffered from severe slippage. This significantly reduced the recovered proceeds. ## Impact #### Auction Outcome - Input: `~17.02 rETH` (valued at `~$78,660.21`) - Output: `~46,800 USND` #### Strategy PnL - `TotalAssets` before: `~133,344 USND` - `TotalAssets` after: `~107,795 USND` - Realized Loss: `~25,546 USND` (`~5.2%` drawdown for `yUSND` depositors, based on a decrease of `25,549` from `443,795` `totalAssets`) ## Strategy Upgrades Following the incident, a series of improvements were implemented across all `yBOLD` strategies - including `yBOLD`, `sUSDaf`, and `yUSND` to reduce the likelihood and potential impact of similar events: 1. Liquidated collateral is now auctioned in smaller tranches rather than a single large batch. Each auction begins near the collateral’s current market price, allowing it to clear quickly and minimize exposure to price volatility While this approach increases short-term exchange-rate exposure, it significantly reduces the risk of slippage-induced losses. In practice, auctions have been observed to settle within ~15 minutes, indicating that this trade-off is well justified 2. Auctions now incorporate a price-guard mechanism that automatically halts the process if the clearing price drops below the prevailing market rate 3. A new monitoring layer now tracks (1) keepers to make sure they are kicking auctions as expected, and (2) active auctions on Arbitrum 4. Strategy management now operates a `CoW Protocol` taker bot on Arbitrum to increase competition among takers during auctions ## Yearn Response Timeline 1. **Auction Initiated** - `Strategy` kicks Dutch auction for `rETH` rewards; liquidity concerns identified (28 September ~17:20 UTC) 2. **Initial Assessment** - Team reviews potential impact and steps forward (28 September ~17:25 UTC) 3. **Loss Covered** - Transaction executed from aChad multisig (11 October ~19:30 UTC) 4. **Public Announcement** - Communication shared publicly (26 November) ## References - [yUSND](https://arbiscan.io/address/0x252b965400862d94BDa35FeCF7Ee0f204a53Cc36) - [yUSND's rETH Stability Pool Strategy](https://arbiscan.io/address/0xDAbdD3BD55d55927847510703C0fd7Eb0Af98f52) - [Auction kick transaction](https://arbiscan.io/tx/0x40df290b25f75ca6b558e3f546169944d736c72e3aecaaf6816f41632b5528c0) - [Auction contract](https://arbiscan.io/address/0xeB31CDA250C390c962E3e9549271E4C049103576) - [Balancer liquidity](https://balancer.fi/pools?textSearch=usnd) (and snapshot as of time of writing): ![image](https://hackmd.io/_uploads/BJVcIzv2xl.png) - [Camelot Exchange](https://app.camelot.exchange/pools/0xA20723963Fb33297a3F5491831742f9B63EFe4f2) (and snapshot as of time of writing): ![image](https://hackmd.io/_uploads/HkeCIMvngg.png) - [Loss cover transaction](https://arbiscan.io/tx/0xa0c7a625abf0e61322ef8f6f590bb62a20bf165dd7532ad5c89a80aeb21a1481) - [Public announcement](https://x.com/johnnyonline_/status/1993653962549899615?s=61)