BTC 103969$
ETH 2514.75$
Tether (USDT) 1$
Toncoin (TON) 3.47$
telegram vk
telegram vk Х
Russian English
"

Вы действительно доверяете смарт-контрактам, отвечающим за вашу криптовалюту?

Дата публикации:06.09.2023, 19:30
1248
1248
Поделись с друзьями!

Прошлый год был худшим годом для взломов Web3, когда было украдено средств на сумму почти 4 миллиарда долларов США, в основном с децентрализованных финансовых платформ. Причина этих событий почти всегда связана с ошибками, эксплойтами или другими проблемами с базовыми смарт-контрактами, которые запускают эти сервисы. К счастью, разработчики уже имеют доступ к самому мощному инструменту предотвращения атак: аудиту смарт-контрактов. В аудитах участвуют сторонние эксперты, выполняющие детальный анализ всего кода, выявляющие недостатки в логике, возможные эксплойты и способы их исправления.

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

Почему необходимы аудиты смарт-контрактов

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

Если DeFi и Web3 собираются стать глобально принятыми миллиардами пользователей, необходимо решить проблему "слона в комнате". Как это возможно, что у этих сервисов, обрабатывающих миллиарды долларов средств, возникает так много критических проблем? Проблема заключается в смарт-контрактах — коде, который определяет, как различные платформы и активы работают вместе. Из-за присущей блокчейнам неизменности важно, чтобы этот код был безупречен и работал точно по назначению. Что-нибудь меньшее, и вполне возможно, что огромные суммы стоимости могут быть скомпрометированы.

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

Аудит - это ручной процесс, но его можно и нужно улучшить с помощью инструментов, технологий и автоматизации. Как правило, наиболее эффективным подходом является привлечение реальных экспертов-людей для проведения окончательного обзора. Аудиторы сначала изучают более широкую инфраструктуру кода, чтобы понять, чего пытается достичь проект. Затем более конкретные области кода проверяются и тестируются в различных условиях. Результаты этих выводов компилируются и проходят последнюю проверку, а в конечном итоге отправляются обратно команде разработчиков и впоследствии публикуются в Интернете, где их может увидеть общественность.

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

Как прочитать аудит смарт-контракта

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

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

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

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

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

Какие проверки часто обнаруживают

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

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

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

Подписывайся на наш Telegram канал. Не трать время на мониторинг новостей. Только срочные и важные новости

https://t.me/block_chain24