Сендвіч-атаки в криптовалюті: пояснення та способи захисту

Що таке сендвіч-атака?
Сендвіч-атаки – це форма маніпуляції ринком, спрямована на користувачів децентралізованих бірж, яка використовує цінові коливання для отримання прибутку з транзакцій жертви.
Це тип експлуатації із випередженням транзакцій, при якому атакуючий розміщує два накази навколо угоди жертви таким чином, щоб отримати прибуток від цінового зсуву.
У типовій сендвіч-атаці зловмисник спостерігає за мемпулом транзакцій, шукаючи великі угоди, які можуть вплинути на ціну криптовалюти.
Після виявлення угоди, нападник виконує «зворотну торгівлю» (back-running trade), розміщуючи наказ про продаж одразу після угоди жертви і наказ про купівлю – одразу перед нею.
Транзакція жертви сприяє маніпуляції ціною, яка навмисно завищується або знижується для отримання вигоди нападником. Атакуючий отримує прибуток, продаючи свої токени після завершення транзакції жертви.
Чому сендвіч-атаки важливі для криптотрейдерів
Сендвіч-атаки мають значний вплив на криптотрейдерів, особливо новачків, через їхній вплив на максимально витягувану вартість (MEV – Maximal Extractable Value).
MEV відноситься до додаткової вартості, яку можна витягти із створення блоків понад стандартні винагороди за блоки. Зокрема, це дозволяє майнерам або валідаторам стратегічно впорядковувати транзакції в межах блоку, щоб максимізувати свої прибутки.
Сендвіч-атаки є яскравим прикладом експлуатації MEV. Маніпулюючи порядком транзакцій, нападники використовують відкритий характер блокчейну, щоб випередити та зворотно опрацювати торги (front-run і back-run), отримуючи прибуток від створеного ними цінового зсуву.
Ось як ці атаки впливають на трейдерів:
- Підрив довіри: Поширеність сендвіч-атаок може підривати довіру до безпеки та цілісності екосистеми децентралізованих фінансів (DeFi).
- Зменшення прибутків: Сендвіч-атаки безпосередньо впливають на прибутки трейдерів, захоплюючи потенційний виграш за рахунок маніпуляцій з цінами.
- Питання справедливості: Ці атаки підривають відчуття справедливості на децентралізованих біржах (DEX), роблячи трейдерів вразливими до експлуатації з боку більш технічно підготовлених осіб.
Через ці проблеми криптоспільнота активно вивчає рішення для зменшення негативних наслідків MEV, такі як:
- Приватні транзакції: Технології, що приховують деталі транзакцій від інших учасників мережі, ускладнюючи їхню ідентифікацію та використання.
- MEV Boost: Механізм, що дозволяє користувачам надсилати транзакції безпосередньо до майнерів, потенційно скорочуючи вікно для випередження (front-running).
Чи знали ви? Максимально витягувану вартість раніше називали «майнер витягувана вартість» (Miner Extractable Value). Цей термін вперше з’явився у дослідницькій роботі 2019 року під назвою «Flash Boys 2.0: Випередження транзакцій, зміна їх порядку та нестабільність консенсусу у децентралізованих біржах», написаній Філом Даіаном та іншими, але пізніше його змінили, щоб відобразити зростання можливостей для вилучення вартості внаслідок розширення DeFi-екосистеми.
Як працюють сендвіч-атаки: покроковий приклад
Механіка сендвіч-атаки полягає в маніпуляції ціною активу до і після транзакції жертви, використовуючи стратегічно розміщені накази на купівлю та продаж у черзі транзакцій.
Розглянемо, як відбувається сендвіч-атака, на простому прикладі.
Уявіть, що ви криптотрейдер, який хоче придбати 100 Ether на децентралізованій біржі (DEX), наприклад, Uniswap. Ваше велике замовлення, ймовірно, вплине на ринок і тимчасово підвищить ціну ETH. Нападник, який стежить за мережею, бачить ваш ордер.
Але як атакуючий може передбачити велике надходження ордерів?
Нападники прогнозують великі надходження ордерів, стежачи за мемпулом – публічною зоною очікування для непідтверджених блокчейном транзакцій. Тут видно всі деталі транзакцій користувачів – такі як токени, що торгуються, обсяги та допустимі відхилення (slippage tolerances) – до їх включення у блок.
Автоматизовані боти сканують мемпул у пошуках великих угод або високих допустимих відхилень, сигналізуючи про можливі прибутки. Оскільки транзакції не шифруються, нападники (за допомогою ботів) аналізують ці дані в режимі реального часу.
Якщо транзакція здається вигідною для маніпуляції, нападник може скористатися цим, відправивши свою транзакцію з вищою платою за газ, забезпечивши її першочергове опрацювання та використання вашої угоди.
Ось як фактично розгортається атака:
- Крок 1: Нападник розміщує наказ на купівлю ETH одразу перед вашою транзакцією.
- Крок 2: Ваша транзакція проходить, підвищуючи ціну ETH.
- Крок 3: Одразу після вашої угоди нападник продає ETH, придбаний на першому етапі, за завищеною ціною, отримуючи прибуток.
- Крок 4: Ви купуєте за завищеною ціною, а нападник отримує вигоду без значних витрат – лише за допомогою наказів.
На ілюстрації нижче показано, як бот виявив велику покупку токена Saitama в мемпулі й купив токен першим, підвищуючи ціну.
Жертва, яка потім купує токен, платить за нього більше. Бот продає токен за цією завищеною ціною, заробляючи понад $200,000. Напад став можливим завдяки затримці транзакції жертви на понад хвилину.
Чи завжди MEV є негативним?
Ні, MEV не є однозначно негативним.
Хоча його можна використовувати для зловмисних дій, таких як сендвіч-атаки, він також має позитивні аспекти. MEV може підвищувати ефективність ринку, сприяючи арбітражу і забезпечуючи своєчасність ліквідацій. Крім того, він додає додатковий потік доходів для майнерів і валідаторів, стимулюючи їхню участь у мережі.
Більше того, прагнення до MEV сприяло інноваціям у таких сферах, як аукціони блок-простору (процес конкуренції за місце в блоці для включення і обробки транзакцій) і технології забезпечення конфіденційності. Однак важливо враховувати потенційний вплив на трейдерів (як обговорювалося вище), щоб забезпечити збалансовану і стійку криптоекосистему.
Як уникнути сендвіч-атак у криптовалюті
Використовуючи налаштування допустимих відхилень (сліпеджу), розділяючи великі угоди на менші, застосовуючи приватні транзакційні сервіси та уникаючи періодів високої завантаженості, ви можете знизити ризик стати жертвою сендвіч-атаки.
Тепер, коли ви знаєте, як працюють сендвіч-атаки, ось кілька практичних порад, щоб уникнути їх:
- Розумно налаштовуйте параметри сліпеджу: Більшість децентралізованих бірж дозволяють встановлювати допустимі відхилення. Коригуючи цей параметр, ви можете контролювати максимальне відхилення ціни, яке готові прийняти, запобігаючи надмірним маніпуляціям вашою угодою.
- Торгуйте меншими обсягами: Якщо це можливо, розбивайте великі угоди на дрібніші, щоб знизити вплив на ринок. Великі транзакції частіше спричиняють ціновий зсув, роблячи їх привабливою мішенню для сендвіч-атак.
- Використовуйте приватні транзакції або flashbot-и: Деякі користувачі вибирають сервіси, наприклад flashbot-и, для конфіденційного надсилання своїх транзакцій. Це мінімізує ризик вибірки ботами випередження, оскільки деталі угоди залишаються прихованими до їх підтвердження в блокчейні.
- Контролюйте мемпул і уникайте завантажених періодів: Деякі трейдери вибирають моніторинг мемпулу (зони очікування для непідтверджених транзакцій), щоб уникнути виконання угод у періоди, коли мережа завантажена великими ордерами.
Чи знали ви? Двоє дослідників запропонували теоретичний підхід у своєму дослідженні «Усунення сендвіч-атак за допомогою теорії ігор», де описали алгоритм, який значно знижує ризик сендвіч-атак і перевершує метод автосліпеджу, який використовують провідні автоматизовані маркетмейкери, наприклад Uniswap. Цей алгоритм ефективно мінімізує транзакційні витрати, забезпечуючи захист від хижих стратегій ботів у мемпулі Ethereum.
Поза сендвіч-атаками: інші приклади MEV
MEV включає стратегії такі, як ліквідаційний арбітраж, арбітраж між DEXами, створення дядько-блоків (uncle blocks) і MEV у NFT, кожна з яких експлуатує різні ринкові неефективності для отримання прибутку.
MEV охоплює ширший спектр стратегій, наприклад:
Ліквідаційний арбітраж
- Як це працює: Ціль – користувачі з високим використанням кредитного плеча (переважно в протоколах DeFi-кредитування).
- Приклад: Якщо вартість застави користувача падає нижче певного порогу, він ризикує ліквідацією. MEV-бот може випередити ліквідацію, погасивши кредит, а тоді вилучивши заставу зі знижкою.
Арбітраж між DEX
- Як це працює: Експлуатує різницю в цінах між різними децентралізованими біржами.
- Приклад: Якщо актив має різницю в ціні на двох DEXах, MEV-бот може швидко купити актив на дешевшій біржі та одночасно продати його на дорожчій, отримуючи прибуток за рахунок різниці в ціні.
Створення дядько-блоків
- Як це працює: Майнери можуть створювати «дядько-блоки» (альтернативні чинні блоки), які не входять до основного ланцюга блоків.
- Приклад: Якщо прибуткова транзакція включена у блок користувача, майнер може створити дядько-блок із трохи вищою винагородою, можливо, виключаючи транзакцію користувача та захоплюючи прибуток для себе.
MEV у NFT
- Як це працює: Використовує унікальні характеристики ринку NFT.
- Приклад: Два поширені способи експлуатації MEV у сфері NFT – це снайпінг и скасування ордерів. При снайпінгу боти постійно моніторять NFT-маркетплейси на предмет нових цінних або надзвичайно рідкісних лістингів, миттєво купуючи їх до того, як це вдається іншим користувачам. Під час скасування наказів боти виявляють і скасовують ордери за вигідними цінами, одразу ж повторно виставляючи активи дорожче.
Щоб захиститися від експлуатації через MEV, можна використовувати платформи з обізнаністю про MEV і застосовувати виконання транзакцій, оперуючи часом. Окрім цього, управління таймінгом транзакцій за допомогою алгоритмів або інструментів для обфускації мінімізує передбачуваність ваших торгів.
У сфері NFT вибір контрактів, стійких до атак снайпінгу та скасування ордерів, забезпечує додаткову безпеку від маніпуляцій ботами MEV.