Pull to refresh

Comments 51

Не "Больше на кону, чем просто % от всего ETH", а "Тогда на кону был больший % от всего ЕТН".

Да нет, думаю shador прав. Я then c than перепутал при переводе. Виталик говорил про «больше на кону в то время»

Нет, имеется в виду именно stake, в смысле денег. Это очень важно в свете перехода на алгоритм proof-of-stake (PoS), где хакер смог бы получить слишком много влияния благодаря украденным деньгам.

А можно запретить всей системе проводить операции с этим кошельком? Пусть хоть миллиард украдут, воспользоваться все равно не смогут.

То, о чем вы говорите, и есть хард-форк сети. Он и был произведен в случае со взломом The DAO, из-за чего произошёл раскол сети эфира на ETH и ETC.

Но в случае с The DAO у сообщества было значительное время до того, как хакер смог бы воспользоваться деньгами. Здесь, как Виталик и говорил, хакер может просто перевести деньги (например, через какой-нибудь eth-миксер), так что отследить их дальнейшую судьбу будет невозможно.
Кто? Разработчики кошелька или пользователи? Разработчики несомненно, но пострадали-то не они.

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

Ну, вообще-то банковские трояны именно этим и занимаются уже очень много лет. И да, долбодятлом, почему-то, при этом принято считать именно пострадавшего — не обновлял ОС, не поставил правильный антивирус, качал из инета игрушки на комп с ДБО, запускал аттачи к письмам, etc. Я не говорю, что случай из статьи идентичен, там всё-таки неясно, что могли предпринять пострадавшие для своей защиты (ну, кроме выделения средств на аудит безопасности этого кода), но определённые параллели между этими ситуациями определённо наблюдаются.

Пользователи должны понимать, что контракты — это доверие их создателям/разработчикам, и если создатели не имеют опыта/мошенники — быть готовым к потерям средств.

Токены — не децентрализованная криптовалюта, это цифровой актив, с централизованным контролем, а в случае с контрактами — еще и подверженный ошибкам реализации.

p.s. интересно, когда разработчики (платформы типа ethereum или может библиотеку хитрых контрактов разработать) начнут добавлять в контракты механизмы возможности отката транзакций, специально на такие случаи как в статье, т.е. превратив подсистему в полный аналог централизованных банков.
ага, давайте каждый раз, как какой-то банк ограбят, будем новые деньги вводить.
Потребительские вклады в банках обычно застрахованы, как и личные средства банков.
Пора создавать стартап — страхование кошельков криптовалюты)
кстати, идея не плоха, вполне может и появится такое)
1. Кто платит-то за эти страховки не задумывались? На санацию Банка Москвы потратили больше 100 млрд рублей, это 1тр из вашего кармана и моего и всех остальных и таких банков не 1 десяток. Не больно ли жирно содержать этих дармоедов, которые по факту просто воруют наши деньги?
2. И про забалансовые вклады, я так понимаю, вы не слышали?

Именно поэтому у криптовалют большое будущее — больше не будет ненужных вороватых «кровососов» и всяких сервисов типа робокассы с 20% комиссии за оплату.
Ошибка была в коде конкретного контракта, или в коде кошелька?
Насколько я понимаю, хранилище кошелька представляет собой адрес смарт-контракта в сети эфира, поэтому можно сказать в коде всех смарт-контрактов, созданных с помощью Parity.
шо? никогда ж такого не было, и вот опять?!
Супер умные но не супер надёжные контракты.

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


С этой точки зрения мне нравится разрабатываемый в данный момент блокчейн eos, в котором при необходимости хардфорки можно провести быстро и безболезненно. Одна эфир уже есть и работает а eos пока существует только на бумаге (хотя разработчики уже собрали больше 200 млн. при ожидаемой капитализации под 2 миллиарда долларов).

Легко проводить хардфорки == центральная authority, способная «блокировать активы в случае обнаружения подозрительной активности и в связи с отказом предоставить форму УФН-БМ-42 бис 4 в отведённый законом срок в отдел борьбы с экономической активностью ЦБ УРФ».

Нафиг-нефиг.

Не обязательно центральная authority. Возьмём steem/golos с его delegated proof of stake консенсусом. У них там уже под двадцать хардфорков безболезненно прошли. Участники сети выбирают "делегатов", которые решают/поддерживают работу сети.

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

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

«проаудировать» — это доказать, что в нём нет багов?

(запасаюсь попкорном) Ну, расскажите мне про «проаудирование» кода указанных систем, после которых там не остаётся багов.

Если остаются — возвращаемся к вопросу о том, что делать, если в коде хардфорка баг, который эксплуатируется.

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


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


Что сделают разработчики блокчейна / владельцы эфира? Они просто найдут новый способ консенсуса и напишут новый код, возращающий сеть в состояние до атаки (подобное и произошло с разделением eth/etc). То есть да, делается новый хард-форк, в данном случае изменяющий код "на самом высоком уровне". Но опять же, что proof of work что proof of stake изучены более-менее хорошо и с определенной долей уверенности можно утверждать что в них нет багов. Я же говорю про систему, которая позволит регулировать систему без вмешательства в код самого блокчейна.

Допустим, такой код найден. Злоумышленник цедит деньги и через ближайший обменник выводит их во что-то другое. Постепенно начинают расходиться слухи о том, что «воруют деньги». Курс начинает падать. Злоумышленник увеличивает «норму отбора», слухи становятся паническими, биржи начинают отказываться принимать валюту, злоумышленник сливает сколько может через оставшиеся биржи, после чего продаёт за сколько-то (другой валюты) уязвимость какому-нибудь zero-day трейдеру или security researcher'у.

После публикации баг исправляют, но…

С потерянными деньгами-то что делать? Отменять продажу на бирже? Биржи против. Делать хардфорк всех валют, в которые были выведены деньги? Может, сразу вселенную форкнуть?

В таком случае да, ничего не сделаешь. Собственно, поэтому и со вчерашним взломом хард-форк бесполезен, деньги уже пошли гулять

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

Я, кстати, всеми руками за. Регуляторы не в смысле регулирующих органов государства, а в смысле регулирования изнутри сети (тот же консенсус DPoS).


На текущий момент с криптовалютой очень просто отстрелить себе не только ногу, но и голову.

то есть, если ты всем не понравился на фотке профайла, то все могут решить у тебя бабла отжать?

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

А это просто может случаться не так часто и не так публично, так что любой. У нас по идее тоже нельзя взятки давать, "кто же поверит и доверит что-то продажному чиновнику", но всё же есть у нас великое "не пойман — не вор", которые покрывает и вашу ситуацию, и ситуацию с чиновниками)

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

1. Откуда брались сами кошельки, попавшие под атаку? Не мог же атакующий просто посылать запросы на рандомно, брутфорсом сгенерённые наборы символов — такой перебор занял бы тысячи лет, а не пару часов. Понятно, что тут нужен не приватный ключ, а некий публичный адрес, но всё-таки — откуда ему взяться, если человек сидит дома, примус починяет, а на кошельке живут себе эфирки?

2. Как конкретно посылался вызов функции? В эфире можно послать ноль ETH на чужой кошелёк, если знаешь его адрес, а попутно прицепить вызов функции, который ещё и вызовется? Т.е. система не пересылает просто 0 eth с одного кошелька на кошелёк, она зачем-то ещё и пересылает произвольный код?
2. Можно, если кошелёк — смарт-контракт
  1. Все адреса, с которых либо на которые отправлялись средства, попадают в блокчейн эфира. Блокчейн эфира можно посмотреть и в интернете, например на https://etherscan.io. Там же можно посмотреть весь текст смарт-контракта, если этот адрес — смарт контракт. Найти кошелек с определенным смарт-контрактом можно либо через сам блокчейн, либо, подозреваю, и через поисковые системы. К тому же деньги были выведены с определенных кошельков, используемых в ICO — злоумышленнику не нужно было их искать.


  2. Каждый может опубликовать в сети эфира смарт-контракт — текст программы, выполняющий определенные функции. То есть да, можно прицепить вызов функции, которая выполнится при переводе средств на данный кошелек (в том числе и с 0 эфира). Произвольный код не пересылается, выполняется код, уже определенный в смарт контракте. В данном случае в нём была ошибка, которая и привела к потере средств.
А какой децентрализации и надёжности можно говорить, если есть возможность отката транзакций.
Неважно будут они её делать или нет, сама возможность уже подрывает всё доверие.

Настоящая криптовалюта должна быть децентрализована, анонимна и без возможности отката.
Что сделано, то должно сохраниться навсегда и никто не может это отменить.
Иначе, в чём отличие от обыкновенных транзакций на сервере с одной БД, кроме супер крутого шифрования, как нам всем рассказывают. И зачем тогда майнинг?

CDN с шифрованием, где все данные берутся с центрального сервера и проверяется их целостность. Но всегда можно сделать откат на центральном сервере.

А уязвимости конкретных сервисов, которые хранят средства в этой криптовалюте касаются только их и их пользователей. Эти уязвимости не подрывают надёжность криптовалюты т.к. не она уязвима, а сервис, которому люди доверили свои кошельки.

Безусловно кража огромного количества средств повлечёт изменение курса.
Если подхватят СМИ, то будет новость про взлом криптовалюты и паника у пользователей.
Но мне кажется стоит задуматься именно над возможностью отката, она и есть главный минус технологии.
UFO just landed and posted this here

Не забудьте ещё про 95 миллионов в токенах эфира. Однако будем надеятся, что это действительно вайт-хэт и деньги вернут владельцам.


А, кстати, они сами себе транзакцию отправили с текстом, там есть дальнейший план действий


I am the author of https://www.reddit.com/r/ethereum/comments/6obofq/a_modified_version_of_a_common_multisig_had_a/
Всегда думал что за любой валютой должна стоять хоть какая-то армия которая в случае необходимости докажет состоятельность этой валюты.
Верно. Или хотя бы экономика.

За эфиром стоит такая же экономика, как и за любой другой фиатной валютой. Пока есть люди, желающие купить или продать определенную криптовалюту, у неё будет определённая стоимость. Как и в случае с рублём и долларом.

А о самом главном как-то не упомянули: вроде как, деньги «украли» белые шляпы, и они их обещали вернуть как только всё исправят. Поэтому хакеры хоть и хакнули, но лишь чтобы это не сделали другие.

Да вроде это понятно из определения "белых шляп". Да и написано же "Группа white hats смогла вывести эфира… для защиты средств", а в upd внизу дается ссылка на пост, где они объясняют, как будет проходить возврат денег.

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

Проходит полгода
Упс, придется форкаться (или не форкаться) в зависимости от процента утекшего бабла
Вы не поняли. Это не взлом, это и есть подлинная эксплуатация достоинств системы. В реальном мире, если вы подпишете контракт, где написано что отдаете свои деньги любому желающему, который попросит, такой контракт можно оспорить в суде(хозяйственном/конституционном), а здесь все будет по букве закона без шанса на ревизию. Всем это так нравилось-так нравилось, прозрачные правила игры, технологические гарантии исполнения, а когда доходит до дела, оказывается что понятия все же лучше, чем буква закона.
Напомнило одну фентезийную книгу. Та любой закон можно было сделать «магическим», т.е. никто не смог бы его нарушить точно так же как закон природы, и… ни один закон так не обрабатывали, т.к. всегда кому-то, чаще всего как ни странно самому государству, законы надо нарушать…
Sign up to leave a comment.

Articles