- Повернутися до менюЦіни
- Повернутися до менюдослідження
- Повернутися до менюКонсенсус
- Повернутися до менюСпонсорський матеріал
- Повернутися до меню
- Повернутися до меню
- Повернутися до меню
- Повернутися до менюВебінари та Заходи
Leaderless DAO перевірено на вразливість Ethereum
Slock.it оголосив про декілька виправлень у коді, який лежить в основі The DAO, автономної організації, яка залучила ефіру на суму понад 150 мільйонів доларів.
Уразливість у тому, як деякі розробники впроваджують Ethereum, призвела до виправлення в останню хвилину The DAO, розподіленої автономної організації, яка має у своєму розпорядженні понад 150 мільйонів доларів для інвестування в проекти на основі Ethereum.
Без керівника чи будь-якої офіційної команди безпеки, яка б виявляла та виправляла потенційні загрози безпеці, ця відповідальність лягає на спільноту з відкритим кодом, що складається з членів, які купили права голосу в організації за ether на етапі її створення.
Хоча особи деяких із залучених досі неясні, метод, за допомогою якого було виявлено та, як повідомляється, виправлено вразливість, становить перше реальне випробування структури DAO та методів вирішення проблем.
Через виноградну лозу
Проблема виникла минулого тижня, коли користувач GitHub chriseth За словами засновника Blockchain Foundation Пітера Вессенеса, «випадково вказав на жахливу, жахливу атаку на контракти гаманців», яка могла виникнути через те, як деякі розробники впроваджували смарт-контракти, написані мовою Solidity Ethereum.
Власний блог Вессенеса постПотім ця проблема привернула увагу користувача Reddit, пов’язаного з Maker DAO, який побудований на блокчейні Ethereum .
Уразливість, яка дозволяє зловмисникам злити обліковий запис ONE типу, була успішно протестована Maker DAO, згідно з їх пост, що, у свою чергу, привернуло увагу eththrowa, користувача форуму учасників DAO.
Етрова підтверджено що вразливість також існувала у реалізації, яка тоді використовувалася The DAO, яка була створена з використанням програмного забезпечення з відкритим кодом, написаного Slock.it, і є найбільшою розподіленою автономною організацією, яка зараз має в своєму розпорядженні приблизно 162 мільйони доларів США.
Саме ця публікація, зрештою, привернула увагу засновника Slock.it Стівена Туала. Він разом з іншими учасниками форуму негайно відреагував і через день опублікував LINK на виправлення.
Вчора, Туал оголосив серія оновлень програмного забезпечення проекту, призначеного для боротьби з уразливістю та іншими векторами теоретичних ігор, не пов’язаних із уразливістю «рекурсивного виклику», як її зараз називають.
У своєму дописі Туал написав:
«Ми висловлюємо подяку спільноті... яка ще раз довела, що відкритий процес розробки веде до швидкого виявлення, ізоляції та вирішення потенційних вразливостей, а в цьому випадку — до загального вдосконалення шаблонів проектування як частини мов програмування».
Жоден фонд DAO не був під загрозою через вразливість, згідно з окремим пост.
Більш широке питання
Запущений на початку цього року неназваною особою чи групою, DAO побудовано на відкритому коді, який дозволяє користувачам колективно голосувати за те, як розподіляти кошти на проекти, які члени вважають гідними, і отримувати дивіденди, якщо проект буде успішним.
У цьому випадку вразливість дозволила б одержувачу цих дивідендів «у багато разів витрачати свої права, викликаючи контракт рекурсивно», згідно з eththrowa.
Але як стало ясно з публікації Вессенса в п’ятницю, загроза рекурсивного виклику була T просто слабкою стороною DAO, а більш загальною проблемою того, як деякі розробники реалізують смарт-контракти, написані мовою програмування Solidity.
В електронному листі до CoinDesk Вессенес надав більш технічний опис вразливості:
«Усі загальнодоступні функції Solidity, які надсилають гроші або використовують «дзвінок» за іншим контрактом, можуть рекурсивно викликатися одержувачем-атакою. Це T , як працює Bitcoin , тому це може бути несподіванкою для недосвідчених розробників Ethereum . Практичний висновок полягає в тому, що кожна з ваших функцій (і фактично весь ваш контракт) має бути «повторним», тобто вони повинні працювати однаково, якщо її частини повторно викликаються до завершення».
Виправлення
Член Ethereum Foundation Тейлор Геррінг сказав CoinDesk , що оригінальний опис проблеми від Vessenes був точним. Однак він додав, що для усунення вразливості T потрібні будь-які зміни в кодовій базі Ethereum .
Швидше, уразливість вимагає іншого типу реалізації розробниками.
В інтерв’ю Геррінг сказав, що вразливість «викликає занепокоєння, оскільки Human -програміста може спричинити цю проблему», але «це не властива проблема Solidity або EVM [віртуальної машини Ethereum ], мови сценаріїв та інтерпретаторів коду, які живлять мережу.
Вессенес включив два можливі рішення слабкості «рекурсивного виклику». пост.
Інші виправлення, специфічні для коду DAO, також оголошені вчора Slock.it, призначені для вирішення потенційних проблем, які виникають у деяких вказав щодо моделі управління організацією.
Зокрема, це виправлення певних теоретико-ігрових атак, у тому числі того, що називається «упередженням «так», яке є результатом стримування голосувати «проти». Виправлення реалізовано у формі запитів на отримання на GitHub.
Тепер 23 000 членів The DAO з правом голосу мають погодитися на зміни або просувати альтернативне рішення.
Туал написав у блозі Slock.it:
«Це проект із повністю відкритим вихідним кодом. Починаючи з сьогоднішнього дня та протягом двотижневого періоду перегляду, усім, включаючи кураторів, пропонується ознайомитися з випуском і взяти участь у ньому».
Зображення натовпу через Shutterstock
Michael del Castillo
Постійний член редакційної групи CoinDesk, Майкл охоплює програми Криптовалюта та блокчейну. Його статті були опубліковані в New Yorker, Silicon Valley Business Journal і Upstart Business Journal. Майкл не є інвестором у будь-які цифрові валюти чи блокчейн-проекти. Раніше він тримав вартість у Bitcoin (Див.: Редакційна Політика). Електронна адреса: CoinDesk. Соціальні мережі Майклом: @delrayman
