Вразливість миттєвого зберігання призвела до втрати 300 000 доларів у блокчейні проекту
30 березня 2025 року проект з маржинальної торгівлі на Ethereum зазнав атаки, що призвела до втрат активів на понад 300 тисяч доларів. Команда безпеки провела глибокий аналіз цього інциденту, розкриваючи технічні деталі атаки та її корінні причини.
Фонові події
Атака була націлена на проект з маржинальної торгівлі під назвою SIR.trading. Зловмисники успішно використали вразливість у контракті цього проекту, що призвело до незаконного переміщення великої кількості активів.
Аналіз технічних причин
Ця атака виникла через проблему, пов'язану з функцією миттєвого зберігання, введеною в версії Solidity 0.8.24, яка має ідентифікатор (transient storage). Миттєве зберігання є новим місцем для зберігання даних, яке спрямоване на забезпечення низької вартості та ефективного тимчасового зберігання під час транзакції. Однак у цьому випадку неналежне використання миттєвого зберігання призвело до серйозної вразливості безпеки.
Основною причиною атаки є те, що значення, що використовуються в контракті для тимчасового зберігання tstore, не очищаються належним чином після завершення виклику функції. Це дозволяє зловмиснику створити певну шкідливу адресу, обійти перевірку прав і незаконно вивести токени.
Процес атаки
Зловмисник створює два шкідливі токени A та B і створює ліквідність для цих токенів на певному DEX.
Зловмисник використовує ці два токени для створення нового ринкового простору з важелями в цільовому проєкті.
Завдяки ретельно спроектованій угоді, зловмисник залишив конкретне значення у тимчасовій пам'яті.
Зловмисник створює шкідливий контракт, адреса якого співпадає з раніше збереженим значенням.
Використовуючи цей шкідливий контракт, зловмисник успішно обійшов перевірку прав у контракті проєкту.
Врешті-решт, зловмисник успішно вивів інші токени (такі як WBTC, WETH) з контракту проекту для отримання прибутку.
Аналіз руху коштів
Згідно з аналізом даних у блокчейні, зловмисники вкрали приблизно 300 тисяч доларів активів, включаючи:
17 814,8626 доларів США
1,4085 WBTC
119.871 ЗХ.
Ці вкрадені активи потім були обміняні на WETH, в загальному приблизно 193,1428 WETH, і були переведені в певний анонімний торговий протокол.
Слід зазначити, що початковий капітал атакуючого (0.3 ETH) також походить з того ж протоколу конфіденційності, що може вказувати на те, що атакуючий намагається приховати свою особистість та джерело фінансування.
Рекомендації щодо безпеки
Щоб запобігти повторенню подібних інцидентів, експерти з безпеки радять:
При використанні транзитного сховища слід відразу після завершення виклику функції використати tstore(key, 0) для очищення збереженого значення.
Посилити аудит і безпекове тестування коду контракту, особливо звертаючи особливу увагу на нові впроваджені функції.
При реалізації ключових перевірок прав доступу уникайте надмірної залежності від потенційно маніпульованих механізмів зберігання.
Ця подія ще раз підкреслила, що при впровадженні нових технологічних особливостей необхідно ретельно враховувати їх потенційний вплив на безпеку. Для проектів у блокчейні постійний аудит безпеки та оцінка ризиків є вкрай важливими.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
10 лайків
Нагородити
10
3
Поділіться
Прокоментувати
0/400
StableGeniusDegen
· 11год тому
Знову сталося
Переглянути оригіналвідповісти на0
LeekCutter
· 11год тому
Знову прийшли збирати невдах.
Переглянути оригіналвідповісти на0
CommunityWorker
· 11год тому
знову 0 аудитних проєктів обдурювали людей, як лохів
Вразливість тимчасового зберігання призвела до збитків у 300 000 доларів для проектів Маржинальної торгівлі. Зловмисники перенесли WBTC та WETH.
Вразливість миттєвого зберігання призвела до втрати 300 000 доларів у блокчейні проекту
30 березня 2025 року проект з маржинальної торгівлі на Ethereum зазнав атаки, що призвела до втрат активів на понад 300 тисяч доларів. Команда безпеки провела глибокий аналіз цього інциденту, розкриваючи технічні деталі атаки та її корінні причини.
Фонові події
Атака була націлена на проект з маржинальної торгівлі під назвою SIR.trading. Зловмисники успішно використали вразливість у контракті цього проекту, що призвело до незаконного переміщення великої кількості активів.
Аналіз технічних причин
Ця атака виникла через проблему, пов'язану з функцією миттєвого зберігання, введеною в версії Solidity 0.8.24, яка має ідентифікатор (transient storage). Миттєве зберігання є новим місцем для зберігання даних, яке спрямоване на забезпечення низької вартості та ефективного тимчасового зберігання під час транзакції. Однак у цьому випадку неналежне використання миттєвого зберігання призвело до серйозної вразливості безпеки.
Основною причиною атаки є те, що значення, що використовуються в контракті для тимчасового зберігання tstore, не очищаються належним чином після завершення виклику функції. Це дозволяє зловмиснику створити певну шкідливу адресу, обійти перевірку прав і незаконно вивести токени.
Процес атаки
Аналіз руху коштів
Згідно з аналізом даних у блокчейні, зловмисники вкрали приблизно 300 тисяч доларів активів, включаючи:
Ці вкрадені активи потім були обміняні на WETH, в загальному приблизно 193,1428 WETH, і були переведені в певний анонімний торговий протокол.
Слід зазначити, що початковий капітал атакуючого (0.3 ETH) також походить з того ж протоколу конфіденційності, що може вказувати на те, що атакуючий намагається приховати свою особистість та джерело фінансування.
Рекомендації щодо безпеки
Щоб запобігти повторенню подібних інцидентів, експерти з безпеки радять:
Ця подія ще раз підкреслила, що при впровадженні нових технологічних особливостей необхідно ретельно враховувати їх потенційний вплив на безпеку. Для проектів у блокчейні постійний аудит безпеки та оцінка ризиків є вкрай важливими.