Основна проблема: ваш вузол проти цифрової дикунщини

Понад 50 років після першого міжмережевого повідомлення мережі рівноправних учасників залишаються рідкісною істотою у джунглях Інтернету. Здатність Біткоїна забезпечувати відкриту монетарну систему залежить від його архітектури рівноправних мереж, і на всьому його рівні атаки найбільш вразливий саме мережевий шар — спосіб, яким учасники знаходять і з’єднуються один з одним. Існують два основних місця, де можуть виникнути проблеми: власний протокол пірінгу Біткоїна та інтернет-протоколи, від яких залежить протокол Біткоїна. У цьому світлі Core має подвійне завдання — запобігати вектору атак відмови у обслуговуванні (DOS), які можна зловживати між вузлами, та забезпечувати безпечне спілкування вузлів у ширшому ворожому середовищі Інтернету.

P2P

«Уряди добре вміють відрубувати голови централізованих мереж, таких як Napster, але чисті мережі P2P, як Gnutella і Tor, здається, тримаються своїх позицій.»

– Сатоші, 7 листопада 2008 [1]

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

За роки у цій галузі виникло кілька помилок. Наприклад, у 2017 році була виправлена та розкрито вразливість зловмисного SOCKS-сервера [2]. Ця вразливість «переповнення буфера» теоретично могла спричинити різні атаки: аварійне завершення роботи вузла, впровадження шкідливих даних або зміна даних на вузлі. У 2020 році було повідомлено та виправлено вразливість високої серйозності, коли віддалений учасник міг заблокувати адреси, збільшуючи список заборонених у квадратичному масштабі, що є атакою DOS на вузол [3]. Вразливість не була розкритою до 2024 року. Ця помилка правильно позначена як «висока серйозність», оскільки атака легко виконується, її наслідки — втрати функціональності вузла, і для її реалізації потрібно мало передумов. Це ті помилки, які тримають розробників Core неспокійними ночами, і тому настійно рекомендується оновлювати вузли до підтримуваної версії (старі версії Core не підтримуються та не оновлюються активно).

Ця розподілена мережа, яку ми називаємо Біткоїн, залишається відносно невеликою: кількість вузлів у відкритому доступі коливається навколо 20 тисяч, а навіть за щедрою оцінкою 100 тисяч TOR-вузлів, мережа все ще є малою та легко піддається спостереженню. Нещодавно Daniela Brozzoni та naiyoma показали [4], що якщо вузол працює з одночасним використанням відкритого Інтернету та Tor, то легко відстежити IPv4 та Tor-адреси вузла. Ймовірно, цю інформацію вже збирають розвідки та компанії, що займаються аналізом блокчейнів. Це робить простим визначення, які вузли першими публікують транзакції, і виведення їх початкової IP-адреси та місця розташування. Хоча це не є помилкою у класичному розумінні, оскільки вузол не аварійно завершує роботу або не веде себе неправильно, це можна вважати вразливістю, оскільки воно дає можливість прив’язати конкретну IP-адресу до транзакції.

Як ефективно запобігти цьому — наразі відкрито питання.

Злочинні землі Web

«Ми будуємо наші комп’ютери так само, як будуємо наші міста. З часом, без плану, на руїнах.» – Еллен Уллман [5]

Біткоїн працює в Інтернеті, і його здатність залишатися розподіленою та децентралізованою системою залежить від властивостей самого Інтернету. На жаль, архітектура Інтернету, якою ми її знаємо сьогодні, залишається надзвичайно вразливою, з відомими атаками, що регулярно застосовуються. Більшість цих атак проходять непоміченими, доки не завдають шкоди, і не враховуючи режимів спостереження, що пронизують сучасний Інтернет.

Найбільш відомим і практичним вектором атаки є так званий eclipse-атака, коли всі пірінгові учасники цільового вузла є зловмисниками, і подають цільовому вузлу певний вигляд ланцюга або мережі. Цей тип атаки є фундаментальним у розподілених системах: якщо ви контролюєте пірінгових учасників вузла, ви контролюєте його уявлення про мережу. Ethan Heilman та його колеги представили одну з перших практичних eclipse-атак на Біткоїн на конференції USENIX 2015 [6], а у 2018 році стаття Erebus описала «стелс-» eclipse-атаку через зловмисну автономну систему (AS) [7].

Ці атаки здебільшого використовують слабкості у способі взаємодії мереж Інтернету, такі як маршрутизація топології AS або протокол BGP (Border Gateway Protocol). Хоча існують ініціативи щодо захисту протоколу BGP — BGPsec, RPKI — вони мають обмеження, які добре відомі, і залишають стражів Інтернету у пошуках більш надійних рішень. До тих пір Інтернет залишатиметься диким заходом.

Недавній аналіз Chaincode Labs, проведений cedarctic, показав, що вузли Біткоїна розміщені у всього 4551 AS, що є досить малим підмножиною мереж, що складають Інтернет. Вони описали набір атак, які можуть призвести до eclipse-атак шляхом компрометації upstream-AS, у яких працюють вузли [8]. Невеликий розподіл вузлів між AS та їхні конкретні взаємовідносини створюють унікальний вектор атаки. Хоча існують засоби захисту, невідомо, чи було це добре зрозуміло раніше для біткоїнерів або їхніх супротивників.

Будь-яка атака, що базується на компрометації одного або кількох AS, вимагає ресурсів, координації та навичок для досягнення мети. Хоча жодної успішної атаки такого типу на вузол Біткоїна не зафіксовано, подібні атаки успішно застосовувалися проти майнерів [9], гаманців [10], платформ обміну [11] та мостів [12]. Ми не можемо виправити Інтернет, але можемо озброїти вузли інструментами для роботи у цьому ворожому середовищі.

Мережевий арсенал

Нижче наведено деякі функції та можливості, які розробив або інтегрував Bitcoin Core для захисту користувачів від атак на мережевому рівні:

TOR (The Onion Router) — найстаріша мережа приватності, інтегрована у Bitcoin Core. Вона створює ланцюги між випадковими учасниками для обфускації трафіку.

v2transport [13] — шифрує з’єднання між учасниками, приховуючи трафік від шпигунів і цензорів. Мета — запобігти пасивним спостерігачам за мережею у підгляданні змісту ваших повідомлень.

I2P (The Invisible Internet Project [14]) — додаткова приватна, зашифрована лінія з’єднання, що працює як Tor-анонімність, яка базується на учасниках для обфускації трафіку між клієнтами та серверами.

ASmap [15] — ще одна додаткова функція Core, яка реалізує захист від Erebus-атаки, описаної авторами у статті, і застосовується до всіх атак, що базуються на AS. Завдяки тому, що механізм пірінгу Bitcoin враховує AS, з якого походять учасники, і забезпечує різноманітність, eclipse-атака стає експоненційно складнішою, оскільки зловмисник має компрометувати багато AS, що майже неможливо без виявлення. Підтримка карти IP-мереж до їх AS (AS-міпа) з версії Core 20.0, а проект Kartograf дозволяє будь-якому користувачу легко створити таку AS-міпу.

Оскільки Інтернет і надалі залишатиметься вразливим до багатьох атак, одним із наших завдань є спостереження за поведінкою пірінгових вузлів для виявлення зловмисної активності. Це — основа проекту peer-observer від 0xb10c [16], який забезпечує повну систему логування на основі eBPF (інструмент для спостереження за найменшими діями у програмі, що працює в ОС), щоб відстежувати активність вузла, включно з поведінкою пірінгових учасників. Також він надає все необхідне для створення власних систем логування.

Біткоїн має бути надійним

Забезпечення здатності підключатися до пірінгів і обмінюватися повідомленнями — ключовий компонент роботи Біткоїна.

Біткоїн функціонує у багатовимірному ворожому середовищі, де багато загроз виникає через обмеження самої архітектури Інтернету. Щоб вижити і процвітати, його розробники та користувачі мають навчитися орієнтуватися у цих складних умовах.

Ціна відкритих мереж — це вічна пильність.

Отримайте свою копію «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]

Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • Прокоментувати
  • Репост
  • Поділіться
Прокоментувати
Додати коментар
Додати коментар
Немає коментарів
  • Закріпити