Блокчейн защитит вас в Интернете

SSL_certificate_tw

Большинству пользователей Интернета знаком небольшой значок замка в адресной строке, который появляется, если передаваемые данные шифруются. Однако мало кто по-настоящему представляет, как это влияет на безопасность.

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

TLS, криптографический протокол, об использовании которого и свидетельствует значок замка, решает эту проблему с помощью системы распространения открытых ключей, которая называется X.509. Она требует, чтобы сервер предоставил сертификат, подписанный известным центром сертификации (certificate authority, CA). Центр сертификации — это доверенная сторонняя организация, которая гарантирует, что открытый ключ, указанный в сертификате, принадлежит подлинному владельцу сервера.

Одному CA не под силу обслуживать всю систему X.509, поэтому в большинстве операционных систем и браузеров вместо одного CA прописаны открытые ключи нескольких десятков корневых CA. Все они могут попдисывать сертификаты любых серверов в Интернете и делегировать это право промежуточным CA, которых насчитывается около 1000. Если сервер предоставляет сертификат с цепочкой подписей, уходящей к одному из прописанных в браузере корневых центров сертификации, браузер считает подключение безопасным и отображает значок замка.

Проблемы

Таким образом, когда вы работаете в «защищенном» Интернете, ваше подключение проверено каким-то центром из этой тысячи. Достаточно взломать один из этих центров, и вся система будет скомпрометирована, потому что, как уже было сказано, любой CA может подписать сертификат для (почти) любого доменного имени. Например, в 2011 году был взломан голландский CA DigiNotar, и хакеры выпустили более 500 поддельных сертификатов. Когда взлом был обнаружен, корневой сертификат DigiNotar был удален из операционных систем и браузеров, а компания обанкротилась, но ущерб уже был причинен.

Беспокоит также то, что некоторые из нескольких десятков корневых CA, которым доверяет ваш компьютер, принадлежат правительству. Вот, например, список корневых центров сертификации, которым доверяет Mac OS X Yosemite. Обратите внимание на записи DoD Root CA 2 (центр сертификации Министерства обороны США), Federal Common Policy CA и CNNIC ROOT. CNNIC расшифровывается как China Internet Network Information Center и принадлежит Министерству информации китайского правительства.

Если вы следите за тем, что происходит в мире, это должно вас встревожить. Министерство обороны США и китайское (да и не только китайское) правительство могут выпустить сертификат (почти) для любого веб-сайта, что позволяет им в любой момент провести нацеленную атаку посредника! Оказывается, что «защищенный» Интернет вовсе не такой уж и защищенный.

Некоторые полумеры

Один из способов решения этой проблемы требует, чтобы операционные системы и браузеры изначально знали, какие сертификаты соответствуют тем или иным серверам. Это решение известно как «прикрепление сертификата» (certificate pinning) и, возможно, используется вашей ОС для подключения к службе обновления. Например, Mac OS X знает, что для загрузки обновлений она будет подключаться только к серверам Apple, поэтому может принимать для таких операций только сертификаты Apple. Это помешает хакерам или правительствевнным агентам воспользоваться процессом обновления для установки вредоносного ПО.

Прикрепление сертификата — хорошее работоспособное решение, но, к сожалению, оно не масштабируется на весь Интернет. По оценкам компании Netcraft, в Интернете насчитывается как минимум 857 927 160 сайтов, а если еще учесть, что сертификаты веб-сайтов приходится часто изменять и отзывать, становится очевидно, что ваша ОС не может связать сертификат с каждым сайтом. Большинство подключений к веб-сайтам все равно остатся уязвимы для прослушивания.

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

Использование блокчейна

Альтернативой X.509 может стать хранение открытых ключей и доменных имен в блокчейне. Эта идея лежит в основе DNSChain — перспективного проекта фонда okTurtles Foundation.

Я уже писал о том, что для регистрации доменных имен вместо существующей иерархии серверов IANA/ICANN можно использовать Неймкойн. Для решения проблемы распространения открытых ключей разработчики DNSChain предлагают использовать аналогичный подход — просто записывать их вместе с доменными именами. Поскольку данные, записанные в блокчейн, изменить невозможно, это гораздо более надежное решение в сравнении с X.509.

Например, okTurtles зарегистрировали в блокчейне Неймкойна домен okturtles.bit. Как видите, их сервер имеет IP-адрес 192.184.93.146, и в ту же запись они включили свой отпечаток SHA1: 5F:8B:74:78:4F:55:27:19:DC:53:6B:9B:C8:99:CD:91:8A:57:DD:07.

1b

Скриншот JSON-файла, возвращаемого по запросу http://api.dnschain.net/d/okturtles.

Если пользователь может получить доступ хотя бы к одному доверенному серверу, на котором хранится блокчейн Неймкойна, он становится практически неуязвим для атаки посредника при доступе к домену okturtles.bit. Проект DNSChain позволяет заменить хрупкую иерархию доверия к CA гораздо более надежной системой с ограниченным доверием.

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

А тем временем мы продолжаем играть с огнем, и от ожогов не застрахован никто.

Эли Дурадо (Eli Dourado), научный сотрудник Mercatus Center в Университете Джорджа Мейсона: @elidourado.

Источник: readplaintext.com



Categories: Безопасность, Разработчикам, Сервисы, Технологии

Tags: , ,

Leave a Reply

5 Комментарий на "Блокчейн защитит вас в Интернете"

Notify of
avatar
Анонимно
Гость

Мне в свете последних законодательных инициатив думы пришла мысль создать частный приватный интернет простыми средствами на основе «Haguichi». На Web сервере и у клента запущена сеть Haguichi с входом по логину и паролю. Не прошинные лица в нее войти не могут и WEB содержание сервера не увидят. приглашенные в сообщество пользователи получают доступ к приватному интернету.

trackback
Что лучше: Биткойн или Золото? | Bit•Новости

[…] шанс на «двойную трату». Такое событие повредило бы честность сети и достоверность блокчейна, после чего многие люди перестали бы использовать […]

trackback
Eris: Вести бизнес проще в Антарктике, чем в Англии | Bit•Новости

[…] – лучшее место для бизнеса, если говорить про crypto-регулирующую перспективу. Однако в итоге, […]

Oleg Khovayko
Гость
Ход мысли автора правильный, но на выходе получился скорее прототип-концепт, чем рабочий продукт, годный для реального пользователя. Укажу на ряд сомнительных мест этого концепта: 1. Совершенно не раскрыта тема сертификатов для поддоменов (subsomains). Namecoin поддомены просто не поддерживает. 2. Также не раскрыта тема TLDs, отличных от *.bit. Или эту система предполагается использовать только в зоне *.bit, и нигде более? 3. Cовсем не раскрыто, как браузер будет посылать запрос в NMC-блокчейн вместо банальной проверки подписи корня. Современные браузеры это делать не могут никак. То есть нужен либо plugin-костыль для браузера (и других клиентов, наподобие wget), либо хором все клиенты под это… Read more »
Анонимно
Гость

Hyperboria использует алиасы NXT как доменные имена

wpDiscuz