Расширенный

Расширенный поиск

Автор

Статьи по теме: «Информационная безопасность»

Технология блокчейн с точки зрения информационной безопасности. Часть 1

Блокчейн и все производные этой технологии (в частности, криптовалюты) давно описаны и активно обсуждаются на самых разных уровнях. Этот обзор рассматривает технологию блокчейн с позиции оценки защищенности данной технологии в роли инфраструктуры для различных применений.

Введение

Блокчейн является одним из видов более широкого класса технологий хранения и синхронизации данных – распределенного реестра (англ. DLT – Distributed Ledger Technology). Ключевое свойство всего класса технологий распределенного реестра – отсутствие централизованного управления. Каждый узел распределенной системы (состоящий из сопутствующего программного обеспечения и собственно реестра) делает записи в своей версии реестра независимо от других узлов и синхронизируется с ними в рамках одноранговой сети. Особенностью блокчейна как вида распределенного реестра является то, что записи соединяются в инкрементальную цепочку блоков с использованием криптографических алгоритмов, отсюда и его название (англ. blockchain, цепочка блоков).

Итак, блокчейн – это децентрализованная база данных, в которой все записи собираются в блоки и связываются между собой средствами криптографии. Помимо самих записей (или транзакций) и идентификатора блока, в блок включаются хеш-суммы текущего и предыдущего блоков. Они являются результатом вычисления криптографических хеш-функций. Хеш-функции в блокчейне, в сочетании с его распределенной архитектурой, обеспечивают неизменность и необратимость всей цепочки блоков и транзакций.

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

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

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

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

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

Глава 1. Публичный блокчейн

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

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

Безопасное хранение приватного ключа как основа защиты цифровых активов

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

Использование асимметричного механизма в цифровой подписи отличается от традиционного асимметричного шифрования. Подписание производится закрытым или приватным ключом, а проверка подписи — открытым или публичным ключом (проверить подпись транзакции может любой участник). Значение открытого ключа вычисляется на основе закрытого ключа, а вот обратное преобразование требует пока практически неосуществимого объема вычислений.

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

С учетом этой специфики надежное хранение приватного ключа является основой безопасных операций с криптовалютой и другими активами. Наиболее распространенным инструментом хранения являются так называемые «горячие» кошельки - подключенные к интернету приложения для хранения приватных ключей и операций с цифровыми активами. Существуют различные виды подобных решений (например, полностью облачные кошельки или децентрализованные приложения), но их использование по очевидным причинам связано с повышенным риском. Для их взлома, как и для взлома других пользовательских программ, используются самые распространенные атаки – от фишинга до вредоносного ПО.

Альтернативой является «холодный» кошелек – тип хранения приватных ключей, при котором у среды хранения нет прямого взаимодействия с интернетом и блокчейн-сетью. Значение приватного ключа можно хранить как в виде записи на бумаге или в файле на локальном носителе, так и в специализированном аппаратном кошельке. «Холодный» подход обеспечивает более высокий уровень защиты приватного ключа, но в большинстве случаев не позволяет удобно и быстро совершать операции.

Отдельным видом хранения являются кошельки, принадлежащие централизованным сервисам, занимающимся торговлей и обменом криптовалют. Персональные аккаунты и базы данных пользовательских кошельков бирж регулярно взламываются. Многие биржи заявляют, что держат большую часть активов клиентов на «холодных» кошельках. Тем не менее, только в 2019 году было взломано 12 крупных бирж – суммарно пострадали 510 тысяч учетных записей с хищением криптовалюты на общую сумму около 300 млн долларов.

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

Дополнительная защита цифровых активов реализуется также с помощью технологии мультиподписи или мультисига (англ. multisignature). Фактически это требование нескольких подписей (Y подписей из X подписантов) для подтверждения транзакции. Участие в процессе подтверждения транзакции нескольких пользователей с хранящимися отдельно приватными ключами значительно увеличивает защиту кошелька. Как правило эта конфигурация в кошельке реализуется с помощью смарт-контрактов, о которых написано далее.

(Не)умные контракты

Умные или смарт-контракты (англ. smart contracts) существенно расширяют возможности блокчейн-сетей, но и создают большое количество новых векторов атак.

Смарт-контрактом называют компьютерный алгоритм, предназначенный для самостоятельного исполнения действия при наступлении определенных условий в блокчейн окружении. Стороны подписывают смарт-контракт методами, аналогичными подписи транзакций и размещают по определённому адресу в блокчейн-сети. Умные контракты легли в основу множества блокчейн проектов и инициатив. На них строились ICO-кампании (англ. Initial Coin Offering) по привлечению инвестиций в новые активы; они лежат в основе децентрализованных автономных организаций DAO (англ. Decentralized Autonomous Organization) и децентрализованных приложений (например, азартных или коллекционных игр). На смарт-контрактах работают популярные сейчас децентрализованные финансовые инструменты DeFi (англ. Decentralized Finance).

В зависимости от блокчейн-сети смарт-контракт может быть разработан либо на специализированном языке программирования (например, язык программирования Solidity, использующийся в самой распространенной платформе для реализации смарт-контрактов Ethereum), либо на языках общего назначения (JavaScript, Golang, Rust и т.д.). Примечательно, что термин “умный контракт” неоднократно подвергался критике, так как фактически это самоисполняющийся код, алгоритмически описывающий конкретные условия. В публичном блокчейне этот код виден всем участникам сети, знающим адрес контракта. Следовательно, любая ошибка в контракте, ведущая к его уязвимости, может быть использована третьей стороной. При этом сторона, отвечающая за корректную работу смарт-контракта часто не может оперативно исправить уязвимость, так как контракт уже находится в неизменном реестре в состоянии исполнения. Эти условия усугубляются тем, что контракты, написанные на Тьюринг-полных языках программирования типа Solidity, не могут быть формально верифицированы (т.е. правильность кода контракта в отношении спецификации не может быть математически доказана и гарантирована). К слову, некоторые блокчейн-проекты дают возможность разрабатывать контракты на не полных по Тьюрингу языках, но даже при таком подходе очень сложно верифицировать инварианты самого блокчейн окружения, в котором исполняется контракт. Тем не менее, некоторые блокчейны, заявляют о возможности нативной формальной верификации.

Один из самых громких инцидентов, связанных с взломом смарт-контрактов произошел в 2016 году. Была проэксплуатирована ошибка в контракте, описывающем работу первого автоматического инвестиционного фонда The DAO в сети Ethereum. Злоумышленники использовали уязвимость в функции, предназначенной для создания дочерних версий проекта, и смогли многократно получить эфир (криптовалюту Ethereum) при исполнении одной транзакции, в итоге получив криптовалюты в эквиваленте более 50 млн долларов. Поскольку смарт-контракты DAO размещались непосредственно в блокчейне Ethereum, инициативной группе, представляющей интересы платформы, пришлось пойти на спорное решение – запустить новую версию всего реестра на основе определенного момента предыдущей версии (так называемый форк). Данная версия позволила откатиться к статусу сети до взлома смарт-контракта The DAO, вернуть инвесторам деньги и исправить уязвимость. При этом были нарушены декларируемые принципы публичного блокчейна – неизменяемость, отсутствие цензуры и децентрализованное управление.

Через год случился другой громкий инцидент, связанный уже с уязвимостью приложения на Ethereum - из-за уязвимости в смарт-контракте мультиподписи кошелька Parity хакер вывел эфир в эквиваленте 30 млн долларов.

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

Другие вызовы

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

Атака 51%

Концепция, при которой контроль над более 50% ресурсами блокчейн-сети, позволяет создать свой форк, который заменит текущий реестр блокчейна (блоки других участников тогда перестанут подтверждаться) и станет актуальным. При этом можно будет откатить предыдущие транзакции или смарт-контракты или провести «двойную трату» – провести в блокчейне несколько транзакций с использованием одних и тех же цифровых активов. Отдельным подвидом является атака дальнего действия (англ. Long-range attack), смысл которой в том, чтобы начать собирать ложный форк задолго до актуального блока. В некоторых видах консенсуса это будет стоить меньше ресурсов. В зависимости от алгоритма консенсуса, реализация атаки будет отличаться. На текущий момент выделяется две основные группы алгоритмов: на основе доказательства работы (англ. Proof-of-Work) и на основе подтверждения доли (англ. Proof-of-Stake). В случае первого алгоритма (напр., Bitcoin и Ethereum) атакующему требуется завладеть 51% вычислительных ресурсов сети. В случае с Proof-of-Stake (напр., Tezos и Waves), для реализации атаки 51% атакующему требуется завладеть 51% основного актива сети. Стоит отметить, что для развитых и действительно децентрализованных сетей, таких как Bitcoin и Ethereum, подобная атака остается очень дорогостоящей – для ее успешной реализации требуется огромная вычислительная мощность, сравнимая с сотнями суперкомпьютеров. Однако в менее масштабных сетях такие атаки вполне реальны. В частности, летом 2020 года были проведены две атаки 51% на блокчейн Ethereum Classic – форк оригинального Ethereum, произошедший после взлома the DAO в 2016 году.

Блокчейн-сеть
Объем рынка валюты сети (доллары США)
Криптографический алгоритм
Хешрейт
Стоимость 1 часа проведения атаки 51% (доллары США)
Bitcoin
200 млрд
SHA-256
127,624 Петахеш/сек
460,783
Ethereum
41 млрд
Ethash
241 Терахеш/сек
378,047

Стоимость атаки 51% в час на популярные блокчейн-сети Bitcoin и Ethereum, сентябрь 2020 г. Источник: https://www.crypto51.app/

Атака Сивиллы (англ. Sybil Attack)

Вид атаки в одноранговых сетях, при которой злоумышленник наполняет сеть подконтрольными ему узлами, к которым подключаются узлы других участников. Атакующий окружает узел жертвы так, чтобы иметь контроль над всеми исходящими и входящими транзакциями. В крупных децентрализованных сетях такую атаку реализовать крайне сложно, так как узел участника для подтверждения транзакции выбирает другой узел сети практически случайно. Хотя процесс соединения практически рандомизирован, можно взломать журнал доверенных адресов жертвы – он будет содержать адреса узлов злоумышленника. Атака Сивиллы позволяет отключать других пользователей от сети, наблюдать за их транзакциями или реализовывать «двойную трату».

Взлом подписей и хеш-функций

В блокчейн-сетях используются различные криптографические механизмы, многие из них (например, алгоритмы SHA-256 и ECDSA) считаются крайне стойкими ко взлому текущим поколением вычислительных мощностей. Но появление квантовых компьютеров позволит преодолевать нынешнюю стойкость, и в результате взламывать механизмы, лежащие в основе блокчейна, в первую очередь, ЭП. К слову, уже начинает разрабатываться постквантовая криптография. Например, команда Quantum Resistant Ledger создает блокчейн-систему, криптостойкую к квантовым атакам.

Конечно, это не все виды потенциальных атак на инфраструктуру блокчейн-сетей. Можно отдельно говорить об атаке Р+Epsilon, DDoS атаках и замедлении времени, эксплуатации уязвимостей в ПО узлов сети и других угрозах. Однако большинство из них пока не было реализовано.

Суммируя виды угроз для публичных блокчейн-сетей можно говорить о следующих уязвимых составляющих блокчейн-стека и решений на его базе:

  • Интерфейсные компоненты, пользовательские приложения (например, кошельки) и централизованные решения (например, биржи). Взлом этих систем в большинстве случаев приводит к захвату приватного ключа;
  • Смарт-контракты;
  • Алгоритмы консенсуса;
  • Узлы сети;
  • Ключи и криптографические функции.

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

Глава 2. Приватный блокчейн и гибридные модели

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

Как упоминалось в начале статьи, в приватных блокчейн-сетях контроль доступа обычно распространяется на подключение к сети и чтение данных. Приватный блокчейн как правило распределен (но в силу очевидных причин никогда не децентрализован), а узлы сети расположены в нескольких организациях или офисах одной компании. Рассмотрим такую схему на примере блокчейн-платформы Федеральной налоговой службы Российской Федерации, запущенной в 2020 году. Узлы сети установлены в самой службе, а также во всех банках, подключенных к платформе. Задача решения на первом этапе – автоматизировать процесс обработки документов по заявкам малого и среднего бизнеса на получение льготного кредита в рамках поддержки МСП во время пандемии коронавируса.

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

Очевидно, что приватный блокчейн обеспечивают лучший контроль над инфраструктурой со стороны организации или группы компаний. Это относится как к общим ИТ-аспектам (например, возможность быстро обновить функциональность), так и к аспектам ИБ. Модель угроз для решений, работающих на приватном блокчейне, уже не включает в себя ряд атак, актуальных для публичного блокчейна. Так, несмотря на сравнительно малый размер распределенной блокчейн-сети, атака 51% или атака Сивиллы становятся трудными для выполнения – все узлы находятся под контролем в доверенных зонах. Гипотетически злоумышленник может получить доступ и к подконтрольному узлу, но в таком случае стоимость атаки многократно возрастает из-за необходимости преодоления корпоративного периметра различных организаций и используемых ими средств ИБ.

Контроль доступа является базовой функцией приватной блокчейн-сети, без разрешения оператора сети в ней не появится новый участник. Это обеспечивает доступность информации в классическом понимании ИБ – доступ к информации будут иметь только авторизованные участники.

Другой особенностью приватных сетей является возможность использования алгоритмов консенсуса, адаптированных для доверенной сети. Оптимизируя консенсус с помощью облегченных протоколов взаимодействия между аутентифицированными участниками сети, можно добиться большей пропускной способности и масштабируемости. Пропускная способность блокчейн-сетей и распределенных баз данных измеряется транзакциями в секунду (англ. Transaction per Second). Для сравнения, в публичных сетях на основе алгоритма консенсуса доказательства работы в секунду обрабатываются десятки транзакций, тогда как в алгоритмах быстрого консенсуса это сотни и тысячи транзакций. К ним относятся Byzantine/Crash Fault Tolerance, Raft, консенсус на основе подтверждения полномочий (англ. Proof-of-Authority) и другие. Консенсусы, применяемые в приватных сетях, не подходят для сложных экономических моделей, но обеспечивают целостность и доступность информации за счет быстрой и надежной синхронизации в доверенной сети.

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

Различные приватные платформы (например, Hyperledger Fabric, Corda, Waves Enterprise) позволяют обеспечить конфиденциальный обмен данными внутри блокчейн-сети разными способами, в основном за счет взаимодействия приватных баз данных вне блокчейн-сети, с хранением хеш-сумм этих данных в блокчейне. Такой подход к хранению самих данных вне блокчейна (англ. off-chain) может быть дополнительно актуален в силу того, что размер блока ограничен и не подходит для хранения больших объемов данных.

Практический сценарий использования приватного блокчейна – система дистанционного электронного голосования

Рассматривать блокчейн-решение с точки зрения ИБ следует комплексно и исходя из задач информационной системы, работающей на блокчейне. В корпоративных сценариях блокчейн зарекомендовал себя как технология, подходящая для конкретных сценариев – управления цепочками поставок и жизненным циклом товара, финансовых систем и документооборота; токенизации и цифровых активов; расчетов по сделкам в ЖКХ и рынках энергетики; программ лояльности и ряда других сценариев. Каждое из этих применений достойно отдельного разбора с самостоятельным анализом модели угроз. Мы же рассмотрим государственный сценарий применения приватного блокчейна, актуальный на момент написания статьи – в системе дистанционного электронного голосования (далее – ДЭГ). ативные системы ДЭГ на базе блокчейна. Система Департамента информационных технологий г. Москвы использовалась локально в общероссийском голосовании по поправкам к Конституции и в единый день голосования. Система ДЭГ от Ростелекома использовалась в единый день голосования в Курской и Ярославской областях.

Данные системы несколько отличаются архитектурно, но мы опишем общую концепцию на примере последней.

Система ДЭГ от Ростелекома (где используется блокчейн-платформа Waves Enterprise) является программно-техническим комплексом, обеспечивающим взаимодействие участников избирательного процесса в единой информационной среде.


Схема взаимодействия компонентов и участников системы ДЭГ (источник: https://hsto.org/webt/at/pm/kl/atpmklbrax0roe0fbookt0f6ttw.png)

Для включения в список участников дистанционного электронного голосования избирателю необходимо подать заявление на портале Госуслуг. После получения заявления данные избирателя проходят проверку в ЦИК России и загружаются в компонент «Список избирателей» системы ДЭГ. Процесс загрузки сопровождается записью уникальных идентификаторов в блокчейн.

Следующий компонент системы – портал ДЭГ. В период проведения голосования избиратель должен авторизоваться на портале ДЭГ с помощью учетной записи Госуслуг и получить бюллетень. Задача анонимизации голосования ранее идентифицированного пользователя решается благодаря криптографическому алгоритму слепой подписи.

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

Как видно из примера, приватный блокчейн не является ключевой технологией ИБ, в комплексе есть компоненты (например, ЕСИА или портал ДЭГ) никак не связанные с блокчейном и которые можно проэксплуатировать. Ключевые задачи конфиденциальности и анонимности решаются с помощью криптографического протокола, состоящего из нескольких технологий (слепая подпись, гомоморфное шифрование и т.д.). При этом данный протокол эффективно работает в связке с блокчейн-платформой, которая в целом объединяет компоненты комплекса. В данном примере блокчейн представляет отказоустойчивую инфраструктуру для зашифрованного хранения и обработки голосов и среду для комплексных криптоалгоритмов. Можно представить, что с развитием системы ДЭГ появится возможность устанавливать узлы в центрах прозрачности, что позволит независимым наблюдателям следить за ходом голосования или даже передавать какие-то данные из приватной сети в публичную.

Гибридный блокчейн

Упомянутая выше сеть, в которой приватный блокчейн связан с публичным, а транзакции первого дополнительно валидируются консенсусом последнего, является гибридной. Это упрощает аудит и дополнительно повышает уровень защиты и контроля над процессом у конечных пользователей и сторонних организаций. Такая архитектура переводит доверие к решению формата «черный ящик» из субъективного, когда доверие к системе равно доверию к контролирующей ее организации, в объективное. Этому будет способствовать публичный блокчейн и дополнительная стоимость атаки на внешнюю часть системы.

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


Привязка приватного блокчейна при помощи поддерживающего публичного блокчейна

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

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

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

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

Заключение

Сегодня на территории России активно развиваются различные проекты на базе технологии приватного блокчейна – как в государственном секторе, так и в корпоративном. Использование криптовалюты, как основного сценария публичных блокчейнов ограничено Федеральным законом о цифровых финансовых активах и цифровой валюте (№ 259-ФЗ от 31.07.2020 г.). Тем не менее, публичные блокчейны могут применяться как для корпоративных проектов (например, в гибридной архитектуре), так и для других инициатив. Важно реально оценивать безопасность различных конфигураций этой технологии.

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

  • Какова криптостойкость используемых криптографических алгоритмов?
  • Как реализована работа с ключами, что произойдет в случае компрометации ключа, есть ли механизмы восстановления / замены ключа?
  • Изучены ли атаки на используемые алгоритмы консенсуса?
  • Есть ли рекомендации по безопасной настройке блокчейн-платформы?
  • Как организован процесс разработки и тестирования блокчейн решения?
  • Будет ли проведен независимый аудит смарт-контрактов?
  • Как решены вопросы доверия к внешним данным, записываемым в блокчейн?
  • Будут ли проведены внешние и внутренние тесты на проникновение во время приемо-сдаточных испытаний?
  • Кто в распределенной системе отвечает за ИБ?
  • Запланированы ли проверки защищенности узлов сети?
  • Будет ли реализован ИБ мониторинг сети и решения?
  • Каков план реагирования на инциденты, и кто за него отвечает?

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

В следующей статье будут рассмотрены основные сценарии применения блокчейна в качестве инструмента ИБ.

Автор:
Войтов Матвей, директор по маркетингу корпоративной блокчейн-платформы Waves Enterprise.