Как бот заработал и потерял более 1 миллиона долларов ETH за одну ночь

Во вторник вечером бот Ethereum MEV получил 800 ETH с помощью умного арбитража, но через час потерял все это и даже больше хакеру.
Вот как ситуация разыгрывалась в сети:
Online advertising service 1lx.online
- Мероприятие началось с того, что сторонний трейдер по ошибке потерял почти 2 миллиона долларов из-за спредов на Uniswap v2 trade. Хотя первоначально он торговал на 1,8 миллиона долларов США, взамен он получил только 518 долларов США.
- По словам руководителя продукта Flashbots Роберта Миллера, это только создало «огромную возможность для арбитража» для другого трейдера, который налетел и потребовал много ETH.
- «0xbaDc0dE [бот MEV] добросовестно выполнял ответные действия в мемпуле (!) в очень длинном ответвлении, затрагивающем множество протоколов», — пояснил он. В итоге бот заработал 800 ETH.
- Однако всего через час этот ETH был полностью украден. Миллер утверждает, что бот не защищал должным образом функцию, которую он использовал для выполнения флэш-кредитов dydx, что делало ее уязвимой.
«Когда вы получаете быстрый кредит, протокол, который вы берете взаймы, вызывает стандартную функцию вашего контракта», — сказал он. «К сожалению, код 0xbaDc0dE допускает произвольное выполнение».
- Используя эту уязвимость, злоумышленник одобрил все WETH бота для расходования по контракту, после чего перевел их на свой адрес. В общей сложности это было 1106 WETH, что на момент написания стоило более 1,4 миллиона долларов.
- В этом месяце с многочисленных тщеславных адресов, сгенерированных Profanity, было потрачено примерно 1 миллион долларов в ETH.