Аналіз інциденту атаки на Cellframe Network за допомогою Термінових позик
1 червня 2023 року о 10:07:55 (UTC+8) мережа Cellframe зазнала атаки хакерів через проблему з обчисленням кількості токенів під час процесу міграції ліквідності на певному смарт-ланцюзі. Ця атака призвела до прибутку хакерів у розмірі 76,112 доларів.
Основна причина атаки
Основною причиною атаки є проблема обчислення під час процесу міграції ліквідності.
Детальний опис процесу атаки
Атакуючий спочатку отримує 1000 нативних токенів певного блокчейну та 500000 токенів New Cell через Термінові позики. Потім він обмінює всі токени New Cell на нативні токени, що призводить до зменшення кількості нативних токенів у ліквідному пулі до майже нуля. І, нарешті, обмінює 900 нативних токенів на токени Old Cell.
Варто звернути увагу на те, що зловмисник перед проведенням атаки спочатку додав ліквідність Old Cell та рідних токенів, отримавши Old lp.
Наступним кроком атакуючий викликав функцію міграції ліквідності. На цьому етапі в новому пулі майже немає рідних токенів, а в старому пулі майже немає токенів Old Cell. Процес міграції включає такі етапи:
Видалити стару ліквідність та повернути відповідну кількість токенів користувачеві
Додавати нову ліквідність відповідно до пропорцій нового пулу
Оскільки у старому пулі практично немає токенів Old Cell, кількість отриманих рідних токенів при видаленні ліквідності збільшується, тоді як кількість токенів Old Cell зменшується. Це призводить до того, що користувачам потрібно додати лише невелику кількість рідних токенів і токенів New Cell, щоб отримати ліквідність, а надлишкові рідні токени та токени Old Cell повертаються користувачеві.
Нарешті, зловмисник видаляє ліквідність нового пулу і обмінює повернуті токени Old Cell на рідні токени. На цей момент у старому пулі є велика кількість токенів Old Cell, але немає рідних токенів, зловмисник знову обмінює токени Old Cell на рідні токени, завершуючи прибуток. Потім зловмисник повторює операцію міграції.
Рекомендації з безпеки
При міграції ліквідності слід всебічно враховувати зміни кількості двох токенів у новому та старому пулі, а також поточну ціну токенів, щоб уникнути покладання лише на кількість двох токенів у торговій парі для розрахунків, щоб запобігти маніпуляціям.
Перед запуском коду обов'язково проведіть всебічний аудит безпеки, щоб зменшити потенційні ризики.
Ця подія ще раз нагадує нам, що при обробці складних фінансових операцій, особливо тих, що стосуються обміну токенів і управління ліквідністю, потрібно бути особливо обережними та вживати багатоступеневих заходів безпеки. Одночасно це підкреслює важливість проведення всебічного аудиту безпеки смарт-контрактів.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
17 лайків
Нагородити
17
7
Репост
Поділіться
Прокоментувати
0/400
TestnetScholar
· 07-26 07:37
Вже червень, а такі вразливості ще є?
Переглянути оригіналвідповісти на0
MimiShrimpChips
· 07-25 15:29
Протягом останніх двох років одні й ті ж самі мелодії знову і знову звучали, кілька десятків тисяч гривень для маркетмейкера — це не більше ніж нічого.
Cellframe Network зазнав флеш-атаки, Хакер отримав прибуток у 76 000 доларів.
Аналіз інциденту атаки на Cellframe Network за допомогою Термінових позик
1 червня 2023 року о 10:07:55 (UTC+8) мережа Cellframe зазнала атаки хакерів через проблему з обчисленням кількості токенів під час процесу міграції ліквідності на певному смарт-ланцюзі. Ця атака призвела до прибутку хакерів у розмірі 76,112 доларів.
Основна причина атаки
Основною причиною атаки є проблема обчислення під час процесу міграції ліквідності.
Детальний опис процесу атаки
Наступним кроком атакуючий викликав функцію міграції ліквідності. На цьому етапі в новому пулі майже немає рідних токенів, а в старому пулі майже немає токенів Old Cell. Процес міграції включає такі етапи:
Оскільки у старому пулі практично немає токенів Old Cell, кількість отриманих рідних токенів при видаленні ліквідності збільшується, тоді як кількість токенів Old Cell зменшується. Це призводить до того, що користувачам потрібно додати лише невелику кількість рідних токенів і токенів New Cell, щоб отримати ліквідність, а надлишкові рідні токени та токени Old Cell повертаються користувачеві.
Рекомендації з безпеки
При міграції ліквідності слід всебічно враховувати зміни кількості двох токенів у новому та старому пулі, а також поточну ціну токенів, щоб уникнути покладання лише на кількість двох токенів у торговій парі для розрахунків, щоб запобігти маніпуляціям.
Перед запуском коду обов'язково проведіть всебічний аудит безпеки, щоб зменшити потенційні ризики.
Ця подія ще раз нагадує нам, що при обробці складних фінансових операцій, особливо тих, що стосуються обміну токенів і управління ліквідністю, потрібно бути особливо обережними та вживати багатоступеневих заходів безпеки. Одночасно це підкреслює важливість проведення всебічного аудиту безпеки смарт-контрактів.