Мультицепочкові вразливості: рятувальні операції білих капелюхів та уроки безпеки для екосистеми Web3

robot
Генерація анотацій у процесі

Аналіз вразливостей проектів Multichain: з точки зору надзвичайних ситуацій безпека екосистеми Web3

18 січня 2022 року наша система моніторингу аномальної торгівлі виявила атаку на проект Multichain. Через те, що відповідні функції не реалізували механізм перевірки, токени, які користувачі надали цьому проекту, могли бути виведені зловмисниками.

Хоча проектна команда намагалась різними способами нагадати постраждалим користувачам, багато користувачів все ще не змогли вчасно відреагувати, внаслідок чого зловмисники змогли продовжувати здійснювати атаки та отримувати вигоду.

У зв'язку з продовженням атак, для захисту потенційних жертв, ми вирішили вжити заходів екстреної реакції. Ця операція з порятунку спрямована на акаунти, які постраждали на Ethereum, ми перенесемо кошти з відповідних акаунтів на спеціально створений мультипідписний акаунт білій капелюшку. Щоб забезпечити прозорість дій, ми опублікуємо хеш-файлу відповідного плану (, а не вміст ) для спільноти. Наша операція з порятунку розпочалася 21 січня 2022 року і завершилася 11 березня 2022 року.

Екстрена допомога стикається з багатьма технічними та нетехнічними викликами. Тепер, коли дія закінчилася, ми можемо переглянути весь процес і поділитися нашими думками з громадою. Ми сподіваємося, що такі обміни допоможуть громаді та безпеці екосистеми DeFi.

Короткий підсумок

  • Різні учасники викликали жорстку конкуренцію щодо широкого використання Flashbots, включаючи між групами білих капелюхів і атакуючих, а також всередині кожної з цих груп, а витрати на Flashbots швидко зростали з часом.

  • Flashbots не завжди ефективні. Деякі атакувальники переходять на використання mempool, застосовуючи хитрі стратегії для організації атакуючих транзакцій, успішно реалізуючи атаки.

  • Деякі зловмисники уклали угоду з командою проекту, повернувши частину вкрадених коштів, залишивши частину як винагороду, що дозволило їм успішно "відмити" себе. Це явище викликало обговорення та суперечки в спільноті щодо справедливості їхніх винагород.

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

  • Сили всіх сторін спільноти можуть об'єднатися для більш швидкого та ефективного здійснення рятувальних операцій. Наприклад, можна здійснити співпрацю між білими капелюшками, щоб зменшити або уникнути неефективної конкуренції.

Огляд ситуації з атаками та порятунком

Загальний результат

У межах нашого спостереження ( з 18 січня 2022 року по 20 березня 2022 року ) загальна ситуація з атаками та порятунком є такою:

  • 9 облікових записів порятунку захистили 483.027693 ETH, з яких сплачено Flashbots комісії в розмірі 295.970554 ETH( становить 61.27%)
  • 21 атакуючих рахунків отримали прибуток 1433.092224 ETH, з яких виплати до Flashbots склали 148.903707 ETH( частка 10.39%)

Varто зазначити, що через наявність деяких складних взаємодій (, таких як повернення частини прибутку деякими зловмисниками після переговорів з командою проекту, відповідні мітки адрес можуть змінюватися ). Вищезазначені дані є лише приблизною статистикою.

!

Тенденції зміни витрат Flashbots

Білі капелюхи повинні змагатися з атакувальниками у відправці транзакцій Flashbots для реалізації рятувальних операцій, зміна вартості, сплаченої Flashbots, може відобразити рівень конкуренції. Ми статистично підрахували частку витрат Flashbots для атак і рятувальних транзакцій за блоками транзакцій.

Аналіз показує, що початкові атаки на транзакції мали нульові витрати на Flashbots, що свідчить про те, що на той момент зловмисники ще не використовували Flashbots. Після цього частка витрат на Flashbots різко зросла, досягнувши навіть 80%-91% у деяких блоках. Ця тенденція відображає гонку витрат, спричинену боротьбою за право на ланцюг Flashbots.

!

Ми реалізуємо рятувальні дії та стикаємося з викликами

Основні ідеї рятувальної операції

Наш підхід до порятунку полягає у моніторингу групи потенційних жертвських рахунків, які вже авторизували WETH для проблемних проектних контрактів. Коли WETH надходить на цей рахунок, ми використовуємо вразливість контракту, щоб вивести його на мультипідписний гаманець білих капелюшків. Ключовим є задоволення наступних вимог:

  1. Ефективне визначення транзакції переказу на рахунок жертви ( транзакція переказу )
  2. Правильне створення угоди для порятунку ( порятунок угоди )
  3. Успішний атака на ранньому запуску атакуючого ( або інших третіх осіб ) торгів ( атакуючих торгів )

Перші дві вимоги не є для нас перешкодою. Однак третя залишається викликом, навіть використання Flashbots не завжди гарантує успіх. Нам також потрібно врахувати стратегію налаштування витрат, розташування та порядок транзакцій у mempool та інші фактори.

!

Конкуренція

Ми намагаємося захистити 171 незалежний потенційний рахунок жертви. З них 10 своєчасно відкликали авторизацію, що дозволило забезпечити самозахист, а в решті 161 рахунку, через наявність різних конкурентів, нам вдалося успішно врятувати лише 14. Ситуації невдачі стосуються 3 рятувальних рахунків та 16 рахунків нападників.

!

Уроки досвіду

Стратегія налаштування зборів Flashbots

Під час рятувальної операції ми були переможені 12 конкурентами, які використовували Flashbots, включаючи 2 рятувальні рахунки та 10 атакуючих рахунків.

Наша стратегія налаштування зборів Flashbots є досить обережною, прагнучи встановити якомога менше зборів для захисту інтересів жертв. Однак практика показала, що така стратегія не є надто успішною, зловмисники ( навіть частина білих капелюхів ) зазвичай використовують більш агресивні стратегії для налаштування зборів, щоб виграти конкуренцію.

Ми спостерігали деякі випадки, які показують, що конкуренти встановлюють відсоток комісії Flashbots у діапазоні від 70% до 86%. Це, здається, є нульовою грою, яка потребує моделювання для вивчення моделей поведінки всіх учасників. На практиці, як знизити витрати якомога більше, так і знайти оптимальну стратегію для виграшу в конкуренції є складним завданням.

!

Стратегія організації Mempool транзакцій

Через сильну конкуренцію, викликану багатьма сторонами, Flashbots не завжди є ефективними. У такому випадку, навіть якщо встановити найвищу плату за Flashbots, це не гарантує перемогу в конкурентній боротьбі.

Іншим можливим методом є відправка звичайних транзакцій через mempool, якщо транзакція буде розміщена у відповідному місці (, тобто одразу після транзакції переказу ), це також може досягти мети. Ми спостерігали, як зловмисник використав цю стратегію і успішно отримав 312 ETH, не сплативши жодних зборів Flashbots.

Ця хитра стратегія має як практичний, так і натхненний характер, варта уваги та вивчення.

!

Інші роздуми

Визначення білих капелюхів і зловмисників

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

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

Механізм координації між білими шапками

Спільноті необхідно встановити механізм комунікації та координації, щоб зменшити/уникнути конкуренції між білими капелюшками. Ця конкуренція не лише витрачає ресурси на рятування, але й підвищує витрати на рятування. Наприклад, під час цього рятування ми та ще три організації білих капелюшків ( одночасно намагалися захистити 54 жертви ), в яких йдеться про втрати в 450 ETH (.

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

) Пропозиції щодо покращення рятувальних операцій

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

  2. Сили всіх сторін громади можуть об'єднатися для того, щоб зробити рятувальні роботи більш швидкими та ефективними:

    • Flashbots/Майнери можуть надати сертифікованим надійним білим капелюшкам пріоритетний доступ
    • Проект, який піддався атаці, несе витрати на Flashbots
    • Проектна команда використовує більш зручний механізм для своєчасного попередження користувачів
    • Проектна команда вжила необхідних екстрених заходів у коді

За співпраці всіх сторін ми сподіваємося створити більш безпечну та ефективну екосистему Web3.

! []###https://img-cdn.gateio.im/webp-social/moments-f6e97c80d0049ad9d2cc45cbbaf91c5a.webp(

MULTI0.82%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 7
  • Поділіться
Прокоментувати
0/400
ChainSpyvip
· 7год тому
Гра закінчилася, ці гроші зникли.
Переглянути оригіналвідповісти на0
BuyHighSellLowvip
· 07-25 03:55
Знову втратили, білий капелюх не може впоратися.
Переглянути оригіналвідповісти на0
gas_fee_therapistvip
· 07-25 03:53
Ця хвиля газу, здається, збожеволіла...
Переглянути оригіналвідповісти на0
P2ENotWorkingvip
· 07-25 03:52
Думав, що все пропало, а виявляється, білий капелюшок зміг повернути.
Переглянути оригіналвідповісти на0
Degentlemanvip
· 07-25 03:36
Знову проблема з механізмом перевірки?
Переглянути оригіналвідповісти на0
PretendingSeriousvip
· 07-25 03:35
Досить абсурдно, що гроші вкрадені, а все ще намагаються їх забрати.
Переглянути оригіналвідповісти на0
GateUser-26d7f434vip
· 07-25 03:34
Білі капелюхи та хакери змагаються один з одним, так?
Переглянути оригіналвідповісти на0
  • Закріпити