Время Читать: 6 минут
Создание DAO уникально для web3, которое использует возможности блокчейна в управлении протоколами без участия централизованных организаций.
DAO в значительной степени сосредоточен на двух аспектах — шифровании и распределенном хранилище. Это дает им возможность работать на основе коллективного решения членов сообщества.
Как и в случае с любым протоколом Web3, проблемы с безопасностью связаны и с протоколами DAO.
Эта статья направлена на то, чтобы раскрыть базовую инфраструктуру DAO и рекомендации по импровизации безопасности их смарт-контрактов для защиты от атак.
Цель ДАО
Ethereum всегда считался первым программируемым блокчейном. Он играет огромную роль в обеспечении настоящей децентрализации, позволяя разработчикам играть с кодом.
В этом отношении, Смарт-контракты ДАО предназначены для содействия Ончейн управление
” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>управление в цепочке, оправдывающее тот факт, что сообщества управляют исключительно блокчейном.
Как и любые другие смарт-контракты, контракты DAO в основном предназначены для автоматизации процесса и выполнения действий при выполнении предопределенных условий.
Чтобы проиллюстрировать пример, рассмотрим контракт токена ERC-20. Он создается на основе стандартов ERC-20 с такой информацией, как адрес контракта, поставка токена, имя токена, условия передачи токена и т. д.
Работа токена выполняется при соблюдении установленных правил. Точно так же контракт DAO закодирован, чтобы определять работу организации, например, решение о распределении средств в соответствии с предложениями голосования членов.
Например, DAO имеет встроенные казначейские обязательства. Средства от них тратятся после одобрения группы, и ни один орган не имеет доступа к выполнению какого-либо плана.
Предложения по голосованию для принятия важных решений, связанных с проектом, гарантируют, что голос каждого участника будет услышан, что приведет к большему доверию и прозрачности в деятельности в сети.
Управляющие права на деятельность организаций варьируются от протокола к протоколу, и это чисто субъективно в зависимости от того, как выполняется кодирование DAO. Поэтому важно обратить внимание на управляющие права, которые пользователи имеют в протоколе, прежде чем регистрироваться в каких-либо DAO.
Шаги, связанные с настройкой смарт-контрактов DAO
Механика Ончейн управление
” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>управление в цепочке осуществляется посредством набора контрактов — токена, регулятора и временной блокировки . Давайте выясним роль каждого из них.
Маркеров: Токены определяют право голоса членов сообщества для участия в Ончейн управление
” data-gt-translate-attributes =”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>управление в цепочке. Контракт токена гарантирует, что баланс будет проверен для получения полномочий и позволит участникам выразить свой выбор в отношении предложений по управлению.
губернатор: Контракт управляющего содержит условия о распределении власти между держателями токенов, допустимом типе токенов, подсчете количества голосов, необходимого для форума, и так далее. Тем не менее, разработчики могут кодировать особенности функций, определяющие, как они хотят, чтобы контракты выполнялись.
Кроме того, контракт губернатора также включает в себя отсрочку голосования и особенности предложения по голосованию в кодексе. Он служит для указания того, как долго предложение о голосовании открыто для голосования участников.
Блокировка времени: Аспект Timelock включает настройку AcessControl для предлагаемой роли, роли исполнителя и роли администратора. Интеграция компонента временной блокировки с системами управления дает участникам свободу уйти в случае несогласия с решением.
Общий взгляд на страхи безопасности для DAO.
Зависимость ДАО от смарт-контрактов возлагает на них ответственность за управление голосованием и обслуживание казначейства. И у каждого из этих элементов есть свои проблемы с безопасностью; давайте раскрутим их ниже.
Проблемы безопасности в смарт-контракте
Давайте немного отмотаем назад и вспомним всем известный «крах DAO». Основной причиной стала ошибка в коде DAO. Хакер смог воспользоваться уязвимостью и вывести средства из контракта, сделав Рекурсивные вызовы
” data-gt-translate-attributes =”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>рекурсивные вызовы.
Контракт содержал 12.7 млн эфира, из которых хакер украл 3.6 млн эфира, воспользовавшись лазейкой в контракте.
Этот инцидент ясно показывает необходимость большего опыта и экспериментов с безопасностью DAO. Хотя DAO очень хвалят за инновации, качество кода нанесло больший урон.
Кроме того, кодирование смарт-контрактов должно быть полностью прозрачным, чтобы ни одна функция не превратилась в ошибку позже.
Проблемы безопасности в управлении
Есть несколько способов, которыми хакеры могут вторгнуться в управление протоколом. Начнем с того, что децентрализованные уведомления — это один из способов, когда хакер может блокировать уведомления, он может вводить вредоносные предложения, которые остаются незамеченными другими членами DAO.
Следующим является предложение, требующее транзакций с несколькими вызовами. Если предложение не проверяется и не проверяется DAO, злоумышленник может использовать их для получения сложных результатов.
Неправильные пороги и несоответствующие таймлоки приводят к возможности плохих действий. Срочные кредиты — еще одна проблема, связанная с безопасностью управления. Злоумышленники могут заимствовать огромную сумму токенов, что наделяет их большей властью для продвижения предложения.
Предложения со злыми намерениями вызывают серьезная проблема безопасности над внесенными в протокол изменениями. AAVE и Compound в прошлом страдали от таких взломов.
Проблемы безопасности при выполнении
У MakerDAO, запущенного в сети Ethereum в 2017 году, дела шли хорошо. До краха рынка в 2020 году, когда цена эфира упала на 50%. Это был самый важный залог, используемый в MakerDAO, и обвал цен вызвал массовую ликвидность.
MakerDAO не был предназначен для такой крупной ликвидации, которая привела бы к большим финансовым потерям. Хотя кодирование здесь было сильным, ошибка заключалась в выполнении механизма ликвидации.
С тех пор выполнение механизма DAO также было добавлено в список других существующих проблем безопасности.
Контрольный список для аудита смарт-контрактов DAO
Безопасность является преобладающим аспектом в Ончейн управление
” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>управление внутри цепочки, чтобы защитить власть от попадания в плохие руки. Итак, с точки зрения безопасности, давайте найдем рекомендации по разработке надежных контрактов DAO.
Низкоуровневые вызовы: Вызовы произвольных контрактов, которые извлекают произвольные данные, должны обрабатываться осторожно.
Обработка низкоуровневых вызовов сложна, потому что это может открыть шанс для векторов атаки с повторным входом. Таким образом, всегда рекомендуется проверять условие успеха вызовов, а затем обрабатывать возвращенные данные.
ETH-холдинги: Основываясь на выводах аудита, было много случаев, когда ETH не обрабатывались должным образом в контрактах, связанных с управлением. Таким образом, предлагается обеспечить способ отправки ETH, когда контракты на управление требуют обработки ETH.
Еще одна предосторожность, которую следует соблюдать, — это использование msg.value, которое разрешает пакетные вызовы. Скорее всего, этот шаблон может пойти не так.
Воздержитесь от эксплойтов Flash-кредита: На флэш-кредиты рассчитывают эксплуататоры, которые хотят повлиять на решения управления и начать атаку. Они берут мгновенные кредиты и получают голоса руководства посредством владения токенами, чтобы манипулировать решением управления.
Таким образом, вы можете не измерять количество голосов в текущем блоке, поскольку быстрый кредит, взятый для получения власти управления, подвергает систему риску.
Регулярные обновления: Даже если в контракте не обязательно есть какие-либо недостатки, вы всегда должны проверять рынок токенов управления и соответствующим образом корректировать порог. В противном случае это позволит злоумышленникам принимать решения.
Убедитесь, что вы обращаете внимание на особенности при переносе и обновлении системы управления. Были случаи, подобные тому, что произошел с Uniswap. Его переход к губернатору Браво инициировал недостаток контракта, который временно приостановил принятие управленческих решений.
Включите задержки, используя контракт timelock: Действия с задержкой по времени позволяют сообществу просмотреть изменения в протоколе до того, как они вступят в силу. Эти временные задержки могут быть реализованы с помощью контрактов Timelock.
Уязвимости, связанные с протоколом: Программное обеспечение, используемое для кодирования протокола, работает с определенной бизнес-логикой, которая может отличаться друг от друга. Как и проблемы, возникающие при внесении изменений в эту систему.
На самом деле, протокол Compound столкнулся с проблемой из-за одобрения манипулятивного предложения сообщества. Поэтому всегда полезно провести тщательную проверку кодекса коллегами и независимыми сторонами, чтобы убедиться в надежности и надежности контракта.
QuillAudits Eminence в аудите смарт-контрактов DAO
В настоящее время, чтобы система была чисто самофункционирующей, многие проекты находят способ внедрить Ончейн управление
” data-gt-translate-attributes =”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>управление в цепочке. Таким образом, эта область быстро развивается и процветает в соответствии с потребностями сообщества.
Атаки также усложняются, что одновременно и сложно, и дорого. Поэтому необходимо обеспечить наличие процессов и тщательное соблюдение кода. QuillAudits проводит тщательное изучение и аудит кода, чтобы исключить любые потенциальные ловушки и защитить проект от вредоносных действий.
16 Просмотры
- Bitcoin
- блокчейн
- Блокчейн и безопасность смарт-контрактов
- соответствие блокчейна
- блочная конференция
- coinbase
- Coingenius
- Консенсус
- криптоконференция
- криптодобыча
- криптовалюта
- децентрализованная
- Defi
- Цифровые активы
- Эфириума
- обучение с помощью машины
- невзаимозаменяемый токен
- Платон
- Платон Ай
- Платон Интеллектуальные данные
- Платоблокчейн
- ПлатонДанные
- платогейминг
- Polygon
- Доказательство доли
- Квиллхэш
- Безопасность смарт-контрактов
- трендов
- W3
- зефирнет