Обходные пути для фатальных недостатков

У MasterChef есть определенные недостатки, которые можно исправить во время использования, но только в том случае, если пользователи знают о них и что они могут сделать. Вот обходной путь, согласно Глеб Зыков и Влад Коровников ХэшЭкс.

Децентрализованные обмены (DEX) были довольно редки всего два года назад, но сегодня кажется, что они повсюду. Многочисленные проекты, имеющие свои персональные DEX. Это произошло потому, что когда блокчейн-проект решает запустить DEX, он не делает это полностью с нуля. Вместо этого основой кода DEX часто является форк одного из двух основных DEX — Суши or Блин.

Смарт-контракт МастерШеф

Эти две биржи в значительной степени произвели революцию в пространстве DEX благодаря специальному смарт-контракту под названием MasterChef. MasterChef присутствует в обоих из них, и поэтому он также появляется в любой DEX, созданной как форк одного из этих двух. Каждая новая DEX имеет одни и те же функции. Но это также означает, что он разделяет недостатки и уязвимые места MasterChef. 

Итак, давайте посмотрим, с какими проблемами могут столкнуться пользователи и разработчики при работе с МастерШеф. На что им следует обратить внимание? И как к ним подходить?

Как работают DEX?

Первое, что нужно отметить, это то, что контракт MasterChef — это смарт-контракт, написанный на Solidity, который контролирует, что может делать ферма и как она может это делать. В большинстве проектов существует несколько смарт-контрактов, разделяющих ответственность и работу. Но когда дело доходит до протоколов на основе MasterChef, этот единственный контракт решает все, что касается ведения сельского хозяйства.

Децентрализованные биржи позволяют обменивать криптовалюты без необходимости вносить деньги в биржу. бумажник. Вместо этого вы вносите средства на смарт-контракты из собственного кошелька. Вы единственный человек, который контролирует его и может получить доступ к вашим собственным средствам, если в контрактах нет бэкдоров или уязвимостей.

Еще одно отличие заключается в том, что CEX используют книги ордеров для покупки и продажи. Это означает, что они сопоставляют покупателей с продавцами, в то время как DEX используют AMM (Automated Market Market). Производитель) протоколы для торговли, которые рассчитывают цену активов в зависимости от того, сколько ликвидности вложено.

Ликвидность поступает из пулов ликвидности, которые представляют собой пулы, в которые пользователи могут вносить средства для определенных пар и предоставлять средства для протокола. Затем, когда кто-то пытается купить активы с помощью этой пары, его заказ немедленно выполняется за счет средств из пула. Между тем, люди, внесшие средства в пул ликвидности, получают токены LP для этого конкретного пула. Это дает им право делиться наградами.

И, если они когда-нибудь захотят вернуть свои средства, все, что им нужно сделать, это вернуть полученные токены LP.

Как вы, возможно, знаете, существует несколько способов создания доходность из криптохолдингов. Фермы дают дополнительные вознаграждения за обеспечение ликвидности. Пользователи добавляют ликвидность в DEX, получают токены LP и размещают их на фермах.

МастерШеф: Уязвимости и недостатки

Мы рассмотрели, как работают DEX и как работают пулы ликвидности. Итак, давайте подробнее рассмотрим, в чем проявляются уязвимости MasterChef, как они влияют на процесс, а также какой подход необходимо использовать, чтобы все шло гладко.

MasterChef — это единый смарт-контракт, используемый для получения дохода путем предоставления ликвидности в DEX. К сожалению, у него есть определенные недостатки, которые можно исправить во время использования, но только в том случае, если пользователи знают о них и что они могут сделать.

Взломанные аккаунты

Одна из самых больших проблем, на которую следует обратить внимание, связана с компрометацией учетных записей владельцев. По сути, SushiSwap изобрел метод, который позволил ему получить преимущество перед Uniswap. Этот метод вращается вокруг миграции активов с одной биржи на другую. Это обрабатывается контрактом с помощью отдельной функции, доступной только владельцу контракта.

Однако эта миграция может в конечном итоге быть настроена практически на любой контракт без каких-либо ограничений, что в конечном итоге стало серьезным упущением. Таким образом, если учетная запись владельца скомпрометирована, это может привести к новому контракту миграции, который отправит все базовые токены LP во всех фермерских пулах на произвольный адрес. Это приведет к массовой потере вложенных активов.

Следует отметить, что эта функция теперь знакома разработчикам, и поэтому она сразу же удаляется в вилки. Однако, если он остается, это следует немедленно воспринимать как тревожный сигнал.

Следует также отметить, что в некоторых форках MasterChef владелец контракта может изменять норму эмиссии без каких-либо ограничений. Однако, если учетная запись скомпрометирована, злоумышленник может установить очень большую скорость эмиссии, что приведет к обесцениванию токена.

Существует довольно простой способ решить эту проблему, просто убедившись, что все функции, доступные владельцу контракта, требуют авторизации с мультиподписью. Таким образом, если один адрес будет скомпрометирован, злоумышленники не смогут с ним ничего сделать. Еще нужно добавить временную блокировку (контракт Timelock) при вызове функции миграции. Таким образом, у пользователя будет больше времени для принятия решения, и биржа должна будет уведомить вас о миграции или любой другой подозрительной транзакции.

Добавление одинаковых фарм-пулов

Другая довольно очевидная, но упускаемая из виду проблема возникает, когда первоначальный контракт не учитывает обработку идентичных пулов фермерских хозяйств, а это означает, что контракт может привести к неправильному расчету вознаграждения за фермерство.

Это не большая проблема, если MasterChef используется правильно, так как владелец не будет намеренно добавлять одинаковые пулы. На самом деле в нормально работающих биржах эти вещи проверяются и создание дублирующего пула категорически запрещено. Таким образом, если вы начнете создание пула и пойдете по пути создания дубликата существующего пула, система должна сообщить об ошибке. Или предложите добавить свои средства в существующий пул вместо создания нового.

Не подсчитывается количество депонированных токенов

По какой-то причине люди склонны забывать о том, что может произойти, если токены с комиссией за переводы или токены rebase будут добавлены в качестве пулов в контракт MasterChef. Что действительно происходит, так это разбивка способа расчета вознаграждения, поскольку код контракта добавляет активы в пулы только путем вызова определенных функций. Это означает, что добавление токенов к адресу объединит их с активами, уже находящимися в пуле. Но расчет вознаграждения за такие токены может быть нарушен, что приводит к уязвимостям.

Правильно работающие платформы должны рассчитывать количество средств, переданных для фарма, отдельно, проверяя фактическую сумму перевода с учетом комиссий. Таким образом, расчеты вознаграждения выполняются правильно.

МастерШеф: Заключение

MasterChef — это единый смарт-контракт, используемый для получения дохода путем предоставления ликвидности в DEX. К сожалению, у него есть определенные недостатки, которые можно исправить во время использования, но только в том случае, если пользователи знают о них и что они могут сделать. 

Выше мы рассмотрели несколько вещей, которые могут произойти, и как этих проблем можно избежать. Но следует отметить, что их больше, например, разбавление вознаграждения, если токены отправляются непосредственно на адрес контракта, проблемы с изменением стартового блока, оптимизация газа и многое другое. 

Другими словами, есть уязвимости и проблемы, о которых нужно помнить и следить за ними. Но в целом MasterChef — это революционный контракт, который в значительной степени сделал возможной децентрализованную биржу. Итак, пока вы продолжаете использовать его осторожно и не забываете о его недостатках и о том, как их исправить, все будет в порядке.

Об авторах

Глеб Зыков

Глеб Зыков является соучредителем и техническим директором в Defi безопасность и аналитическая компания ХэшЭкс.

​​Влад Коровников является младшим аудитором и разработчиком смарт-контрактов.

Есть некоторыеtчто сказать об обходных путях Masterchef или о чем-то еще? Напишите нам или присоединяйтесь к обсуждению в нашем Канал Telegram. Вы также можете поймать нас на Tik Ток, что его цельили Twitter.

Отказ от ответственности

Вся информация, содержащаяся на нашем веб-сайте, публикуется добросовестно и только для общих информационных целей. Любые действия, которые читатель предпринимает в отношении информации, размещенной на нашем веб-сайте, совершаются исключительно на свой страх и риск.

Источник: https://beincrypto.com/masterchef-smart-contracts-the-workarounds-for-the-fatal-flaws/