Что такое аудит смарт-контрактов?
Что такое аудит?
Аудит - это форма независимой проверки для регулирования деятельности организации.
В сфере криптовалют основной и самой эффективной формой аудита является аудит смарт-контрактов. Смарт-контракты - это основа данной сферы, потому что они минимизируют наличие человеческого фактора, децентрализуя процесс, и, одновременно с этим, делают этот процесс максимально прозрачным. На их основе строится система практически любого проекта, требующего аудита. Поэтому большинство аудиторских компаний в крипто-сфере занимается именно аудитом смарт-контрактов.
Аудит в крипто - сфере - это проверка кода проекта, в частности его смарт-контрактов, на уязвимости, наличие которых повышает риск вмешательства с внешней стороны и нарушения процесса работы платформы, или даже на её взлом. А также, на наличие бэкдоров (своеобразных лазеек), благодаря которым уже сами создатели и владельцы платформы могут совершать недоброжелательные действия, например, выводить ликвидность из проекта или заменять адреса кошельков.
Что может гарантировать аудит и как взламывают проекты с пройденным аудитом?
Невозможно со стопроцентной вероятностью гарантировать, что проект прозрачен и не подвержен взлому. Существует возможность лишь максимально приблизиться к нулевой вероятности данного события, так как по сей день присутствует человеческий фактор.
Аудит перекладывает ответственность как финансовую, так и репутационную за исправность и надежность смарт-контрактов на аудиторскую компанию, поэтому в интересах компании сделать проверку максимально качественно и надёжно.
Аудит смарт-контрактов может минимизировать риски скама, так как проверяет проект на возможность программного вмешательства с внешней и внутренней стороны.
Скам-проект — это мошеннический инвестиционный проект, которой создается с целью украсть средства инвесторов.
У проекта может присутствовать ряд уязвимостей другого характера. Например, если в проекте плохо прописана токеномика, и владельцы имеют большой процент токенов в собственности, они с лёгкостью могут обвалить курс, что приведёт к убыткам других держателей данного токена. В целом, аудит может помочь в лучшей степени оценить риски, но не может гарантировать их полное отсутствие.
Простого наличия аудита не всегда достаточно. Очень важно обращать внимание на актуальность аудита, и какие именно смарт-контракты прошли аудит. Часто бывает такое, что аудит был пройден давно, и появилось значительное количество непроверенных смарт-контрактов.
В качестве примера возьмем проект PancakeBunny:
PancakeBunny пострадал от кредитной атаки и потерял 114 631,5421 WBNB и 697 245,5699 BUNNY на общую сумму около 45 миллионов долларов США.
На проект была произведена Flash Loan атака. В официальном ответе говорилось, что хакер использовал PancakeSwap для заимствования большой суммы BNB у внешнего разработчика, после чего манипулировал ценами USDT / BNB и BUNNY / BNB, чтобы получить большую сумму BUNNY и продать ее. После проделанных манипуляций, цена BUNNY резко упала.
Flash Loan атака - это атака, при которой используются быстрые кредиты, с помощью которых, при наличии каких-то уязвимостей у проекта, можно, например, манипулировать курсом криптовалюты.
- Компания проводила аудит 18 января 2021 года и высказала, что существуют неаудированные и изменяемые внешние контракты, а функция «помощника» подвержена атаке Flash Loan.
- После проведения аудита команда Pancake Bunny обновила контракты с версии 1 до версии 2 и выбрала другого партнера для аудита. Эта атака Flash Loan была вызвана новыми смарт-контрактами, которые не аудировали.
То есть, можно сделать вывод, что простая плашка о прохождении аудита ничего не значит. Поэтому дату прохождения аудита и все актуальные аудиты следует обязательно учитывать! Внимание стоит обращать и на компанию, которая проводила аудит, так как крупные и известные компании более серьезно подходят к аудированию.
Наиболее известные аудиторские компании с хорошей репутацией
Certik - на данный момент, одна из самых именитых и надежных компаний в данной сфере. Certik не ограничивается только аудитом смарт-контрактов. Платформа проводит аудит проектов и по другим параметрам, позже мы рассмотрим это подробнее. Опыт сотрудничества: Binance, Tether, PancakeSwap, Polygon и другие.
SlowMist - ведущая компания для азиатского региона. Опыт сотрудничества: Huobi, Binance, EOSIO, O3SWAP, OKEX, e.t.c.
Hacken - ведущая консалтинговая компания по кибербезопасности. Опыт сотрудничества: PancakeSwap, Gate.io, 1Inch, FTX e.t.c.
Заключение + полезные материалы
Не стоит относиться к аудиту как к сто процентной гарантии безопасности проекта. Даже при актуально пройденном аудите всех смарт-контрактов, у известной компании остается еще множество источников риска. Стоит проводить собственный анализ проекта, изучать его токеномику и принцип работы. Если хотите более подробно углубиться и изучить эту тему, снизу будут ссылки на материалы, которые вам в этом помогут.
- Перейдя по этой ссылке, можно посмотреть список последних атак на DApp`s. Их виды, описание и причиненный ущерб. Mustread!
- Хороший материал по изучению solidity (язык программирования для написания смарт-контрактов) для новичков. (Есть версия на русском языке). Ссылка.
- Крутая платформа по взлому смарт-контрактов на практике. Появится понимание работы смарт-контрактов и их основных уязвимостей. Ссылка
- Теория смарт-контрактов. Ссылка.
- Полезные инструменты для сканирования и аудита. Ссылка.
- Пример аудиторского отчёта. Ссылка.