Что снижает безопасность криптовалют?

На днях специалисты антивирусной компании Qihoo 360 обнаружили в коде EOS критические дыры безопасности. Заявлялось, что переход с платформы Ethereum на собственный блокчейн EOS отложен до устранения проблемы. Однако разработчики сообщили, что уязвимости исправлены, а запуск сети пройдёт как запланировано – 2 июня: Media has incorrectly reported a potential delay in the release of EOSIO V1 due to software vulnerabilities.

Our team has already fixed most and is hard at work with the remaining ones. EOSIO V1 is on schedule; please stay tuned to our EOSIO channels for official information.

— EOS (@EOS_io) 30 мая 2018 г.

До этого неизвестные успешно атаковали проект Verge. Команда обещала, что патчи безопасности устранят ошибки. После этого блокчейн подвергся взлому ещё раз. Хакерам вновь удалось получить контроль над созданием блоков и печатать нужное количество монет в обход ограничений. 29 мая пользователь bitcointalk cообщил о третьей атаке на Verge, но слухи вроде как оказались ложными.

В то же время Bitcoin Gold потерял около $18 млн из-за хакерской атаки. Видно, насколько молодые криптовалюты восприимчивы к уязвимостям, которые заложены в самом блокчейне.

Архитектура сети → DDoS, Сиббила, Eclipse

Большинство блокчейн-проектов построены на основе одноранговых сетей, которые существуют с 1980-х. За прошедшее время хакеры придумали несколько вариантов кибератак, которые актуальны и для криптовалют.

DDoS илиDistributed Denial of Service (распределённый отказ от обслуживания). Атака основана на том, что любая сеть имеет ограниченные ресурсы. А значит, её можно перегрузить огромным количеством обращений. Система не справится с нагрузками и отключится (откажет в обслуживании, отсюда и название). Типичный DDoS можно визуализировать как-то так:

В DDos-атаках могут участвовать десятки и сотни людей, но этот подход требует организации и синхронности действий. Чаще хакеры предпочитают внедрять в сеть троянские программы, которые автоматически расширяют “армию” взлома и заставляют узлы (ноды) сети атаковать систему.

В этом году DDos-атакам подверглись блокчейны Lightning Network и IOTA.

Атака Сибилы приводит к тому, что участник одноранговой сети обменивается данными только с узлами, которые захвачены злоумышленником. Для этого хакеру надо создать как можно больше поддельных нод и “окружить” ими жертву. В условиях криптовалют это сделать сложно, но теоретически возможно.

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

Оранжевые узлы Сибиллы прикинулись нормальными, окружили зелёную ноду и практически лишили её шансов на обмен данными с остальной сетью

До 2002 года атака Сибиллы была известна как псевдоспуфинг, но потом Брайан Зил из Microsoft Research предложил название в честь героини книги “Сибилла”. Девушка страдала диссоциативным расстройством личности, при котором в мозгу человека сосуществуют несколько личностей, меняющиеся как маски. Так и фейковые ноды Сибиллы “прикидываются” добропорядочными, окружают узел-жертву и могут использовать его для дальнейшего захвата сети.

Децентрализованные консенсусные сети в целом защищены от атаки Сибиллы. Однако в 2014 году она применялась для копирования данных биткоин-кошельков в анонимной сети Tor. Есть мнение, что таким образом неизвестные изучали способы деанонимизации криптовалют.

Eclipse или информационное затмение. В 2015 году группа учёных под руководством Итана Хейлмана опубликовала исследование, согласно которому можно получить контроль над сетью биткоина. Для этого нужно поочередно лишать узлы сети связи с остальными нодами.

Можно сказать, что информационное затмение получается в результате последовательных атак Сибиллы. Если злоумышленник захватывает критическую массу сети и окружает их поддельными нодами, то может навязать системе свои правила.

В 2016 году Швейцарские учёные обнаружили уязвимость к Eclipse-атаке в блокчейне Ethereum. В 2018 году команда Хейлмана подтвердила результаты коллег. Согласно исследованиям, эфириум более восприимчив к информационному затмению из-за протокола Kademlia, который структурирует сеть, регулирует связь между узлами и отвечает за обмен информацией. 

Майнинг → 51%, двойные траты, эгоистичная добыча

Название “Атака 51%” обозначает цель злоумышленников. Децентрализованная сеть на основе майнинга остаётся равноправной и независимой, пока ни один из её участников не владеет ≥51% мощностей для открытия новых блоков. Как только какой-то узел начинает обеспечивать более половины хешрейта, он может отклонять неугодные транзакции, вносить нужные изменения в систему, единолично открывать блоки и получать награду в виде криптовалюты. Последнее случилось со взломанным  блокчейном Verge.

Атака 51% похожа на Eclipse-атаку, но происходит на уровне майнинга, а не обмена данными. 

Двойное расходование (double spending) – ситуация когда участник сети может перевести одни и те же средства двум разным пользователям. Проблема двойной траты тормозила развитие электронных финансов, ведь виртуальная валюта – это код, который можно копировать при должном уровне знаний и умений.

Одна монета для двух принимающих. Отправитель доволен, а экономическая модель системы не очень. Это и есть двойное расходование

Блокчейн решил проблему двойного расходования с помощью алгоритмов консенсуса и копий системы в каждом узле сети. Однако в некоторых ситуациях двойные траты криптовалюты возможны, например, при успешной Атаке 51%. Если хакер контролирует процесс генерации блоков, то может наплевать на ограничения системы. От двойного расходования пострадал Bitcoin Gold.

Эгоистичный майнинг (selfish mining) биткоина был описан исследователями в 2013 году. Принцип  атаки заключается в том, что большое объединение майнеров начинает тайно строить не основной блокчейн, а собственную цепочку блоков. Злоумышленники хранят свои блоки в секрете до моментов, когда основная ветка блокчейна догоняет по размеру “тайную”. Так этот уютный частный блокчейн получает постоянное подтверждение легитимности.

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

При этом атакующим необязательно набирать 51% мощности сети. Исследователи отмечали, что система может быть захвачена объединением майнеров, которое контролирует более 33% вычислительных ресурсов.

Майнинг-пул BTC.com обеспечивает 24,3% мощности сети биткоина. Пул принадлежит китайскому производителю асиков Bitmain Technologies

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

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

Человеческий фактор → фишинг, ботнет-майнеры, вымогательство, сторонние сервисы

Злоумышленники могут получить выгоду и без контроля над системой. Старые добрые методы сетевого мошенничества актуальны и для блокчейна, который всё ещё тесно связан с привычным интернетом.

Две страницы платформы Waves в Facebook. Одна настоящая и рассказывает про проект, вторая фишинговая и поздравляет с выигрышем в лотерею. Сравните адреса страниц. Беглым взглядом их можно легко спутать

  1. Фишинг – массовая рассылка электронных писем и сообщений, которые ведут на поддельные сайты, где пользователя просят ввести личные данные (логины, пароли, адреса кошельков, приватные ключи и т.д.). В криптоиндустрии с фишинговыми сообщениями можно столкнуться в Фейсбуке, Телеграме и Твиттере. Они могут обещать призы и халявные монеты. Также актуальны поддельные электронные письма от ICO-проектов с неслыханными бонусами.
  2. Фарминг – прокачанная версия фишинга. Злоумышленники распространяют вредоносные программы, которые перенаправляют пользователя на поддельные сайты, даже если он переходит по оригинальным ссылкам.
  3. Вишинг – тут уже работает социальная инженерия. Жертве звонят по телефону, представляются работниками банка, компании или сервиса и просят предоставить конфиденциальные сведения.

Осенью 2017-го неизвестные создали копию cfqnf эфириум-кошелька Myetherwallet, адрес которого отличался от оригинала лишь подстрочной запятой. За два часа пользователи перевели мошенникам 52,56 ETH

Чтобы постоянно не вглядываться в адресную строку и уберечься от криптофишинга, я использую браузерное расширение Cryptonite. Программа анализирует адреса сайтов и проектов, которые связаны с криптовалютами и блокирует страницы, которые не прошли верификацию. Пока Cryptonite не подводил. Это не реклама, а личная рекомендация.

Ещё одним недобросовестным способом заработка криптовалюты стал ботнет-майнинг. В этом случае хакеры распространяют в сети вирусы, которые используют мощности пользователей для добычи криптовалюты. В марте египетский провайдер был пойман на том, что отправлял пользователей на сайты с вирусом Coinhive, который добывал Monero. Скрытый майнинг стал настолько популярным, что некоторые браузеры добавили к своим функциям антимайнеры.

Вирусы-шифровальщики также используют человеческий фактор. Они блокируют файлы на компьютере и тупо  вымогают криптовалюту для восстановления данных. Летом 2017-го зловреды WannaCry и Petya атаковали компьютеры на Windows по всему миру. Основной удар пришёлся на компании и госучреждения из-за того, что на их компьютерах чаще встречались старые и незащищенные версии операционной системы. За разблокировку файлов программы требовали около $300 в биткоинах.

Ну и взломы криптобирж, куда же без них. В целом все сторонние сервисы, которые работают с блокчейном, но сами являются обычными сайтами, несут определённый риск. Биржи, кошельки, ICO-платформы. Их создатели могут допустить ошибку в коде, потерять пароли или выдать доступ мошенникам через фишинговый сайт. Это же касается и децентрализованных платформ. Пример The DAO в этом плане очень показателен.

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