ГлавнаяBlockchain«Невзламываемые» блокчейны подверглись взломам

«Невзламываемые» блокчейны подверглись взломам

блокчейны

С начала 2017 года хакерам в общей сложности удалось похитить порядка 2 млрд. долларов в криптовалюте, причем учтены только случаи, получившие огласку. Такие данные приводит журнал MIT Magazine в статье, посвященной проблемам блокчейн-платформ. Вполне вероятно, что подобные атаки осуществляются отнюдь не хакерами-одиночками, а хорошо организованными группами киберпреступников. Аналитики компании Chaninalysis, которая занимается криптовалютными расследованиями, считают, что существует как минимум две группы хакеров, укравшие у криптообменников суммарно около 1 млрд. долларов. Интерес киберпреступников к блокчейн-системам неудивителен и обусловлен необратимостью транзакций, которая и отличает их от традиционных финансовых систем.

В начале января 2019 года команда специалистов по безопасности крупной криптовалютной биржи Coinbase обратила свое внимание на странности, происходящие с криптовалютой Ethereum Classic — ее блокчейн, то есть вся история транзакций, подвергся атаке.

Атакующим удалось установить контроль над более чем половиной вычислительных мощностей сети Ethereum Classic, то есть провести так называемую атаку 51%. Это дало киберпреступникам возможность перезаписать историю транзакций таким образом, чтобы «провернуть» схему двойной траты (double spend), то есть потратить ранее израсходованные средства еще раз. Сотрудники биржи зафиксировали момент атаки, в ходе которой злоумышленники пытались похитить эквивалент 1,1 млн. долларов в криптовалюте, но по неизвестной причине кража не удалась.

Другой популярной платформе Gate.io повезло меньше — она лишилась 200 тыс. долларов в результате данной атаки. Правда, похитители вернули половину суммы на следующий день, что изрядно удивило всех причастных к инциденту.

Еще год назад подобный сценарий многим сторонникам технологии блокчейн казался практически невозможным, но так называемая атака 51% на Ethereum Classic представляет собой лишь одно звено в цепочке недавних ударов по блокчейн-платформам.

Как взламывают блокчейны

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

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

Помимо протокола блокчейна уязвимости может содержать программа-клиент, позволяющая поддерживать работу узла и совершать операции с криптовалютой. Так, в сентябре 2018 года разработчики клиента Bitcoin Core исправили ошибку, позволявшую злоумышленникам выпускать больше биткойнов, нежели допускала система.

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

Правило 51%

Уязвимость к атакам 51% присуща большинству криптовалют, поскольку часто их блокчейны используют принцип доказательства выполнения работы (proof of work) для подтверждения транзакций. В ходе процесса, который называют майнингом, узлы задействуют значительную вычислительную мощь, чтобы доказать свое право добавить очередную транзакцию в базу данных. Лицо, установившее контроль над хотя бы 51% вычислительных мощностей системы, может перевести часть средств другому ее участнику, а затем сформировать альтернативную версию блокчейна, в которой эта транзакция не будет отражена, как будто ее никогда и не было. Такую новую версию называют форком (fork, «вилка»). Злоумышленник, под контролем которого находится наибольшая часть инфраструктуры блокчейна, может обеспечить признание форка официальной версией цепочки транзакций и вновь потратить уже израсходованные средства.

Атака на популярные блокчейн-сервисы будет стоить злоумышленнику очень значительных средств. Так, по оценке сайта crypto51.com, аренда оборудования, мощность которого достаточна для осуществления атаки на биткойн, может обойтись в более чем 260 тыс. долларов в час.

В середине 2018 года киберпреступники провели серию атак 51% на сравнительно малопопулярные монеты, такие как Verge, Monacoin и Bitcoing Gold, что позволило им обогатиться в общей сложности на 20 млн. долларов.

Эксплуатация ошибок в смарт-контрактах

Помимо атаки 51% блокчейн-платформы могут содержать ошибки в реализации механизма смарт-контрактов.

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

DAO (Decentralized Autonomous Organizaion, «децентрализованная автономная организация»), пример такого фонда, в 2016 году начал использование блокчейна Ethereum с поддержкой смарт-контрактов и вскоре после этого подвергся хакерской атаке. Уязвимость в системе смарт-контрактов стоила организации 60 млн. долларов.

Устранение подобных уязвимостей представляет собой гораздо более сложную задачу по сравнению с исправлением багов в обычном ПО. В такой ситуации разработчики, как правило, добавляют новые смарт-контракты, обеспечивающие взаимодействие со старыми и нивелирующие их недостатки. Кроме того, иногда реализуются своего рода программные «рубильники», позволяющие отключить всю систему в случае обнаружения атаки. Тем не менее, если к этому моменту средства уже были похищены, для их владельцев подобная мера совершенно бесполезна.

Единственный способ вернуть украденное — вернуть блокчейн к состоянию, в котором он был до атаки, создать его форк, предварительно получив согласие от всех участников сети. Именно так и поступили разработчики Ethereum. Большая часть пользователей переключилась на новый форк. Небольшая же доля несогласных с решением разработчиков осталась верна оригинальному блокчейну, который теперь называется Ethereum Classic, сообщает cnews.ru.

Ключевые характеристики электромотоцикла Harley-Davidson LiveWire
Годовая выручка Dell впервые превысила отметку в 90 млрд. долларов
Оформление подписки
Оформить подписку на журнал InfoCity вы можете заполнив приведенную
ниже форму. Стоимость одного выпуска — 2 маната.
Ваше имя
Адрес доставки журнала и номер телефона для контактов
Число месяцев подписки
Благодарим вас за подписку!