Фьючерсы
Доступ к сотням фьючерсов
TradFi
Золото
Одна платформа мировых активов
Опционы
Hot
Торги опционами Vanilla в европейском стиле
Единый счет
Увеличьте эффективность вашего капитала
Демо-торговля
Введение в торговлю фьючерсами
Подготовьтесь к торговле фьючерсами
Фьючерсные события
Получайте награды в событиях
Демо-торговля
Используйте виртуальные средства для торговли без риска
Запуск
CandyDrop
Собирайте конфеты, чтобы заработать аирдропы
Launchpool
Быстрый стейкинг, заработайте потенциальные новые токены
HODLer Airdrop
Удерживайте GT и получайте огромные аирдропы бесплатно
Launchpad
Будьте готовы к следующему крупному токен-проекту
Alpha Points
Торгуйте и получайте аирдропы
Фьючерсные баллы
Зарабатывайте баллы и получайте награды аирдропа
Инвестиции
Simple Earn
Зарабатывайте проценты с помощью неиспользуемых токенов
Автоинвест.
Автоинвестиции на регулярной основе.
Бивалютные инвестиции
Доход от волатильности рынка
Мягкий стейкинг
Получайте вознаграждения с помощью гибкого стейкинга
Криптозаймы
0 Fees
Заложите одну криптовалюту, чтобы занять другую
Центр кредитования
Единый центр кредитования
Основная проблема: ваш узел против цифровой пустыни
Более 50 лет после первого межсетевого сообщения сети peer-to-peer остаются редкими существами в джунглях Интернета. Возможность Bitcoin обеспечить открытую монетарную систему зависит от его архитектуры peer-to-peer, и на его поверхности атаки именно сетевой уровень — как узлы обнаруживают и подключаются друг к другу — является наиболее уязвимым. Есть два основных места, где могут возникнуть проблемы: собственный протокол пиров Bitcoin и интернет-протоколы, от которых зависит протокол Bitcoin. В этом свете Core имеет двойную задачу — предотвращать векторы отказа в обслуживании (DOS), которые могут быть использованы между узлами, и обеспечивать безопасное взаимодействие узлов в более широком враждебном окружении Интернета.
P2P
«Правительства хорошо умеют устранять головы централизованных сетей, таких как Napster, но чистые P2P-сети, такие как Gnutella и Tor, похоже, держатся молодцом.»
– Сатоши, 7 ноября 2008 [1]
Протокол P2P охватывает то, как узлы обмениваются сообщениями о транзакциях, блоках и других пирах. Этот обмен информацией необходим до того, как может произойти любая транзакция или проверка консенсуса, и поэтому является первоочередной задачей.
За годы в этой области было обнаружено несколько ошибок. Например, в 2017 году была исправлена и раскрыта уязвимость вредоносного SOCKS-сервера [2]. Эта уязвимость «переполнения буфера» теоретически могла привести к различным атакам: сбою узла, внедрению вредоносных нагрузок или изменению данных на узле. В 2020 году была обнаружена и исправлена уязвимость высокой степени опасности, при которой удалённый пиров мог получить адреса в бан-лист, что приводило к квадратичному росту списка блокировок и являлось вектором DOS для узла [3]. Уязвимость не была раскрыта до 2024 года. Эта ошибка правильно отмечена как «высокой степени опасности», поскольку атака проста в выполнении, её эффект — потеря функции узла, и для её осуществления требуются минимальные предусловия. Такие ошибки держат разработчиков Core в напряжении, и поэтому настоятельно рекомендуется обновлять узлы до поддерживаемых версий (старые версии Core не обновляются активно).
Эта распределённая сеть, которую мы называем Bitcoin, остаётся относительно небольшой: число узлов в открытом интернете колеблется около 20 тысяч, а при условии щедрых 100 тысяч узлов в Tor — сеть всё равно небольшая и легко поддающаяся наблюдению. Недавно Daniela Brozzoni и naiyoma показали [4], что если узел работает одновременно в открытом интернете и в Tor, его IPv4 и Tor-адреса легко сопоставить. Вероятно, это уже делают разведывательные агентства и компании, занимающиеся анализом блокчейна. Тогда становится легко определить, какие узлы публикуют транзакции первыми, и вывести исходный IP-адрес транзакции, а значит — и её местоположение. Хотя это не является ошибкой как таковой, поскольку узел не сбоит и не ведёт себя неправильно, это можно считать уязвимостью, поскольку она даёт возможность связать конкретный IP-адрес с транзакцией.
Как эффективно предотвратить это — вопрос открытый.
Плохие земли Интернета
«Мы строим наши компьютеры так же, как строим наши города. Со временем, без плана, на руинах.» – Эллен Уллман [5]
Bitcoin работает в Интернете, и его способность оставаться распределённой и децентрализованной системой зависит от свойств самого Интернета. К сожалению, архитектура Интернета, как мы её знаем сегодня, остаётся крайне уязвимой, с известными атаками, которые применяются регулярно. Большинство этих атак проходят незамеченными до нанесения ущерба, не говоря уже о режимах слежки, пронизывающих современный Интернет.
Наиболее известным и практическим вектором атаки является так называемая атака затмения (eclipse attack), при которой все пиры жертвы — злонамеренные, и предоставляют жертве искаженную картину цепочки или сети. Этот тип атаки является фундаментальным в распределённых системах: если вы контролируете пиров жертвы, вы контролируете её восприятие сети. Ethan Heilman и его коллеги представили одну из первых практических атак затмения на Bitcoin на конференции USENIX 2015 [6], а в 2018 году статья об атаке Erebus описала «скрытую» атаку затмения через злонамеренную автономную систему (AS) [7].
Эти атаки в основном используют слабости в способах взаимодействия сетей Интернета, такие как топология маршрутизации AS или протокол BGP (Border Gateway Protocol). В то время как ведутся инициативы по обеспечению безопасности BGP — BGPsec, RPKI — у них есть ограничения, которые хорошо известны, и они оставляют стражей Интернета в ожидании более надёжных решений. Пока этого не произойдёт, Интернет останется диким западом.
Недавний анализ, проведённый cedarctic в Chaincode Labs, показал, что узлы Bitcoin расположены в пределах всего 4551 AS, что является довольно небольшой частью сетей, составляющих Интернет. Они описали набор атак, которые могут привести к атакам затмения путём компрометации upstream-AS, в которых работают узлы [8]. Небольшое распределение узлов по AS и их конкретные связи создают уникальный вектор атаки. Хотя существуют способы устранения уязвимостей, неясно, было ли это хорошо понято заранее биткоин-сообществом или их противниками.
Любая атака, основанная на компрометации одного или нескольких AS, требует ресурсов, координации и навыков. Хотя успешных таких атак на узлы Bitcoin пока не зафиксировано, подобные атаки успешно проводились против майнеров [9], кошельков [10], платформ обмена [11] и мостов [12]. Мы не можем исправить Интернет, но можем вооружить узлы инструментами для работы в этой враждебной среде.
Сетевое вооружение
Ниже представлены некоторые функции и возможности, которые разработал или интегрировал Core для защиты пользователей от атак на сетевом уровне:
TOR (The Onion Router) — самая старая сеть с акцентом на приватность, встроенная в Bitcoin Core. Она создаёт цепочки между случайными пирами для маскировки трафика.
v2transport [13] — шифрует соединения между пирами, скрывая трафик от слежки и цензуры. Цель — помешать пассивным наблюдателям просматривать содержимое ваших коммуникаций с другими узлами.
I2P (The Invisible Internet Project) [14] — дополнительная, приватная, зашифрованная прослойка соединений. Это сеть анонимности, похожая на Tor, которая использует пиров для маскировки трафика между клиентами и серверами.
ASmap [15] — ещё одна опциональная функция Core, реализующая защиту от атаки Erebus, описанной авторами в статье, и применимая ко всем атакам на основе AS. Делая механизм пиров Bitcoin осведомлённым о происхождении пиров (их AS), обеспечивается разнообразие пиров, и затмение становится экспоненциально сложнее, поскольку злоумышленнику придётся скомпрометировать множество AS, что практически невозможно без обнаружения. Core поддерживает создание карты IP-сетей и их AS (ASmap) с версии 20.0, а проект Kartograf позволяет любому пользователю легко генерировать такую карту.
Учитывая, что Интернет, вероятно, продолжит оставаться уязвимым для множества атак, одним из наших действий является наблюдение за поведением пиров с целью обнаружения злонамеренной активности. Это и есть идея проекта peer-observer от 0xb10c [16], который предоставляет систему логирования на базе eBPF (технология для отслеживания мельчайших действий в операционной системе), чтобы наблюдать за активностью узла, включая поведение пиров. Также он предоставляет всё необходимое для создания собственных систем логирования.
Bitcoin должен быть надёжным
Обеспечение возможности подключения к пирами и обмена сообщениями — ключевой компонент того, что делает Bitcoin работоспособным.
Bitcoin функционирует в многомерной враждебной среде, в которой многие угрозы связаны с ограничениями самой архитектуры Интернета. Чтобы Bitcoin выжил и развивался, его разработчики и пользователи должны научиться ориентироваться в этих странных водах.
Цена открытых сетей — вечная бдительность.
Получите свою копию «The Core Issue» уже сегодня!
Не упустите шанс стать владельцем The Core Issue — сборника статей, написанных многими разработчиками Core, в которых они рассказывают о своих проектах!
Этот материал — письмо редактора, опубликованное в последнем печатном выпуске Bitcoin Magazine, The Core Issue. Мы делимся им здесь в качестве предварительного взгляда на идеи, раскрываемые в полном выпуске.
[0]
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12] www.coinbase.com/blog/celer-bridge-incident-analysis
[13]
[14]
[15]
[16]
[13]