Ошибка ZCash на миллиарды долларов

23:23 05.02.2019
/
109
/
Автор статьи: Дарья Аксёнова
/

1 марта 2018 года ZCash обнаружили ошибку, позволяющую заработать миллионы

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

Будучи инженером Zerocoin Electric Coin Company – стартапа, известного созданием конфиденциально-ориентированной Zcash криптовалюты, Габизон, обнаружил ошибку в криптографическом документе.

Это документ, который послужил основой для множества виртуальных монет, в том числе Zcash. Дефектный документ описал математические основы некоторых доказательств “нулевого знания”, криптографического прорыва, позволяющего использовать функции конфиденциальности Zcash, а также других проектов цифровой валюты.

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

Брайс “Zooko” Уилкокс, генеральный директор и соучредитель компании Zcash, сказал Fortune в телефонном разговоре, что его команда исправила дыру в безопасности в октябре. Это примерно через восемь месяцев после ее первоначального обнаружения ошибки!

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

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

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

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

Дилемма решения

Когда исследователи Zcash впервые обнаружили уязвимость, они столкнулись с дилеммой. Они могли немедленно раскрыть ошибку, создавая хаос и панику и открывая ряд проектов для атаки, или же они могли сохранить знание об ошибке в узком кругу, произвести исправление и обновить сеть. А уже затем без лишнего шума заниматься другими затронутыми сторонами.

Команды выбрала второй путь. Группа из четырех хранителей этого секрета—все инсайдеры Zcash—внесли исправление 28 октября, названное Sapling update , без чьего-либо ведома, насколько им известно, по их словам. Первоначальными доверенными лицами были Габизон, еще один исследователь Zcash по имени Шон Боу, Уилкокс и брат Уилкокса Натан, который в настоящее время является главным технологическим директором компании Zcash.

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

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

В этом случае уязвимость связана с ошибочным методом построения “zk-SNARKs», конкретной реализацией доказательств нулевого знания. Переключившись на другой метод получения этих доказательств, команда смогла удалить «отравленный» код из Zcash. (Некоторые проекты, которые реализовали популярную, связанную библиотеку криптографических кодов, называемую “libsnark»- инструментарий, пользующийся популярностью у таких компаний, как Ethereum, не были затронуты, сказали они.)

“Уязвимость не раскрывает ничьих личных данных”, — сказал Уилкокс. “Кроме того, это не повлияло на работу, проделанную некоторыми сотрудниками, такими как команда JPMorgan Chase, которая сотрудничала с компанией Zcash по технологиям конфиденциальности”, — сказал он.

13 ноября, через пару недель после внедрения исправления, исследователи Zcash предупредили команды безопасности в двух других затронутых проектах об уязвимости. Они были выбраны отчасти потому, что представляли высшую суммарную рыночную стоимость, влияющую на криптовалюты схожие с Zcash: Komodo, чьи KMD токены составляют 72 миллиона долларов и Horizen, ранее известный как ZenCash, чьи ZEN токены составляют 22 миллиона долларов.

(Наличные деньги, чья общая рыночная стоимость превысила 1 миллиард долларов на момент обнаружения уязвимости, с тех пор упала до 150 миллионов на фоне глобального падения рынка криптовалют).

“Мы хотели бы поблагодарить команду Zcash за раскрытие своих технических проблем и за работу по координации», — сказал Маурицио Бинелло, член команды Horizen, отметив, что обновление программного обеспечения, завершенное к 18 января, решило проблему. “Мы рассматриваем это как важный признак зрелости для всей отрасли”.

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

Оставленные позади

Bitcoin Private и Zcash имеют запутанную, спорную историю.

Bitcoin Private появился из проекта ZClassic, связанного с ZCash, в феврале 2018 года. Сама ZClassic отделилась от Zcash годом ранее с целью создания конкуренции, в виде конфиденциально-ориентированной криптовалюты, которую отвергла команда Zcash. Команда ZCash отказала в выплате так называемого вознаграждения учредителей, криптовалютной выплаты, которая помогла финансировать деятельность Zcash.

Шон Боу, исследователь Zcash, который помог обнаружить уязвимость вместе с Габизоном, сказал Fortune, что компания Zcash не увидела “никакого способа раскрыть” проблему команде Bitcoin Private до даты публичного раскрытия.

Он сказал, что команда Zcash инициировала 90-дневный срок для публичного раскрытия информации после уведомления Komodo и Horizen о находке, и что команда не хочет делиться деталями из-за соображений безопасности.

Боу указал на недавние споры с Bitcoin Private, объясняющие нежелание Zcash им помогать. Но, аналитики указывают на данные, свидетельствующие о том, что кто-то, участвующий в проекте Bitcoin Private, по-видимому, занимался майнингом. (Команда, стоящая за Bitcoin Private, согласилась выводами, но заявила, что не знает, кто несет ответственность).

На вопрос, почему он оставил некоторые проекты, такие как Bitcoin Private, без информации о критической уязвимости, Уилкокс привел как причину меры безопасности. “Мы не хотели раскрывать больше, пока большая часть выставленной рыночной капитализации не будет защищена», — сказал он.

Консультанты извне

Перспектива раскрытия уязвимостей может поставить исследователей в сложные ситуации.

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

Брюс Шнайер, известный эксперт по криптографии, сказал, что нет никаких жестких правил, когда дело доходит до восстановления и координации деталей, связанных с инцидентами безопасности.

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

“Принцип первостепенной важности заключается в минимизации ущерба и минимизации финансовых потерь», — сказал он.

Исполнительный директор академического проекта, связанного с криптовалютой — Digital Currency Initiative (MIT) Неха Нарула описала проблему скоординированного раскрытия уязвимостей как “невероятно сложную” в отношении криптовалют.

“Зная, что уязвимость существует, вы находитесь в положении, когда вы можете довольно легко и анонимно использовать ее», — сказала она.

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

Дэн Гвидо, генеральный директор Trail of Bits, консалтинговой компании по информационной безопасности в Нью-Йорке, которая занимается бизнесом в индустрии блокчейна, лично столкнулся с такими препятствиями при координации исправлений уязвимостей. Он даже опубликовал краудсорсинговый документ, в котором собраны контактные пункты различных проектов.

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

“Пока неясно, что лучше или правильнее сделать», — сказала Нарула. “Я думаю, что нужно разработать стандарты и процедуры всем сообществом, и эти отношения все еще развиваются”.

Наверх