Атака на сендвич ботов. DeFi-Cartel. Проект «Сальмонелла»На гитхабе DeFi-Cartel появилась заметка о проекте, который способен потрепать нервы фронтран ботам, ниже перевод статьи:
«Те, кто следит за действиями в мемпуле Ethereum, несомненно, знают о недавнем внезапном буме
фронт-ран атаки типа «сендвич» . Для неосведомленных, сэндвич-трейдинг - очень интересная стратегия, которая включает размещение сделки до и после сделки-жертвы, чтобы использовать возникшее проскальзывание.
С точки зрения непрофессионала, вы видите, что кто-то покупает токен, поэтому вы сначала покупаете его, чтобы искусственно завышать цену, а потом продаете с прибылью.
Раньше эта стратегия была чрезвычайно рискованной, поскольку Ethereum не дает никаких гарантий, что ваши транзакции будут успешными, а успешная только одна транзакция может оставить вас держателем множества бесполезных токенов. Мемпул - веселое место, но небезопасное.
Однако недавний рост количества сервисов MEV, таких как
FlashBots, теперь позволяет трейдерам создавать «пакеты сэндвичей», в которых либо выполняются все 3 транзакции, либо ни одна из них не выполняется. В то же время также увеличилось количество майнинг-пулов, которые продают местечко для фронт-ран ботов в добываемых блоках.
Эти два нововведения вместе привели к бесцеремонному отношению на торговых форумах, поскольку трейдеры «сэндвичей» радовались прибыли своего нового «безрискового» альфа.
Тем не менее, в блокчейне нет ничего безрискового, и эксплуататорские торговые стратегии, такие как сэндвич-трейдинг и фронт-ран, фактически
увеличивают риск по мере того, как многие начинают понимать механизмы работы сендвич-ботов.
Чтобы проиллюстрировать начинающим трейдерам риски, связанные с игрой в мемпуле, я провел демонстрацию новой торговой альфы, которую я назвал «Salmonella», которая предполагает намеренное использование обобщенного характера предварительных сетапов. Цель сэндвич-трейдинга - использовать проскальзывание не в пользу жертв, моя же стратегия переворачивает игру наоборот.
Быстрый анализ блокчейна показал, что майнинг-пул под названием «
Ethermine » в настоящее время отвечает за большую часть торговли «сэндвичами» и накопила
пару сотен Ethereum через свой адрес отправителя сэндвич-торговли. Определившись с моей первоначальной целью, я приступил к анализу их настройки.
Настройка Ethermine была / остается довольно простой на момент написания, полагаясь на
подключение к маршрутизатору Uniswap для выполнения сделок. В их торговой истории было много откатов, а сам их смарт-контракт содержал множество токенов неудачных сделок. Помня об этом, я приступил к работе над составлением контрактов на сальмонеллу.
Контракт «сальмонеллы» очень прост. Это обычный токен ERC20, который ведет себя точно так же, как любой другой токен ERC20 в обычных случаях использования. Однако у него есть особая логика для обнаружения, когда кто-либо, кроме указанного владельца, совершает транзакцию, и в этих ситуациях он возвращает только 10% от указанной суммы, несмотря на выдачу журналов событий, которые соответствуют сделке на полную сумму.
«Ядовитая передаточная функция»:
Я развернул
контракт на
Salmonella , а затем создал простой
пул Uniswap, содержащий Salmonella и Ethereum. Затем я воспроизвел математику обнаружения для фронтраннеров с помощью бинарного поиска, чтобы создать серию транзакций-приманок, которые для Ethermine и других трейдеров «сэндвичей» показались бы привлекательными возможностями.
Наконец, я закодировал исполняющую архитектуру, дающую мне возможность быстро отменять сделки, изменять цены на газ и сбрасывать состояние моего пула ловушек Uniswap.
После пары крепких чашек кофе я приступил к работе, запустив серию транзакций с приманкой, тщательно установив цены чуть ниже рыночных, чтобы транзакции оставались в мемпуле, но отменял, если цена начала падать.
В течение нескольких часов я поймал за хвост бота (
первый успех) , набрав более 68 ETH из попыток ботов уничтожить мою приманку. Прошло еще несколько часов, и я получил
еще 35 ETH из их контракта.
_______
Source:
https://t.me/Defiscamcheck/1563