Существует новый класс людей, которые все пытаются арбитражить контракты NFTStrategy. Как самопровозглашенный хранитель этих контрактов, я подглядываю за тем, как каждый участник работает. Большинство развертывают неаудированные контракты для использования, обычно вместе с делегированием EIP7702. 1/🧵
2/ Я не могу не подчеркнуть, что прежде чем делегировать весь свой аккаунт контракту, который вы создали с помощью ChatGPT... на самом деле, просто не делегируйте весь свой аккаунт контракту, который вы создали с помощью ChatGPT.
3/ Некоторые люди используют пустые EOA для выполнения арбитража. В общем, это нормально, так как риск эксплуатации контракта в наихудшем случае равен тому, что у вас есть на счете. Однако вы все равно подвергаете себя риску, если когда-либо используете этот счет для чего-то другого в будущем.
4/ Например, если 0xB4 когда-либо приобретет Bored Ape, не отозвав предварительно одобрение, которое я принудил на его аккаунте, то обезьяна будет как моя. Я бы, конечно, никогда не забрал ее, это было просто предупреждение в блокчейне.
5/ Аналогично пользователю ОС "deadcells": У меня есть ваш EPG #35 и Howlerz #3924. Делегируйте на новый контракт с какой-либо формой контроля доступа, особенно поскольку ваш жестко закодированный советник по майнингу может быть использован для принудительного откачивания вашего ETH. Я, конечно, верну NFTs, как только вы будете в безопасности.
7/ Проблема тройная: Во-первых, нет проверки, чтобы убедиться, что контракт стратегии вызывает функцию. Во-вторых, нет проверки, чтобы убедиться, что вызов рынка покупает NFT. В-третьих, нет проверки, чтобы убедиться, что передаваемый NFT вообще является NFT.
8/ Эксплойт прост: вызов маркетплейса становится буквально тем, чем вы хотите (перевод NFT, одобрение WETH или любой произвольный вызов контракта). Перевод NFT может быть чем угодно, если только контракт имеет функцию transferFrom, которая не приведет к ошибке.
9/ В приведенных выше случаях я инициировал перевод с нулевым значением по USDC, указав "0" в качестве ожидаемого идентификатора токена. "transferFrom(them, me, 0)" технически является действительным переводом с точки зрения контракта USDC.
10/ Итак, снова призыв ко всем: проверьте свои контракты, независимо от того, насколько простыми вы их считаете. Это пространство опасно, и вы должны предполагать, что все хотят вас обмануть (так и есть).
Показать оригинал
133,48 тыс.
445
Содержание этой страницы предоставляется третьими сторонами. OKX не является автором цитируемых статей и не имеет на них авторских прав, если не указано иное. Материалы предоставляются исключительно в информационных целях и не отражают мнения OKX. Материалы не являются инвестиционным советом и призывом к покупке или продаже цифровых активов. Раздел использует ИИ для создания обзоров и кратких содержаний предоставленных материалов. Обратите внимание, что информация, сгенерированная ИИ, может быть неточной и непоследовательной. Для получения полной информации изучите соответствующую оригинальную статью. OKX не несет ответственности за материалы, содержащиеся на сторонних сайтах. Цифровые активы, в том числе стейблкоины и NFT, подвержены высокому риску, а их стоимость может сильно колебаться. Перед торговлей и покупкой цифровых активов оцените ваше финансовое состояние и принимайте только взвешенные решения.