Маленький экскурс в мир открытых кодов, смарт-контрактов и… уязвимостей.
Можно ли взломать биткоин? Хоть какое программное обеспечение можно взломать, но в этом нет ничего отвратительного — взломы только усиливают сохранность криптовалют, ведь все, что не убивает нас, делает нас посильнее, так?
Сохранность биткоина: Юноша из пузыря и канализационная крыса
На YouTube есть выступление Андреаса Антонопулоса под заглавием «Сохранность биткоина: Юноша из пузыря и канализационная крыса» (Bitcoin Security: Bubble Boy and the Sewer Rat). В данной для нас лекции он представляет централизованные системы как «пузыри», где сохранность обеспечивается за счет изоляции от наружных сил. Пребывание в изоляции не дозволяет системе развить защитные механизмы, но рано либо поздно пузырь лопается, оставляя ее беззащитной.
Открытые блокчейны же, по его словам, подобны канализационным крысам, живущим в одичавшей природе и окруженным неприятелями, — их иммунная система вынужденно развивается. Да, взломы случаются, но это помогает отыскать решения, защищающие от будущих атак.
В конце выступления Антонопулос гласит:
«Неважно какая тайнопись быть может взломана, и когда-нибудь это произойдет с хоть какой из их. Биткоина это тоже касается. Это только вопросец времени. Мы ожидаем взлома, мы знаем, что в хоть какой системе и подсистеме биткоина быть может найдена уязвимость, и нам принципиально, чтоб подобные уязвимости были локальными, и чтоб мы успевали их выявлять и исправлять, чтоб это не перерастало в системную делему. А для этого необходимо, чтоб среда была открытой, содействующей сотрудничеству, тогда и информация о этих возможных дилеммах будет появляться довольно рано».
Открытый код
Как и у почти всех криптовалютных проектов, код биткоина открыт, другими словами, его может прочитать любой. Если для вас любопытно, можно ли взломать биткоин, просто скачайте код и поглядите! Чем больше людей читают и анализируют код, тем быстрее находятся и исправляются любые препядствия.
На самом деле, ошибка и уязвимость в программке — это одно и то же, лишь в одном случае юзер случаем надавливает последовательность кнопок и вызывает сбой приложения, а в другом взломщик преднамеренно надавливает те же клавиши, чтоб получить доступ туда, куда не следует. Юзер обнаруживает ошибку случаем, взломщик употребляет ее для атаки на систему. Да, биткоин — это ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств), в любом ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) есть ошибки, и хакеры сиим пользуются.
Раскрытие уязвимости
В апреле 2018 года разраб, работающий над кодом биткоина в проекте Digital Currency Initiative в MIT Media Lab, нашел уязвимость в Bitcoin Cash. Тут необходимо увидеть, что общества биткоина и отделившегося от него Bitcoin Cash друг дружку не могут переносить.
Отысканная уязвимость была весьма суровой и могла бы похоронить Bitcoin Cash, но программер повел себя достойно и сказал разрабам о дилемме. В итоге никто не успел пользоваться ошибкой для взлома, она была исправлена, и 7 мая 2018 года было размещено соответственное обновление.
Смарт-контракты (умные и не весьма)
Если гласить о сохранности, то реализация смарт-контрактов — это весьма непростая задачка. Смарт-контракты — это фрагменты исполняемого кода для управления транзакциями, и они записаны в блокчейне, а означает, вечны. И, так как они вечны, любые ошибки и уязвимости, допущенные в таком договоре при разработке, тоже вечны.
Таковым образом, плохо спроектированный либо реализованный код смарт-контракта может привести к большим денежным потерям, как это случилось в грустно известной истории с DAO — в итоге плохо написанного смарт-контракта.
Хакеры обожают непростой код, поэтому что в нем больше ошибок. И напротив, сохранность — это простота. Биткоин-сообщество разработало язык Bitcoin Script, специально упростив и ограничив его — во имя сохранности.
Другой проект, Ethereum, стремится обеспечить платформу для программирования децентрализованных приложений, потому язык Solidity, который там употребляется, тьюринг-полный, другими словами способен воплотить всю сложность компьютерных вычислений.
Игры Capture The Flag (CTF) заключаются в поиске уязвимостей, и у компании Security Innovation есть бесплатная игра такового рода для смарт-контрактов — Blockchain CTF. Программирование смарт-контрактов на Solidity под платформу Ethereum просит неплохой практики в области сохранности. Можно ли взломать Ethereum? Да, как и биткоин.
27 июля 2018 года ICO проекта KICKICO на платформе Ethereum было взломано и потеряло 7,7 млн баксов: хакеры получили скрытый ключ проекта и взломали смарт-контракт. Справедливости ради, тут дело было не в уязвимости в смарт-контракте, а в неверной защите ключа.
Мало о кошельках
Хранением личных ключей занимается кошелек, и конкретно он отвечает за их неприкосновенность. Если вы пользуетесь онлайн-кошельком, ваши личные данные живут на чужом сервере со всеми его уязвимостями. С иной стороны, если держать кошелек у себя на твердом диске, то можно потерять средства, когда диск сломается. Безопаснее всего — офлайновые аппаратные кошельки.
Онлайн-кошельки — зло
Хранение криптовалюты в онлайн-кошельке — это, фактически, приглашение ко взлому. Происходить это может так: поначалу взломщик выяснит адресок электрической почты и телефон жертвы, — это обычно общедоступная информация, — а позже запрашивает сброс пароля для учетной записи и употребляет уязвимость в протоколе телефонии Signal System 7 (SS7), который употребляют в собственных сетях, например, наикрупнейшие южноамериканские сотовые операторы AT&T и Verizon. Так взломщик перехватывает токен авторизации. Сейчас у него есть доступ к кодам двухфакторной авторизации, отправляемым на телефон жертвы, и с помощью их они заходят в сервис кошелька, опосля что делают с криптовалютой все, что желают.
Уязвимость в Monero
Интересно, что время от времени уязвимости оборачиваются против самих взломщиков. Исследователи из ряда институтов, включая Принстон, Карнеги-Меллон, Бостонский институт и Массачусетский технологический институт нашли делему конфиденциальности в Monero. Как понятно, эта криптовалюта призвана обеспечивать анонимность действий юзеров, а уязвимость позволяла получить сведения о транзакции и найти, кто ее совершает.
И, так как данные в блокчейне хранятся вечно, эта ошибка дозволяет заглянуть в прошедшее на всякую глубину. Представьте для себя, что у вас украли средства, воспользовавшись уязвимостью, и взломщик рассчитывал остаться анонимным, но из-за ошибки в программке его сделалось можно выследить — какая драматичность!
Так можно ли взломать биткоин?
Ошибки бывают различные, суровые и не весьма, но часто для взлома совсем не надо ничего созодать с программкой.
В декабре 2017 года проект NiceHash остановил работу из-за взлома, в процессе которого было украдено 64 млн баксов. В компании утверждали, что атака была «высокопрофессиональной» и опиралась на «сложную социальную инженерию».
Но соц инженерия — это просто жульничество. Хакеры обманом принуждают людей дать им пароли, предоставить доступ к тому либо иному аккаунту либо сказать им какую-то секретную информацию.
Можно ли взломать биткоин? Естественно, это бывало много раз. Но любой таковой взлом изучается — и лишь крепит защиту системы.
ПОНРАВИЛАСЬ НОВОСТЬ: Как реален взлом Биткоина? — поделись ссылкой на НАШ веб-сайт