Материал предназначен только для образовательных целей и не является рекомендацией по безопасности или инвестициям. Ограничения проскальзывания и приватная маршрутизация могут снизить риск сэндвич-атаки, но не гарантируют качество исполнения, включение, финальность или возмещение убытков.
Краткий ответ
Сэндвич-атака — вредоносная форма максимально извлекаемой стоимости, при которой атакующий ставит одну транзакцию непосредственно перед свопом пользователя, а другую — сразу после него. Первая сделка сдвигает цену пула против пользователя, его своп исполняется по худшему курсу, а последняя сделка закрывает позицию атакующего по цене, частично созданной заявкой пользователя.
Для атаки необходимы заблаговременная видимость намерения пользователя или привилегия при упорядочивании, достаточное влияние на цену и такие ограничения исполнения, при которых своп еще проходит. Чаще всего это обсуждается применительно к свопам автоматических маркет-мейкеров, но более общий риск относится к любому предсказуемому изменению состояния, чей порядок позволяет другой стороне извлечь стоимость.
Как это работает
Пользователь подписывает и отправляет своп. Если до включения его параметры попадают в публичный пул транзакций или другой наблюдаемый канал потока заявок, поисковик может декодировать активы, размер, маршрут, минимальный выход и срок, а затем смоделировать возможные последовательности.
При покупке в пуле AMM поисковик покупает первым. Этот фронтран меняет резервы и повышает цену исполнения пользователя. Затем пользователь получает меньше выходных токенов, чем было в предварительной котировке, если результат все еще удовлетворяет условию минимального выхода. После пользователя поисковик продает в бэкране и забирает часть движения цены.
Валовая выручка не равна прибыли. Атакующий оплачивает комиссии обоих свопов, Gas или вознаграждение построителю блока, неудачные попытки и риск позиции. Конкуренция, другие сделки, откат свопа пользователя или изменение порядка блока могут сделать последовательность убыточной; сэндвич не является автоматически атомарным или гарантированным.
Защита от проскальзывания ограничивает худший приемлемый выход, но не предотвращает упорядочивание. Слишком широкий допуск оставляет больше места для неблагоприятного исполнения, а слишком узкий может привести к откату обычного свопа при волатильности. Приложения и интегрирующие контракты должны применять актуальный, подтвержденный пользователем минимальный выход и подходящий срок, а не ноль или устаревшее жестко заданное значение.
Приватная отправка, защищенный поток заявок, пакетные аукционы, исполнение по намерениям и дробление заявок могут снизить риск в отдельных системах. Защита зависит от того, какие посредники видят заявку, охвата построителей, поведения при резервном маршруте, ликвидности, комиссий и реализации; надписи «приватно» или «защищено от MEV» не дают универсальной гарантии.
Пример
Пользователь отправляет видимый своп для покупки Токена B за Токен A в пуле AMM. Поисковик моделирует, что заявка достаточно велика для движения цены пула, а минимальный выход пользователя оставляет возможность исполнить сделку после неблагоприятного изменения цены.
Поисковик первым покупает Токен B, затем своп пользователя покупает Токен B по ухудшившемуся курсу, после чего поисковик сразу продает Токен B. Пользователь получает не меньше подписанного минимума, но меньше прежней котировки; поисковику остается лишь сумма после комиссий свопов, платы за порядок и расходов на исполнение.
Риски
Прямой вред пользователю — худшее исполнение и большее фактическое проскальзывание. Своп также может откатиться после расхода Gas, если сеть и конструкция транзакции взимают плату за неудачное исполнение. Низкая ликвидность, видимые крупные заявки, свободные ограничения, волатильные рынки и предсказуемые маршруты повышают риск, но ни один порог сам по себе не доказывает, что атака произойдет.
У мер защиты есть компромиссы. Мелкие заявки могут увеличить общие комиссии или раскрыть повторяющуюся стратегию; строгие ограничения увеличивают число откатов; приватные маршруты добавляют вопросы доверия, цензуры, журналирования и резервного пути; защищенные интерфейсы могут охватывать только отдельные сети или маршруты. Проверяйте подписанный минимальный выход, срок, маршрут, политику конечной точки, квитанцию и требуемую финальность, а не полагайтесь на значок защиты.
Распространенные заблуждения
- Любое неблагоприятное движение цены — сэндвич-атака. Обычное влияние на цену, движение рынка, смена маршрута и арбитраж тоже могут отклонить исполнение от котировки; для атрибуции нужны данные о порядке транзакций.
- Атакующий просто крадет токены из кошелька. Типичный сэндвич меняет состояние пула вокруг разрешенного свопа; транзакции атакующего не обязаны напрямую переводить активы из кошелька пользователя.
- Любой допуск проскальзывания предотвращает атаку. Минимальный выход ограничивает допустимое ухудшение, но поисковик может оптимизировать сэндвич так, чтобы своп прошел у самой границы.
- Приватная отправка устраняет MEV. Она может скрыть заявку от публичного пула, но операторы RPC, ретрансляторы, построители, решатели или публичный резервный маршрут все еще могут ее увидеть или изменить результат.
- Успешная квитанция доказывает справедливое исполнение. Успех означает лишь выполнение условий контракта, а не получение лучшей цены или отсутствие вредного упорядочивания.
Связанные темы
- Автоматические маркет-мейкеры
- Фронтраннинг
- Максимально извлекаемая стоимость
- RPC приватных транзакций
- Децентрализованные биржи
Источники
- Maximal extractable value (MEV) - Ethereum.org (accessed: 2026-08-21)
- What is a sandwich attack? - Uniswap Labs (accessed: 2026-08-21)
- SCWE-090: Missing Slippage Protection in Automated Token Swaps - OWASP Smart Contract Security (accessed: 2026-08-21)