Уразливість в блокчейні Біткоін могла привести до втрати мільйонів монет
Як відомо, блокчейн Біткоін - система з відкритим кодом. З одного боку, це полегшує залучення спільноти програмістів в процес поліпшення роботи системи. Але з іншого, відкритий код куди простіше аналізувати хакерам на предмет вразливостей, які можна використовувати в своїх цілях. Щоб хоч якось протистояти цьому, розробники створили спеціальну програму видачі винагород за знайдені вразливості - Decred. Будь-який програміст, який знайшов помилку або метод, що дозволяє порушити нормальну роботу системи, може повідомити про своє відкриття і отримати за це премію. Саме так і вчинив Джавед Хан –програміст, що цікавиться питаннями безпеки блкочейнів.
Він встановив, що система вразлива до одного різновиду класичних DoS-атак (або атак типу «відмови в обслуговуванні». З її допомогою можна було «перевантажити» окремі вузли або навіть кластери вузлів настільки, що викликати їх тимчасове відключення. Що вкрай небезпечно для систем, які потребують стабільної і безвідмовної роботи.
У ситуації з блокчейном Біткоін це означало б, що частина майнерів виявилася б відрізаною від основної мережі. А частина транзакцій, що проходили через відрізані вузли, не додавалася б в основний блокчейн і в майбутньому визналася б недійсною. Що можна було використовувати в шахрайських цілях. Також багато бірж, пов’язаних с Біткоином могли би «впасти», що призвело б до скасування безлічі угод і великих втрат для трейдерів.
Від зловмисників було потрібно всього лише створити кілька спеціальним чином перекручених біткоін-транзакцій, які при обробці вузлами приводили б до неконтрольованого підвищення споживання ресурсів, а потім - і до банального відключення вузлів.
Дана уразливість отримала назву INVDoS і виявилася небезпечною не тільки для блокчейна Біткоін, але і пов'язаних з ним нод, що працюють на основі Bcoin і Btcd. Під загрозою опинилися і деякі інші криптовалюти - хардфорки біткоіна - Litecoin і Namecoin.
На щастя, досить швидко з'ясувалося, що небезпека INVDoS виключно потенційна, і що протокол вже здатний впоратися з нею. Виявилося, що ще два роки тому Брейдона Фуллер - інженер по протоколам Bitcoin, виявив цю уразливість і непомітно її виправив. Це дійсно потрібно було робити непомітно, оскільки процес оновлення протоколу вимагає підтвердження більшої частини учасників мережі, а якби хтось дізнався, що один з «додатків» покликаний впоратися з можливістю для шахрайства, він би міг встигнути її використовувати в своїх інтересах. На щастя, ніхто так нічого і не помітив до моменту внесення змін. І лише через 2 роки уважний користувач зрозумів, що таку можливість в принципі можна було використовувати.Уразливості все ще є
Згідно з даними BeInCrypto, два дослідники з Єврейського інституту, що в Єрусалимі - Джон Харріс і Авіва Зохар - виявили ще одну потенційну вразливість, яка може використовуватися кібер-злочинцями для крадіжок монет. Це теж системна атака, але на цей раз об'єкт не протокол Біткоін, а його додаткове розширення Lightning Network.
Суть, втім, та ж сама - перевантажити систему запитами, а потім - використовувати час «падіння» для того, щоб вивести монети з чужих гаманців, підробивши транзакції. Експеримент пройшов успішно. Втім, у своїй статті дослідники запропонували і ряд способів, що дозволяють усунути цю вразливість. Справа за малим - впровадити їх в базові протоколи.
Ще одна проблема - так зване «подвійне витрачання», а точніше - BigSpender. Сенс її в тому, що зловмисники можуть скасовувати транзакції біткоінів, які банки не можуть ідентифікувати. А багато гаманців до цього не готові, оскільки за замовчуванням вважають, що подібні транзакції незворотні. Полегшує цю справу і функція RBF (заміна на плату), яку нещодавно додали в Bitcoin Core на рівні протоколу. І цю проблему все ще до кінця не усунули.
Ідеального програмного забезпечення не існує, особливо коли його доводиться постійно оновлювати, щоб відповідати новітнім тенденціям. І кожне таке оновлення може таїти в собі ряд потенційних вразливостей. Чи означає це, що використовувати блокчейни для фінансових угод небезпечно? Ні. Практично всі існуючі «дірки в захисті» виявляються компетентними фахівцями, які дуже глибоко розуміють особливості роботи протоколів. Більшості шахраїв такого рівня не досягти ніколи. Так, певний ризик є - але не більше, ніж збій роботи традиційних банківських систем. Однак все це також означає, що навіть звичайні користувачі блокчейнів повинні стежити за новинами, що стосуються мережевої безпеки. Щоб бути в змозі швидко реагувати на розкриті, але ще не усунуті уразливості. Наприклад, оперативно переводячи свої активи на інші блокчейни, більш стійкі до виявлених загроз.
Опубліковано на сайті EXBASE за матеріалами beincrypto.ru