DeFi-сектор знову став ареною для атаки: цього разу під удар потрапив протокол Notional Finance. Інцидент стався 4 вересня, і, як показує мій аналіз, корінь проблеми криється в застарілому смарт-контракті першої версії (V1), який так і не був повністю деактивований після міграції на нову архітектуру.

Зловмисник виявив критичну вразливість, пов'язану з некоректним перетворенням типів даних. У результаті штучно згенерована заборгованість під час перевірки забезпечення відображалася як нульова. Це класичний випадок маніпуляції з логікою валідації, коли система бачить не те, що є насправді, а те, що підсунув атакуючий. Такий підхід дозволяє обійти механізми безпеки, не вдаючись до грубого зламу.

За моїми даними, хакеру вдалося вивести з контракту близько 69 000 DAI та 1,66 млн USDC. Сумарні збитки перевищили $1,7 млн, що підтверджує серйозність проблеми навіть для протоколів, які вважаються загартованими в боях. Фахівці з безпеки, зокрема команда CertiK, оперативно відреагували на інцидент і зафіксували сліди атаки.

Примітно, що викрадені активи не залишилися в оригінальному вигляді. Кіберзлочинець конвертував їх у приблизно 689 ETH і спрямував кошти в Tornado Cash. Використання міксера — стандартний крок для приховування слідів, що ускладнює відстеження транзакцій і повернення коштів. Це підкреслює, наскільки важливо для проєктів не лише закривати вразливості, а й впроваджувати механізми моніторингу підозрілої активності.

Висновки аналітика

Цей випадок — чергове нагадування про те, що DeFi-протоколи повинні приділяти особливу увагу життєвому циклу смарт-контрактів. Залишення старих версій активними після апгрейду — це бомба сповільненої дії. На мою думку, Notional Finance варто було б провести повний аудит усіх невикористовуваних контрактів і впровадити автоматичні "запобіжники", які блокують операції з підозрілими параметрами. Індустрія вчиться на помилках, але ціна цих уроків стає дедалі вищою.