вторник, 11 мая 2021 г.

Безопасность блокчейн операций: новые возможности = новые риски

 

источник



Анализ уязвимостей, зафиксированных NIST (National Institute of Standards and Technology) в 2020 г., показывает устойчивый тренд роста в сравнении с предыдущими годами. В среднем, каждый день  фиксировалось 50 новых уязвимостей, 57% которых относились к критическому либо к высокому уровню серьезности последствий. Развитие технологии блокчейн, речь о безопасности которой пойдет в данной статье, не является исключением с точки зрения подверженности киберугрозам. Подход, который изначально создавался, как альтернатива недостаткам существующей банковской системы и должен быть открыть новые возможности для бизнеса, не избежал рисков, присущих финансовым онлайн операциям. С 2012 по 2020 гг. блокчейн-индустрия лишилась более $13,6 млрд в результате 330 хакерских атак.

В статье мы рассмотрим, в чем заключаются причины уязвимости решений на базе блокчейн.


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

  • криптографические алгоритмы;

  • ключи (кошельки);

  • алгоритмы консенсуса;

  • смарт-контракты;

  • ноды (узлы) сети;

  • компоненты пользовательского интерфейса и приложений.


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


Уязвимые компоненты

Возможные уязвимости

Примеры атак

Криптографические алгоритмы

Bitcoin & Etherium используют криптографический алгоритм Elliptic Curve Digital Signature Algorithm (ECDSA). В случае некорректной реализации генератора случайных чисел, используемого для подписи, при наблюдении за публично доступными транзакциями может быть восстановлен закрытый ключ, используемый для подписания транзакции. Некорректной реализацией может быть, например, использование константы в качестве случайного числа или повторное использование одного и того же случайного числа

В 2018 г. злоумышленники похитили  более $4 млн с кошельков пользователей IOTA. Все пострадавшие пользовались услугами вредоносного сайта для генерации секретных фраз

Ключи (кошельки)

В случае потери ключа пользователю невозможно предоставить доступ к своему аккаунту. При компрометации ключа невозможно перезаписать цепочку блоков. Возможна атака по словарю на закрытый ключ (полный перебор паролей




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

Алгоритмы консенсуса

Proof of work (PoW) подвержен атаке 51%. Если в руках злоумышленника находится больше половины всех вычислительных мощностей в сети, то он получает контроль над ее ресурсами, включая переписывание истории, проведение транзакций с двойным расходованием, блокировку чужих  транзакций, подтверждение своих блоков и т.п.

Консенсус Proof of Stake (PoS) атака Long Range

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

В случае использования алгоритма консенсуса Byzantine Fault Tolerance (BFT) атака возможно, если скомпрометирована одна треть вычислительных ресурсов сети

Реорганизация блокчейна и двойное расходование токенов  Ethereum Classic на сумму $460 тыс. (2019 г.)

Смарт-контракты

Смарт контракт по сути является компьютерной программой, которая может содержать ошибки и уязвимости. Особенностью является сложность внесения исправлений после распространения смарт-контракта в сети. Источниками уязвимостей являются: несоответствие стандарту ERC20 (токен Ethereum), некорректная генерация случайных чисел, неверное определение области видимости, некорректная верификация отправителя транзакции, целочисленное переполнение (integer overflow), ошибки в бизнес-логике, использования уязвимых внешних библиотек

Инцидент с проектом DAO в 2016 г., в результате которого была похищена криптовалюта на сумму $50 млн

Ноды (узлы) сети

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

Возможность проведения атаки DNS rebinding

Компоненты пользовательского интерфейса и приложений

Блокчейн реализуется в веб среде и подвержен всем уязвимостям, присущим десктопным, мобильным и веб приложениям.

При проведении Initial Coin Offering (ICO) возможны дополнительные уязвимости, позволяющие провести атаку на организаторов ICO и уязвимости, позволяющие провести атаку на инвесторов

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

кража учетных данных для авторизации в приложении,

ввод пользователя в заблуждение путем подмены отображаемых цен


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

Комментариев нет:

Отправить комментарий