В индустрии криптовалют регулярно происходят кражи из кошельков пользователей, а иногда и с кошельков принадлежащих биржам. Можно ли сравнить масштабы краж фиатной валюты и криптовалют? Попробуем разобраться на основе нескольких громких историй.
Mt.Gox — 650,000 BTC
В 2013 году биржа Mt.Gox доминировала на рынке. Зарегистрированная в Японии компания определяла курс криптовалюты Биткоин, а объем торгов составлял 47% от всей индустрии.
Руководитель биржи Марк Карпелес с гордостью давал интервью и отчитывался об успехах, но на самом деле все было не так радужно. Хакер воровал криптовалюту со счетов Mt.Gox продолжительное время. Более того, когда Карпелес приобрел Mt.Gox у Джеда Маккалеба, счета биржи уже имели недостачу и она продолжала расти.
В 2014 году произошел коллапс биржи. В один момент весь мир узнал о хищении невероятной суммы — 850,000 биткоинов!
Работу Mt.Gox может охарактеризовать один простой факт — через некоторое время биржа обнаружила на одном из своих старых кошельков 200,000 биткоинов (на тот момент оценивавшихся в $116 миллионов). До этого момента данные 200,000 btc тоже числились как украденные.
Mt.Gox не создавалась как биржа для торговли криптовалютой. Изначально сайт был площадкой для торговли карточками к игре Magic The Gathering, поэтому разработчики допустили ряд ошибок, позволительных для сайта торгующего картами, но не позволительного для крупнейшей биржи криптовалют.
Ошибки в работе биржи:
- не существовало возможности отслеживания изменения в коде биржи, как не существовало ни возможности “откатить” изменения. Любая ошибка при обновлении кода могла обрушить всю торговлю;
- группа программистов работала над одним проектом, не видя изменений, которые делают коллеги, что создавало возможности ошибок и увеличивало шансы взломщика;
- в компании не было сотрудников ответственных за тестирование работы биржи, любые изменения сделанные разработчиками сразу отправлялись пользователям;
- в управлении биржей совершались систематические ошибки, в том числе попытки скрыть потерю криптовалюты, которая длилась годами.
19 июня 2011 года была новая атака на Mt.Gox. Взлом произошел через компьютер аудитора биржи. Злоумышленник перевел на свой кошелек сумму эквивалентную $8,750,000 (что было невероятной суммой для индустрии криптовалют 2011 года). Для совершения такой операции взломщик изменил параметры торговли, продав себе биткоины по курсу в $0.01.
Эта проблема стала первым сигналом, но не остановила развитие биржи. За 3 года торги на Mt.Gox набрали существенный оборот, поэтому крах 2014 года оказался еще больнее для всей индустрии.
В начале 2014 года пользователи стали жаловаться на медленную работу биржи. Стали ходить слухи о том, что американская банковская система замораживает счета Mt.Gox в связи с юридическими проблемами.
7 февраля 2014 года компания заморозила все операции на вывод криптовалюты Биткоин, мотивируя это необходимостью проверить технические моменты работы. Восстановление операций планировалось на 10 февраля, но оно так и не состоялось.
Служба безопасности биржи обнаружила огромную дыру, которой хакер пользовался продолжительное время. Имея прямой доступ к кошелькам биржи, взломщик не стал переводить биткоины на свой кошелек, а вместо этого забирал себе небольшую сумму от каждой транзакции, которая получалась из-за округления цифр в транзакции.
Из-за ряда системных ошибок биржа потеряла сумму эквивалентную $473 миллионам и равную 7% от общей массы биткоинов.
В итоге биржа Mt.Gox подала на банкротство. Марк Карпелес несколько раз был арестован, но каждый раз выходил на свободу. Его вина так и не была доказана. Пользователи свои деньги не получили.
Взломщик отмыл криптовалюту через обменники BTC-e и Tradehill. Основатель BTC-e Александр Винник был арестован в Греции, где и находится к моменту написания этой статьи в марте 2018. Винник может быть экстрадирован в США (где ему грозит 55 лет заключения) или в Россию. Обе страны требуют экстрадиции Винника, в то время как он сам подал прошение о политическом убежище в Греции.
Крах Mt.Gox обвалил курс Bitcoin, и затормозил развитие индустрии криптовалют на несколько лет.
Дополнительно по теме:
- Подкаст “Базовый блок“
- Википедия
- CoinDesk
- Wired
Взлом The DAO — 3,600,000 ETC
Если крах Mt.Gox стал крупнейшим в истории криптовалюты Bitcoin, то взлом The DAO к марту 2018 является крупнейшим для Ethereum.
Атака на криптовалюту стала настолько серьезной, что руководство Ethereum приняло решение сделать форк и создать новую криптовалюту вместо поддержки старой ветки. После этого взлома криптовалюта разделилась на Ethereum и Ethereum Classic. Что же произошло?
Вся система Ethereum функционирует на смарт-контрактах. Это автоматизированные контракты, которые невозможно изменить после их запуска.
The DAO расшифровывается как “Децентрализованная Автоматическая Организация” (Decentralized Autonomous Organization). Для мира Ethereum запуск The DAO должен был стать крупным событием, которое ускорило бы развитие криптовалюты.
Самой простой аналогией The DAO можно назвать венчурный фонд, который функционирует используя собственную валюту “DAO Tokens”, покупаемую за Ether. Эти токены использовались бы децентрализованными приложениями (DAPPs) для реализации своих функций. Таким образом, The DAO становится центром Ethereum и связующим звеном между всеми приложениями сети.
Идея The DAO так понравилась сообществу, что многие разработчики стали вкладывать Ether в этот фонд и сформировали массу эфиров на сумму в $150 миллионов за 28 дней.
Вся система выглядела продуманной. Разработчики желающие выйти из системы DAO могли воспользоваться функцией “Split Function”, которая позволяла вернуть на свой счет вложенные Ether. При этом эфиры замораживались и не могли быть использованы 28 дней.
Тем не менее существовал баг, о котором говорили на криптовалютных форумах. Создатели The DAO знали о проблеме, но не сочли ее достаточно существенной для решения.
17 июня 2016 некто воспользовался ошибкой смарт-контракта DAO и вывел 1/3 от всего фонда. Сумма потери составила $50 миллионов по курсу 2016 года.
Это произошло из-за ошибки в работе Split Function, которая сначала возвращала пользователю Ether за его DAO tokens, а потом регистрировала транзакцию и обновляла внутренний баланс.
Злоумышленник создал рекурсивную функцию, которая отправляла запрос на возврат Ether в обмен на DAO tokens, но перед тем как система регистрировала транзакцию, функция запрашивала возврат вновь. Такая функция срабатывала бесконечно и выкачала Ether на сумму в $50 миллионов. Курс Ether в тот момент составлял $21.52, а после взлома The DAO упал до $9.96.
В этой ситуации важно обратить внимание на то, что ошибка произошла не на стороне криптовалюты Ethereum, а от разработчиков проекта The DAO, функционировавшего на основе Ethereum.
Криптовалютное сообщество долго спорило о способах решения проблемы. Изначально разработчики Ethereum решили провести софт форк криптовалюты, но увидели массу дальнейших проблем. В конечном итоге был произведен хард форк и разделение на Ethereum (где транзакции злоумышленника отменены) и Ethereum Classic (в котором злоумышленник украл криптовалюту).
Дополнительно по теме:
Взлом Bitfinex — 120,000 BTC
Взлом криптовалютной биржи Bitfinex стал вторым по объему в истории Биткоин. Размещенная в Гонконге биржа потеряла 120,000 BTC, что составляло $72 миллиона на момент кражи 2 августа 2016 года.
Самая интересная часть этой истории заключается в том, что разработчики из Bitfinex пошли дальше других бирж в вопросах безопасности. В 2015 году они заключили соглашение с BitGo, крупнейшим разработчиком multi-sig кошельков, которые считаются более надежными.
Давайте разберемся в сути multi-sig кошельков? Создавая обычный кошелек вы получаете приватный ключ. Используя этот ключ вы можете совершить транзакцию. Но этот ключ может быть украден или утерян, тогда к кошельку получит доступ злоумышленник или вовсе никто (деньги будут утеряны).
Для решения подобной проблемы созданы multi-sig кошельки, что переводится как “кошелек с несколькими подписями”. Создавая такой кошелек вы можете получить несколько приватных ключей, например 3 или 7. Если вы создаете кошелек с 3 ключами, то 1 останется вам, 1 разработчику кошелька и 1 вы можете передать надежному человеку (например своей жене) или даже положить в банковскую ячейку.
В случае если хакер украдет ваш приватный ключ, он не сможет совершить транзакцию, так как одной подписи будет недостаточно. Хакеру потребуется взломать ваш аккаунт на специальном сервисе, либо забраться в вашу банковскую ячейку (или же заодно взломать компьютер вашей супруги). Если вы потеряете собственный приватный ключ, то все равно сохраните доступ к кошельку.
Если вы работаете в компании, где для принятия решения необходимо несколько голосов, скажем 7, то multi-sig кошелек может быть настроен таким образом, чтобы все 7 пользователей получили приватные ключи и транзакции проводились только при подтверждении всех участников.
Теперь вернемся к бирже Bitfinex. Они использовали multi-sig кошелек и считали, что криптовалюта находится в безопасности (насколько это возможно при использовании hot wallet), но ошибались.
У Bitfinex хранилось 2 ключа, а 1 ключевой оставался у BitGo. Для совершения транзакции необходимы были все 3 подписи, то есть разработчики из BitGo контролировали происходящее и служба безопасности Bitfinex расслабилась. Сначала они стали ограничивать использование безопасных cold wallet, добраться до которых крайне сложно.
Взломщик смог не только получить доступ к кошелькам Bitfinex, но и заставить BitGo подписывать свои транзакции. Как это произошло в точности неизвестно, но наиболее адекватной выглядит теория о том, что Bitfinex не использовали multi-sig кошелек как должны были.
Судя по всему, BitGo просто автоматически подписывали все транзакции подтвержденные ключами биржи, а рекламируемая надежность оказалась лишь маркетингом.
В ходе разбирательства стало известно, что сервера BitGo не были взломаны, а значит они добровольно подписывали транзакции взломщика.
После взлома цена криптовалюты Bitcoin просела на 20% (до $480), но быстро восстановилась. Биржа Bitfinex выпустила токены BFX для компенсации потери и уже 1 сентября выкупила 1.1%. В список торгов были добавлены новые пары и биржа стала развиваться еще быстрее. 3 апреля 2017 все операции по BFX были прекращены, а пользователи получили возможность обналичить токены по курсу в $1 за штуку.
Ошибка Parity — 500,000 ETH
Технически об этой ситуации нельзя говорить как о взломе, но потеря $154 миллионов заслуживает внимания, верно?
Parity это система multi-sig кошельков действующих в сети Ethereum. Из-за желания разработчиков сэкономить, а также грубой технической ошибки, огромное количество кошельков созданных после 20 июля 2017 года были уничтожены. Общая масса замороженных Ether стоимостью в $154 миллиона оказалась недоступна для владельцев.
Для криптовалюты Ethereum эта ошибка оказалась в 3 раза крупнее чем взлом The DAO, который вынудил разработчиков сделать жесткий форк и создать новую криптовалюту.
Как и в случае The DAO, ошибка была совершена разработчиками кошелька Parity и заключалась в их основном смарт-контракте, а не является последствием ошибки Ethereum.
Проблемы Parity начались в июле 2017. Тогда взломщик смог похитить 150,000 ETH стоимостью в $30 миллионов. Причиной был назван баг в смарт-контракте wallet.sol. Кстати, разработчикам удалось спасти 377,000 ETH используя хакеров со своей стороны. Курс Ethereum упал с $401 до $198.
После этого в Parity обновили код кошелька и заявили о том, что он был полностью проверен.
Разработчики попытались сэкономить на токенах эфира, используемых для оплаты комиссии за транзакции. Для этого все кошельки пользователей обращались к одному смарт-контракту.
Злоумышленник использовал функцию “kill” для своего кошелька. Эта функция доступна во всех контрактах написанных на Solidity и составляет всего лишь 58 символов. Эта функция завершает контракт, а в случае с Parity, она завершает основной смарт-контракт, к которому обращались все прочие кошельки. В итоге все кошельки созданные после 20 июля оказались бесполезными, а средства замороженными.
Дополнительно по теме:
- Подкаст “Базовый блок“
- Medium
Взлом NiceHash — 4,700 BTC
NiceHash это компания занимающаяся майнингом и расположенная в Словении. Это одно из любимых мест у стартапов связанных с криптовалютами благодаря близости к Австрии, Германии и Швейцарии, но при этом доступных ценах на жилье и аренду офисов. Большое количество IT специалистов и прохладный климат — чем не отличное место для развития майнинговой компании?
NiceHash потеряли лишь 4,700 BTC, что сложно сравнить с коллапсом Mt.Gox, но по курсу на декабрь 2017 года этот объем криптовалюты соответствовал $80 миллионам.
Взломщик проник в систему NiceHash используя доступ одного из сотрудников. Используя недостатки в безопасности, злоумышленник перевел на свой кошелек все средства доступные в NiceHash, которые должны были выплачиваться участникам сети.
Взлом Tether — 31 миллион USDT
Tether представляет собой связь между криптовалютами и фиатными деньгами. Компания стоящая за данной криптовалютой выпускает несколько видов токенов, которые подкреплены реальными долларами и евро, которые лежат на счете компании. Таким образом цена USDT всегда близка к $1 и соблюдение этого баланса является основной целью Tether.
Данная криптовалюта стала причиной многих споров и даже породила уникальный мем о принтере, который печатает доллары быстрее чем Федеральная Резервная Система США.
Криптовалюта используется для “игры на понижение” когда курс Биткоина падает, часть средств фиксируется в USDT и используется для покупки BTC по низкому курсу.
19 ноября 2017 года произошла кража $30,950,000 USDT, которые оказались переведены на неизвестный кошелек. В Tether объявили о том, что данные токены невозможно будет обменять и их движение будет отслеживаться.
Кража Tether вынудила разработчика Omni Core (используемого Tether) обновить свой протокол для помощи в восстановлении доступа к криптовалюте.
Дополнительно по теме:
- Подкаст “Базовый блок“
- Coindesk
- The Verge
Coincheck — 500 миллионов XEM
Биржа Coincheck была одной из крупнейших в Японии, но вошла в историю благодаря хищению крупнейшего объема криптовалюты XEM.
Всего из холодного кошелька Coincheck было украдено 500,000,000 токенов XEM, что на момент кражи составляло $533 миллиона.
В абсолютных цифрах этот взлом стал крупнейшим в истории криптовалют, но при невероятном росте капитализации рынка в конце 2017 он не стал столь значительным как аналогичный взлом Mt.Gox годами ранее.
Еще одним отличием истории Coincheck от Mt.Gox является признание биржей факта взлома непосредственно в момент обнаружения проблемы. Если на Mt.Gox долгое время пытались скрыть факт хищения и обманывали клиентов сообщениями о проблемах с властями США, то в Coincheck сразу же была организована пресс-конференция.
Украденные у биржи токены были переведены на 20 различных кошельков, а разработчики из NEM Foundation “пометили” токены таким образом, что любое их появление на бирже станет заметным.
Биржа заявила о планах компенсировать потерю 260,000 пользователей по курсу в $0.81 за 1 XEM. Таким образом размер компенсации составит $420 миллионов. Отличие в сумме кражи и выплаты заключается в падении курса XEM после информации о краже криптовалюты.
Продолжение следует?