Атака миттєвого кредиту: зворотний бік DeFi
Миттєвий кредит або флешкредит — функція деяких DeFi-платформ, що пропонує будь-якому користувачеві моментальне позичання криптовалюти без заставних коштів та перевірки платоспроможності. Цю функцію навчилися використовувати шахраї.
Легкість і швидкість, з якими можна отримати величезну суму в обмін на зобов'язання повернути кошти у призначений час, приваблюють велику кількість трейдерів, арбітражників та, звичайно, хакерів. Якщо першим потрібні гроші для спекуляцій на ціні активу, останні використовують миттєві кредити для крадіжки криптовалюти зі сторонніх вразливих dApps.
Зломи DeFi-застосунків із використанням незабезпеченої позики вважаються найдешевшими та невловними. Тому зловмисники практикують цей спосіб найчастіше. Зрештою сформувалася ціла категорія експлойтів, що отримала назву — атака миттєвого кредиту (Flash Loan Attack).
Як відбувається атака миттєвого кредиту?
Хакер бере флешкредит у DeFi-застосунку. Зазвичай йдеться про крипту на десятки мільйонів доларів. Подальші дії залежать від стратегії, тактики, слабких місць обраної жертви та цілей зловмисника.
Він може почати маніпулювати ціною отриманого активу на певній біржі, скориставшись недосконалістю блокчейн-оракула.
Але найчастіше хакери попередньо знаходять недоліки та неточності в коді смартконтракту, які можна застосувати для крадіжки цифрових активів. Миттєві кредити потрібні їм, щоб скористатися послугами вразливої платформи DeFi для збільшення початкового депозиту та викрадення коштів. Після отриманого профіту зловмисник повертає первинно запозичені криптовалюти, тому що без цієї умови його кредит анулюється, що порушить історію транзакцій та всю схему. Все це може відбуватися протягом 10 хвилин (точніше — це час формування блоку в блокчейні).
Остання гучна атака з використанням флешкредиту відбулася у березні 2023 року. Цей випадок наочно ілюструє те, як працює такий тип експлойту.
Хакер отримав миттєву позику на суму $30 млн у стейблкоїнах DAI від платформи Aave. Потім він переказав 20 млн DAI під заставу на майданчик Euler Finance, щоб позичати Х10 від початкових коштів. Зробив він це, щоб скористатися вразливістю у смартконтракті, яка дала змогу спрямувати всі кошти на свою адресу.
Зрештою платформа криптокредитування Euler Finance втратила майже $200 млн, а її власний токен EUL обвалився на 45%. Однак після цього інциденту почалися тривалі переговори з хакером і прохання повернути кошти від користувачів майданчика. За повідомленнями Euler Finance, хакер відшкодував збитки і навіть попросив вибачення.
Як DeFi-платформи протидіють цьому?
На щастя, існують інструменти та заходи профілактики, які захищають застосунки децентралізованих фінансів від великих втрат. Наприклад, для запобігання маніпулюванню ціною на DEX можна встановити автоматичний алгоритм, який блокуватиме торгівлю за умов низької ліквідності, раптового падіння або зростання котирувань. Якщо хакер виявить такий механізм на платформі, навряд він використовуватиме миттєвий кредит для атаки на торговий майданчик.
Ключові засоби захисту:
• інструменти, які дають змогу контролювати доступ до певних функцій платформи;
• використання перевірених бібліотек та фреймворків для запуску смартконтрактів. До таких належить OpenZeppelin;
• проведення аудиту смартконтрактів від компаній, що працюють над кібербезпекою блокчейнів та заслуговують на довіру;
• під’єднання різних блокчейн-оракулів для правдивіших цінових даних.
Крім цього, обережні платформи DeFi встановлюють обмеження на видавання миттєвих кредитів та інші послуги, що стосуються позичання коштів. Наявність лімітів дає змогу знизити ризик проведення атаки флешкредиту. Адже хакерів приваблює можливість оперувати великою сумою у межах однієї транзакції.
Тимчасове блокування використання криптовалют після видавання суми позичання також відштовхує зловмисників. У такому разі можна перевірити деталі угоди на виявлення підозрілих нюансів.
Втім, досить часті атаки Flash Loan свідчать про те, що далеко не всі DeFi-платформи вдаються до використання методів протидії.