Дебют новичка GameFi: Fren Pet, полноцепочечная игра с точки зрения безопасности

После того, как ажиотаж на Friend.tech утих, внимание рынка привлекла Fren Pet, блокчейн-игра на основе блокчейна, созданная двумя разработчиками. С 19 по 20 ноября, благодаря официальному вниманию Base и игровому процессу социального деления Fren Pet, Fren Pet стал популярным в социальных сетях и стал новичком GameFi.

В то время как число пользователей Fren Pet быстро растет, аспект безопасности остается свободным. Сегодня команда безопасности Beosin проанализирует механизм проектирования и код контракта Fren Pet, чтобы помочь вам понять потенциальные риски.

GameFi新秀登场:从安全视角看全链游戏Fren Pet

Анализ механизма работы Fren Pet

Текущая игра Fren Pet состоит из чеканки домашних животных, кормления домашних животных, сражений питомцев с другими пользователями, колеса фортуны и бросания костей. Пользователям игры, участвующим в Fren Pet, сначала нужно чеканить питомцев (NFT), и каждому питомцу необходимо потратить 100 токенов FP на минтинг (если другие пользователи впоследствии будут чеканить питомцев, потраченные FP будут возвращены пользователю), а затем пользователям необходимо заплатить токены FP, чтобы купить яблоки, кофе и другой реквизит для кормления своих питомцев, чтобы избежать TOD (Countdown to Death) питомца до нуля, то есть удерживаемый NFT будет автоматически уничтожен.

GameFi新秀登场:从安全视角看全链游戏Fren Pet

Pet Points начисляются за кормление питомцев, чем выше баллы, тем больше вознаграждений ETH вы получаете, а вознаграждения ETH поступают из налога на транзакции токенов FP, который облагается налогом в размере 5% на каждую транзакцию и 2% распределяется между геймерами. Поэтому, чем больше пользователей участвует, тем больше спрос на токены FP, тем больше объем торгов токенами FP и тем больше ETH будет вознаграждено.

Анализ контрактов с домашними животными Fren

Основной адрес контракта Fren Pet — 0x85b157EbaAF289De5301aE6694B651BF3b8df1C3, адрес контракта NFT — 0x5b51Cf49Cb48617084eF35e7c7d7A21914769ff1, а адрес контракта токена — 0xFF0C532FDB8Cd566Ae169C1CB157ff2Bdc83E105 Инструмент Beosin VaaS просканировал контракт в сочетании с анализом экспертов по аудиту безопасности Beosin и обнаружил, что контракт имеет следующие потенциальные риски безопасности:

GameFi新秀登场:从安全视角看全链游戏Fren Pet Beosin VaaS

Основной контракт с Fren Pet

Основной контракт Fren Pet в первую очередь отвечает за игровой контент и распределение наград, упомянутых выше. Вот несколько предложений по повышению безопасности их контрактов:

1. Добавить модификатор nonReentrant

В функциях погашения и уничтожения контракта разработчик должен подтвердить, что функция не подвержена риску атак с повторным входом. Рекомендуется использовать модификатор nonReentrant антиреентерабельного контракта openzeppelin, чтобы избежать атак с повторным входом.

GameFi新秀登场:从安全视角看全链游戏Fren Pet

2. Используйте безопасный генератор случайных чисел

Одноразовое число, используемое основным контрактом Fren Pet, генерируется из блоков и адресов отправителей, и безопаснее использовать проверяемую случайную функцию, такую как Chainlink, для генерации надежных и справедливых чисел nonce.

GameFi新秀登场:从安全视角看全链游戏Fren Pet

3. Обратите внимание на контроль доступа

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

####** Fren Pet NFT 合约**

Общая структура NFT-контракта Fren Pet выглядит следующим образом:

GameFi新秀登场:从安全视角看全链游戏Fren Pet

Контракт FrenpetNFT наследует ERC721 и отвечает за чеканку и сжигание NFT, а IRenderer отвечает за обработку метаданных NFT Fren Pet. Рекомендуется выдавать события при вызове его функций setRenderer и setMinter, чтобы внешний мир мог прослушивать и отслеживать передачу соответствующей информации. **

GameFi新秀登场:从安全视角看全链游戏Fren Pet

Контракт Fren Pet Token

1. Риск централизации

Контракт токена имеет несколько функций onlyOwner, таких как функция черного списка и функция updateBuyFees. Эти функции могут оказать огромное влияние на торговлю токенами. Владелец контракта может изменить комиссию за транзакцию, заблокировать пользователю покупку или продажу, а также добавить черный список адресов:

GameFi新秀登场:从安全视角看全链游戏Fren Pet

2. Отсутствует временная блокировка

Контракт токена Fren Pet не имеет временной блокировки для ограничения прав на операции владельца контракта. В то время как некоторые функции контракта, такие как withdrawStuckToken() и updateSwapEnabled(), позволяют держателям контрактов предпринимать действия против контракта в чрезвычайной ситуации для защиты активов пользователей, отсутствие временных блокировок может позволить злоупотреблять этими функциями. В этом случае у пользователя и охранной компании не хватает времени, чтобы среагировать на действия держателя договора.

Остерегайтесь фишинга!

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

GameFi新秀登场:从安全视角看全链游戏Fren Pet Фишинговый сайт Fren Pet

Есть несколько советов по борьбе с фишингом, которые следует иметь в виду, постараться избежать фишинга или рассмотреть возможность установки плагина Beosin Anti-Phishing, который поможет вам идентифицировать фишинговые сайты. **

GameFi新秀登场:从安全视角看全链游戏Fren Pet

Ссылка для скачивания:

Резюме

Контракт Fren Pet не имеет очевидных уязвимостей бизнес-логики, но риск централизации контракта очевиден, и некоторый код имеет более безопасную реализацию для повышения безопасности контракта. До этого на рынке было много повальных увлечений GameFi и SocialFi, а обычные пользователи склонны к эмоциям FOMO и слепо попадают в ловушку рыбалки. Пользователи должны понимать, что Fren Pet — это всего лишь попытка двух разработчиков в области Web3, и пользователи должны хорошо справляться с управлением фондами и исследованием проектов, а также участвовать рационально.

Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • комментарий
  • Репост
  • Поделиться
комментарий
Добавить комментарий
Добавить комментарий
Нет комментариев
  • Горячее на Gate Fun

    Подробнее
  • РК:$2.23KДержатели:1
    0.00%
  • РК:$2.26KДержатели:2
    0.07%
  • РК:$2.22KДержатели:1
    0.00%
  • РК:$2.23KДержатели:1
    0.00%
  • РК:$2.23KДержатели:0
    0.00%
  • Закрепить