Перейти к содержанию

Сэндвич-атака

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

Обновлено

Материал предназначен только для образовательных целей и не является рекомендацией по безопасности или инвестициям. Ограничения проскальзывания и приватная маршрутизация могут снизить риск сэндвич-атаки, но не гарантируют качество исполнения, включение, финальность или возмещение убытков.

Краткий ответ

Сэндвич-атака — вредоносная форма максимально извлекаемой стоимости, при которой атакующий ставит одну транзакцию непосредственно перед свопом пользователя, а другую — сразу после него. Первая сделка сдвигает цену пула против пользователя, его своп исполняется по худшему курсу, а последняя сделка закрывает позицию атакующего по цене, частично созданной заявкой пользователя.

Для атаки необходимы заблаговременная видимость намерения пользователя или привилегия при упорядочивании, достаточное влияние на цену и такие ограничения исполнения, при которых своп еще проходит. Чаще всего это обсуждается применительно к свопам автоматических маркет-мейкеров, но более общий риск относится к любому предсказуемому изменению состояния, чей порядок позволяет другой стороне извлечь стоимость.

Как это работает

Пользователь подписывает и отправляет своп. Если до включения его параметры попадают в публичный пул транзакций или другой наблюдаемый канал потока заявок, поисковик может декодировать активы, размер, маршрут, минимальный выход и срок, а затем смоделировать возможные последовательности.

При покупке в пуле AMM поисковик покупает первым. Этот фронтран меняет резервы и повышает цену исполнения пользователя. Затем пользователь получает меньше выходных токенов, чем было в предварительной котировке, если результат все еще удовлетворяет условию минимального выхода. После пользователя поисковик продает в бэкране и забирает часть движения цены.

Валовая выручка не равна прибыли. Атакующий оплачивает комиссии обоих свопов, Gas или вознаграждение построителю блока, неудачные попытки и риск позиции. Конкуренция, другие сделки, откат свопа пользователя или изменение порядка блока могут сделать последовательность убыточной; сэндвич не является автоматически атомарным или гарантированным.

Защита от проскальзывания ограничивает худший приемлемый выход, но не предотвращает упорядочивание. Слишком широкий допуск оставляет больше места для неблагоприятного исполнения, а слишком узкий может привести к откату обычного свопа при волатильности. Приложения и интегрирующие контракты должны применять актуальный, подтвержденный пользователем минимальный выход и подходящий срок, а не ноль или устаревшее жестко заданное значение.

Приватная отправка, защищенный поток заявок, пакетные аукционы, исполнение по намерениям и дробление заявок могут снизить риск в отдельных системах. Защита зависит от того, какие посредники видят заявку, охвата построителей, поведения при резервном маршруте, ликвидности, комиссий и реализации; надписи «приватно» или «защищено от MEV» не дают универсальной гарантии.

Пример

Пользователь отправляет видимый своп для покупки Токена B за Токен A в пуле AMM. Поисковик моделирует, что заявка достаточно велика для движения цены пула, а минимальный выход пользователя оставляет возможность исполнить сделку после неблагоприятного изменения цены.

Поисковик первым покупает Токен B, затем своп пользователя покупает Токен B по ухудшившемуся курсу, после чего поисковик сразу продает Токен B. Пользователь получает не меньше подписанного минимума, но меньше прежней котировки; поисковику остается лишь сумма после комиссий свопов, платы за порядок и расходов на исполнение.

Риски

Прямой вред пользователю — худшее исполнение и большее фактическое проскальзывание. Своп также может откатиться после расхода Gas, если сеть и конструкция транзакции взимают плату за неудачное исполнение. Низкая ликвидность, видимые крупные заявки, свободные ограничения, волатильные рынки и предсказуемые маршруты повышают риск, но ни один порог сам по себе не доказывает, что атака произойдет.

У мер защиты есть компромиссы. Мелкие заявки могут увеличить общие комиссии или раскрыть повторяющуюся стратегию; строгие ограничения увеличивают число откатов; приватные маршруты добавляют вопросы доверия, цензуры, журналирования и резервного пути; защищенные интерфейсы могут охватывать только отдельные сети или маршруты. Проверяйте подписанный минимальный выход, срок, маршрут, политику конечной точки, квитанцию и требуемую финальность, а не полагайтесь на значок защиты.

Распространенные заблуждения

  • Любое неблагоприятное движение цены — сэндвич-атака. Обычное влияние на цену, движение рынка, смена маршрута и арбитраж тоже могут отклонить исполнение от котировки; для атрибуции нужны данные о порядке транзакций.
  • Атакующий просто крадет токены из кошелька. Типичный сэндвич меняет состояние пула вокруг разрешенного свопа; транзакции атакующего не обязаны напрямую переводить активы из кошелька пользователя.
  • Любой допуск проскальзывания предотвращает атаку. Минимальный выход ограничивает допустимое ухудшение, но поисковик может оптимизировать сэндвич так, чтобы своп прошел у самой границы.
  • Приватная отправка устраняет MEV. Она может скрыть заявку от публичного пула, но операторы RPC, ретрансляторы, построители, решатели или публичный резервный маршрут все еще могут ее увидеть или изменить результат.
  • Успешная квитанция доказывает справедливое исполнение. Успех означает лишь выполнение условий контракта, а не получение лучшей цены или отсутствие вредного упорядочивания.

Связанные темы

Источники

Навигация

Поиск по вики...