Залишки миттєвого зберігання спричинили втрату активів у 300 000 доларів у блокчейні. Розробники повинні бути обережними з ризиками нових функцій.

Смертельний залишок: Аналіз події у 30 тисяч доларів, що сталася внаслідок тимчасового зберігання у блокчейні

30 березня 2025 року, певна система моніторингу безпеки у блокчейні виявила атаку на проект з використанням кредитного плеча в мережі Ethereum, що призвело до збитків понад 300 тисяч доларів. Команда безпеки провела детальний аналіз цього інциденту і тепер ділиться результатами:

Смертельний залишок: злочин на 300 000 доларів у блокчейні, викликаний транзитним зберіганням

Фон

Версія Solidity 0.8.24 впровадила функціонал тимчасового зберігання на основі EIP-1153. Це нове місце для зберігання даних, яке забезпечує розробникам низьковартісний, ефективний під час транзакцій спосіб тимчасового зберігання. Основні характеристики тимчасового зберігання включають:

  1. Низька вартість газу: операція споживає 100 газу, що значно менше, ніж звичайні операції зберігання.
  2. Тривалість даних у транзакції: дані залишаються дійсними протягом усієї транзакції.
  3. Автоматичне очищення: після завершення транзакції тимчасове сховище автоматично скидається до нуля.

Смертельний залишок: в результаті транзитного зберігання стався на 300000 доларів у блокчейні грабіж

Аналіз подій

Основною причиною цього інциденту є те, що значення, які використовуються в tstore для тимчасового зберігання в функції, не очищуються після завершення виклику функції. Зловмисники скористалися цією особливістю, щоб створити певні шкідливі адреси та обійти перевірку прав для виведення токенів.

Кроки атаки такі:

  1. Зловмисник створює два шкідливі токени A та B, а також створює ліквідність для цих двох токенів на певному DEX.

Смертельні залишки: пограбування у блокчейні на 300 тисяч доларів, спричинене тимчасовим зберіганням

  1. Викликати функцію initialize цільового контракту, щоб створити ринкову торгову платформу з важелем, використовуючи токен A як заставу, а токен B як борговий токен.

Смертельні залишки: викрадення в 300 000 доларів, спричинене тимчасовим зберіганням у блокчейні

  1. Викликати функцію mint, вкласти борговий токен B для випуску леверидж-токена. У цьому процесі адреса DEX-пулу та кількість випуску тимчасово зберігаються.

Смертельний залишок: крадіжка в у блокчейні на 300 тисяч доларів, викликана транзитним зберіганням

  1. Створити адресу з кількістю, що дорівнює кількості, випущеній у тимчасовому сховищі, для шахрайського контракту.

Смертельний залишок: злочин у 300 000 доларів, спричинений тимчасовим зберіганням у блокчейні

  1. Використовуючи шкідливий контракт для виклику зворотної функції цільового контракту, обійти автентифікацію, використовуючи залишкові значення в транзитному сховищі.

Смертельні залишки: пограбування у блокчейні на 300 тисяч доларів, викликане тимчасовим зберіганням

  1. Нарешті, зловмисник, атакуючи контракт, безпосередньо викликає зворотний виклик цільового контракту, виводячи інші токени (такі як WBTC, WETH) для отримання прибутку.

Смертельний залишок: напад на 300 тисяч доларів у блокчейні, спричинений миттєвим зберіганням

Потоки коштів

Згідно з даними інструментів аналізу у блокчейні, зловмисники вкрали близько 300 тисяч доларів активів, включаючи:

  • 17 814,8626 доларів США
  • 1,4085 WBTC
  • 119.871 ЗХ.

Ці активи потім були обміняні на WETH, загалом 193.1428 WETH були переведені в певний анонімний інструмент. Початкове фінансування зловмисника походило з 0.3 ETH, переведених у цей інструмент.

Смертельні залишки: крадіжка у блокчейні на 300 тисяч доларів, викликана транзитним зберіганням

Рекомендації з безпеки

  1. Проект повинен відповідно до бізнес-логіки відразу після завершення виклику функції використовувати tstore(key, 0) для очищення значень у тимчасовому сховищі.

Смертельний залишок: пограбування у 300 000 доларів, спричинене тимчасовим зберіганням у блокчейні

  1. Посилити аудит коду контрактів та безпекове тестування, зокрема звернути увагу на нові мовні особливості та їх потенційні ризики.

Смертельні залишки: пограбування на 300 000 доларів, викликане транзиторним зберіганням у блокчейні

  1. Запровадження багатократних механізмів перевірки, щоб уникнути масових втрат активів через єдину вразливість.

Смертельні залишки: пограбування у 300 000 доларів, викликане миттєвим зберіганням у блокчейні

  1. Регулярно проводити оцінку безпеки та сканування на вразливості, своєчасно усували потенційні проблеми.

Смертельний залишок: справа, що викликала крадіжку у блокчейні на 300 тисяч доларів

  1. Розглянути можливість впровадження системи безпекового моніторингу для реального відстеження аномальної торгової поведінки.

Смертельний залишок: пограбування у 300 000 доларів, викликане миттєвим зберіганням у блокчейні

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

Смертельні залишки: злочин на 300 000 доларів у блокчейні, спричинений транзитним зберіганням

Смертельний залишок: злочин у 30 тисяч доларів у блокчейні, спричинений тимчасовим зберіганням

Смертельна залишкова: крадіжка у блокчейні на 300 тисяч доларів, викликана транзитним зберіганням

Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 5
  • Поділіться
Прокоментувати
0/400
MemeTokenGeniusvip
· 07-22 16:28
30w доларів так просто зникло? Скільки людей загинуло?
Переглянути оригіналвідповісти на0
WhaleStalkervip
· 07-21 21:55
Ще один смартконтракт впав у яму
Переглянути оригіналвідповісти на0
GateUser-1a2ed0b9vip
· 07-19 16:59
Знову хтось провалився. Хто сказав тобі жадати дешевизни.
Переглянути оригіналвідповісти на0
ProxyCollectorvip
· 07-19 16:55
знову обдурювали людей, як лохів 30w, тс-тс
Переглянути оригіналвідповісти на0
BugBountyHuntervip
· 07-19 16:50
Справжній•швидкість ловлі комах MAX!
Переглянути оригіналвідповісти на0
  • Закріпити