Вайб-кодинг із Claude Opus призвів до зламу Moonwell на $1,78 млн
DeFi-протокол Moonwell втратив $1,78 млн через помилку в налаштуванні оракула після оновлення DAO. Аудитор припустив, що причиною інциденту міг стати “вайб-кодинг” із використанням моделі Claude Opus 4.6.
Інцидент стався 15 лютого після активації пропозиції MIP-X43, схваленої DAO проєкту. Оновлення дозволяло укладати контракти з використанням механізму Chainlink OEV на ринках Base та Optimism. Однак саме після цього в роботі одного з оракулів виникла критична помилка.
У чому полягала технічна проблема
Один із цінових оракулів був некоректно налаштований і неправильно визначав доларову вартість Coinbase Wrapped ETH (cbETH).
Замість того щоб множити курс cbETH/ETH на актуальну ціну ETH/USD, система передавала лише співвідношення токенів між собою. У результаті замість реальної ринкової ціни близько $2 200 оракул показував вартість cbETH на рівні приблизно $1,12. Зазначається, що помилка фактично зруйнувала систему забезпечення в протоколі.
Масові ліквідації та атаки ботів
Через аномально занижену ціну активу розпочалася хвиля ліквідацій. Торгові боти почали масово закривати позиції користувачів, у яких забезпеченням виступав cbETH.
Схема була простою: погашаючи приблизно $1 боргу, боти отримували 1096,317 cbETH через перекручені розрахунки. У результаті більшість позичальників втратили значну частину або все своє забезпечення, при цьому їхні боргові зобов’язання залишилися.
Паралельно деякі користувачі скористалися ситуацією та вносили мінімальне забезпечення, щоб позичити cbETH за штучно заниженою ціною.
Після виявлення проблеми команда Moonwell оперативно знизила ліміт запозичення cbETH до 0,01, щоб обмежити подальші ризики для протоколу.
Чи винен штучний інтелект
Аудитор смартконтрактів Pashov звернув увагу, що частина комітів у репозиторії Moonwell була створена у співавторстві з моделлю Claude Opus 4.6.
Він припустив, що вразливий код міг бути згенерований із застосуванням так званого “вайб-кодингу”, підходу, коли розробники активно використовують ШІ для написання коду без достатньо глибокої перевірки.
На його думку, це може бути перший випадок зламу Solidity-коду, створеного за допомогою подібної практики. Водночас експерт наголосив, що відповідальність несе не лише інструмент, а й людина, яка перевіряє й інтегрує згенерований код, а також аудитори безпеки.