Основные выводы

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

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

  • Защитите свои средства с помощью таких инструментов, как Binance Web3 Wallet, и постоянно будьте в курсе рисков безопасности Web3.

В мире децентрализованных финансов, какова стоимость одного пропущенного одобрения? Хотя смарт-контракты могут упростить транзакции, эти взаимодействия также вносят уникальные риски безопасности, особенно когда пользователи предоставляют третьим лицам неограниченное разрешение на доступ и управление своими средствами. В нашем предыдущем блоге мы рассмотрели риски одобрения смарт-контрактов и внешних счетов (EOA). В этой статье мы подробнее рассмотрим дополнительные риски одобрения, особенно в цепочках виртуальных машин Ethereum (EVM), и то, как вы можете защитить свои активы от этих угроз.

Понимание рисков одобрения на EVM

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

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

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

Эксплуатация уязвимости смарт-контракта

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

Вот как может разворачиваться такая атака.

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

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

Утечка: Риск значительно увеличивается для пользователей, которые предоставили неограниченное одобрение скомпрометированному контракту. Эти одобрения предоставляют неограниченный доступ к токенам в их кошельках. Злоумышленники могут выполнять такие функции, как transferFrom(), чтобы снять весь баланс токенов, не один раз, а многократно. Любые новые депозиты в тот же кошелек также остаются уязвимыми, пока действует неограниченное одобрение.

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

Социальная инженерия

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

Примеры из реальной жизни

Уязвимости в обновлениях смарт-контрактов: протокол LI.FI

Уязвимость во время обновления смарт-контракта на платформе LI.FI позволяла злоумышленнику выполнять произвольные вызовы к любому контракту без надлежащей проверки. Эта уязвимость позволяла злоумышленнику использовать кошельки, которые предоставили бесконечное количество одобрений токенов для контрактов LI.FI. Используя эти непроверенные разрешения, злоумышленник мог выводить средства из этих кошельков, не требуя от пользователей никаких дополнительных разрешений. Поскольку уязвимости могут возникнуть неожиданно, всегда безопаснее перестраховаться, отозвав разрешения, когда это возможно.

Компрометация подписчиков с несколькими подписями: Radiant Capital

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

Этот случай иллюстрирует опасности неотзыва одобрений после взлома. Один пользователь кошелька Web3, как показано ниже, предоставил неограниченное одобрение скомпрометированному контракту Radiant Capital Lending Pool. «Неограниченное» разрешение означало, что контракт мог изымать токены из кошелька пользователя без ограничений.

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

Социальная инженерия: Monoswap

Разработчик Monoswap стал жертвой целенаправленного мошенничества, когда злоумышленники выдавали себя за венчурных капиталистов. Чтобы присоединиться к звонку, где они якобы должны были обсудить возможность финансирования, разработчика обманом заставили установить вредоносную имитацию мессенджера Kakaotalk. Без его ведома злоумышленники воспользовались этой возможностью, чтобы установить ботнет на его офисном ПК, который имел доступ к кошелькам и контрактам, связанным с Monoswap.

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

Способы защитить себя

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

Будьте осторожны с одобрениями

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

Привычно отзывать неиспользованные одобрения

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

Проведение комплексной проверки

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

Используйте кошелек Binance Web3

Защитите свои кошельки с помощью надежных инструментов, таких как Binance Web3 Wallet, который ставит безопасность пользователей на первое место с помощью надежных функций для противодействия распространенным угрозам Web3, включая злоупотребление одобрением.

Когда проект скомпрометирован, Binance Web3 Wallet быстро действует, чтобы защитить своих пользователей. Оповещения о безопасности и уведомления в приложении немедленно отправляются, призывая пользователей отозвать рискованные одобрения или защитить свои активы. Постоянное всплывающее окно остается видимым до тех пор, пока рискованные одобрения смарт-контрактов не будут полностью отозваны, гарантируя пользователям принятие мер для защиты своих средств.

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

Будьте в курсе событий и будьте в курсе событий

Знание — ваша лучшая защита в постоянно меняющемся ландшафте DeFi. Оставайтесь в курсе новостей безопасности, разработок проектов и новых уязвимостей с Binance Academy. Для более глубокого погружения в потенциальные угрозы ознакомьтесь с нашей серией Know Your Scam. Эти ресурсы предоставляют ценную информацию о распознавании мошенничества и защите себя от последних рисков в экосистеме.

Заключительные мысли

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

Дальнейшее чтение