cbETH Oracle Incident Post-Mortem
At 6:01 PM UTC on February 15, 2026, MIP-X43 was executed, enabling Chainlink OEV wrapper contracts across the core markets on Base and Optimism. One of the oracle configurations contained a critical error: instead of correctly deriving the USD price of cbETH by multiplying the cbETH/ETH feed by the ETH/USD price, the oracle used only the raw cbETH/ETH exchange rate. This misconfiguration caused the oracle to report cbETH’s price as approximately $1.12 (reflecting the cbETH/ETH ratio of ~1.12) rather than the intended market value of roughly $2,200.
As a direct result liquidation bots immediately targeted cbETH collateral positions, seizing large amounts of cbETH while requiring only minimal debt repayment (effectively repaying ~$1 of debt to seize 1 cbETH). This wiped out most or all of the cbETH collateral for many borrowers, while leaving substantial bad debt on their positions since the repaid amount was far below the actual borrowed value. A smaller number of users exploited the distorted pricing to supply minimal collateral, massively over-borrow cbETH at the artificially low reported price, and instantly generate additional bad debt denominated in cbETH. A list of these addresses can be viewed here.
At 6:05 PM UTC on February 15, our monitoring systems detected the oracle discrepancy and alerted us and the Moonwell team. We quickly responded by reducing both the supply and borrow caps for the cbETH market to 0.01, preventing any new borrows and stopping additional users from supplying collateral into the mispriced market. However, liquidations continued because correcting the oracle requires going through a 5-day governance voting and timelock period, which could not be bypassed. As of February 16th, a governance proposal is slated to go up that will patch this error.
When the dust settled 1096.317 cbETH was seized by liquidators, and the protocol was left with $1.78M in bad debt across various markets, with the majority of it in the form of cbETH.
Bad Debt Summary
| Asset | Bad Debt (tokens) | Bad Debt (USD) |
|---|---|---|
| cbETH | 467.7555896 | $ 1,033,393.71 |
| WETH | 239.6643802 | $ 478,998.02 |
| USDC | 232607.2797 | $ 232,584.02 |
| EURC | 9719.35397 | $ 11,566.03 |
| cbBTC | 0.16685141 | $ 11,442.17 |
| cbXRP | 5481.145179 | $ 7,947.66 |
| DAI | 1520.178946 | $ 1,520.03 |
| USDS | 1053.312414 | $ 1,052.15 |
| AERO | 642.4149872 | $ 204.87 |
| MORPHO | 126.2302566 | $ 171.67 |
| wstETH | 0.06824221 | $ 164.49 |
| Total | - | $ 1,779,044.83 |
This link leads to a spreadsheet with multiple tabs containing information on user positions with materialized bad debt, liquidations involving cbETH as collateral, and addresses over-borrowing cbETH.
The following website contains the most up-to-date information on all addresses who were unfairly liquidated during the incident: https://cbeth-remediation.vercel.app/

