TGViewer
Из Solidity в AI и дальше Из Solidity в AI и дальше @solidityset · 2.49K subscribers
Post #1427 1.15K
Как воспроизвести простую атаку с использованием MEV. Часть 2

Для того, чтобы создать PoC для демонстрации MEV-атаки, мы можем использовать такие инструменты, как Hardhat и Forge, для создания локального форка блокчейна.

И чтобы доказать детерминированный результат между этими двумя тестами, мы будем использовать один и тот же контракт Attacker, доступ к которому можно получить через этот Github gist.

В этом примере мы намеренно заставим жертву инициировать транзакцию обмена WETH на USDC в UniswapV2 с минимальной суммой 0. То, что делает эту транзакцию уязвимой для атаки «сэндвич», так это минимальная сумма, установленная на 0, что означает, что транзакция не будет отменена, даже если жертва получит только 0 USDC или 99% проскальзывания. Вот почему очень важно правильно установить минимальную сумму.

Router2.swapExactTokensForTokens(amount, 0, path, address(this), block.timestamp + 4200); 


Как все проверить в Foundry?

1. Для начала убедитесь, что Foundry все таки установлен у вас. Затем создайте отдельную папку и выполните forge init.

2. Измените контракт в папке src на контракт атакующего. Также замените тестовый файл в папке test на Sandwich.t.sol.

3. В результате у вас должен получиться такой же output в консоли, как на скрине.

Так нам удалось продемонстрировать атаку "сэндвич" с Forge. Как видно из результатов тестового случая, злоумышленник и жертва начали с начальным балансом в 1000 WETH, и хакеру удалось опередить и обойти транзакцию жертвы, что принесло ему прибыль в размере ~123 WETH. В результате жертва получает меньше USDC.

P.S. Для Hardhat, в целом, все так же для первоначальных настроек проекта, только использовать стоит файл sandwichAttack.js.

#mev
  • 👍 7
More from @solidityset
  1. Sep 22, 2026Какой язык программирования учить сейчас? На днях в Твиттере увидел небольшой пост о разви…
  2. Sep 18, 2026Интересная модель Jev Буквально пару дней назад в Твиттере многие начали обсуждение новой…
  3. Sep 14, 2026Графы повсюду Если вы также следите за новостями в мире ИИ, то наверняка уже все чаще встр…
  4. Sep 10, 2026GTA6, Cyberleek, блокчейн и безопасность Увидел несколько постов (тут и тут) про Cyberleek…
  5. Sep 9, 2026Работа с чистой энергией Дисклеймер Сегодня ава и название канала, наконец, поменялись. Я…
  6. Sep 9, 2026Channel name was changed to «Из Solidity в AI и дальше»
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →