Майнинг-пул Ethermine потерял около 100 eth из-за токена, направленного на борьбу с используемым им ботом-фронтраннером. 17 марта Ethermine подтвердил запуск системы фронтраннинга, которая позволяет ему получать дополнительный доход за счет особого положения майнеров в сети Ethereum.
Announcing #Ethermine MEV beta! ?
In order to compensate the upcoming mining reward reduction caused by the adoption of EIP-1559 we have launched our MEV beta program.
80% of our MEV revenue will be distributed alongside the mining block rewards.
— Bitfly (@etherchain_org) March 17, 2021
Механизм заключается в следующем: когда Ethermine видит ожидающую подтверждения транзакцию, в которой пользователь хочет обменять, например, ETH на UNI, он проводит такую же транзакцию, но с околонулевой комиссией и первой по очереди. В результате Ethermine покупает UNI, что ведет к увеличению цены токена, а пользователь, отправивший транзакцию первым, покупает подорожавший токен у пула. Лучше это работает с низколиквидными токенами, где даже небольшая покупка может вызывать ощутимые отклонения курса.
Фронтраннинг, состоящий в использовании непубличных знаний об ожидающих подтверждения крупных сделках, на традиционных рынках запрещен. В то же время, маркетмейкинг, когда трейдеры пытаются заработать на расхождениях цен, считается благотворными видом деятельности, так как ведет к сокращению таких расхождений. Действия майнеров, однако, в данном случае увеличивают расхождения. Майнер знает, кто хочет купить, сколько и когда, и получает гарантированного покупателя за счет возможности провести транзакцию раньше него.
В ответ на действия майнеров разработчик CodeForcer создал «ядовитый» контракт Salmonella.
«Это обычный ERC20-токен, который ведет себя аналогично любому другому токену в нормальных сценариях применения, – объясняет разработчик. – Тем не менее, в него встроена специальная логика, определяющая, когда транзакцию с ним осуществляет кто-то кроме установленного владельца. В таких ситуациях он возвращает только 10% от установленной суммы, несмотря на включение в журнал событий сделки на полную сумму».
Другими словами, когда бот майнера видит предположительно выгодную возможность опередить покупателя и отправляет транзакцию, он получает лишь десятую часть бесполезного токена, 90% которого при перепродаже потеряются. На децентрализованной бирже uniswap разработчик создал пул с использованием Salmonella и эфира. Затем он стал проводить транзакции между своими адресами, чтобы завлечь ботов. Комиссия за исполнение транзакций при этом устанавливалась ниже рыночной – это позволяло сохранять транзакции в мемпуле и отменять их при возникновении риска подтверждения. В течение нескольких часов боты провели две операции по покупке Salmonella: на 68 и 35 ETH. Также в процессе были опустошены 17 торговых контрактов аналогичного плана на существенно меньшие суммы.
Стоящая за пулом Ethermine компания Bitfly не скрывает своей активности и называет ее реакцией на EIP-1559 – предложение по улучшению Ethereum, добавленное в грядущий хард форк London и предусматривающее сжигание большей части уплачиваемых пользователями комиссий.
«Мы никогда не станем поддерживать или участвовать в злонамеренных действиях против сети», – пишет Bitfly, добавляя, что фронтраннинг помогает ей компенсировать убытки от еще не запущенного EIP-1559.