PRKernel

Доставчик на новини в реално време в България, който информира своите читатели за последните български новини, събития, информация, пътувания, България.

Как $323 милиона в криптовалута бяха откраднати от блокчейн мост, наречен Wormhole

Getty Images

Това е история за това как една проста софтуерна грешка позволи четвъртата по големина кражба на криптовалута някога.

Хакери откраднаха повече от 323 милиона долара в криптовалута, като използваха уязвимост в Wormhole, уеб-базирана услуга, която позволява транзакции между блокове. Wormhole позволява на хората да преместват цифрови монети, свързани с една блокчейн, към друга блокчейн; Такива блокчейн мостове са особено полезни за услуги за децентрализирано финансиране (DeFi), които работят в две или повече вериги, често с много различни протоколи, правила и процеси.

Пазител без зъби

Използват се мостове увити жетони, които заключват токени в един блокчейн в интелигентен договор. След като децентрализиран оракул на кръстосана верига, наречен „пазител“, удостовери, че монетите са били правилно заключени на една верига, бриджът сече или пуска жетони със същата стойност в другата верига. Wormhole свързва блокчейна Solana с други блокчейн, включително тези за Avalanche, Oasis, Binance Smart Chain, Ethereum, Polygon и Terra.

Но какво ще стане, ако не можете да се доверите на пазителя? А дълъг анализ публикувано в Twitter няколко часа след като кражбата каза, че бекенд платформата на Wormhole не е успяла да потвърди правилно своите акаунти на пазителите. Чрез създаване на фалшив акаунт на пазител, хакерът или хакерите зад обира изсечени 120 000 ETH монети— на стойност около 323 милиона долара към момента на транзакциите — във веригата Solana. След това хакерите направиха a серия на трансфери която пусна около 93 750 токена в частен портфейл, съхраняван във веригата Ethereum, фирмата за анализ на блокчейн Elliptic казах.

Хакерите извадиха кражбата, като използваха по-ранна транзакция за създайте набор от подписи, което е вид удостоверение. С това те създадоха VAA или одобрение за действие на валидатор, което по същество е сертификат, необходим за одобряване на транзакции.

READ  Креймър обяснява какво може да доведе до продължаващ спад на пазара

„След като имаха фалшивия „набор от подписи“, беше тривиално да го използват, за да генерират валиден VAA и да задействат неоторизиран монетен двор към собствения си акаунт“, някой, използващ дръжката в Twitter @samczsun написа. „Останалото е история. tl;dr—Wormhole не потвърди правилно всички входни акаунти, което позволи на нападателя да подправи подписите на пазителите и да изсече 120 000 ETH на Solana, от които те върнаха 93 750 обратно към Ethereum.

Други полезни дълбоки гмуркания на хака са тук и тук.

Извличането е четвъртата по големина кражба на криптовалута за всички времена, според това Обзор от Statista, точно зад $480 милиона откраднат от планината Gox през 2014 г. взетите 547 милиона долара от Coincheck през 2018 г. и 611 милиона долара, отвлечени от Polynetwork миналата година (тази рекордна сума беше по-късно се върна от крадеца).

Statista

През 2021 г. загубите от кражби на криптовалути възлизат на 10,5 милиарда долара, според Ellipticв сравнение с 1,5 милиарда долара предходната година.

Нетривиално предизвикателство

Хакът на Wormhole изненада няколко експерти по сигурността на блокчейн. Предизвикателството да се пише софтуер, който взаимодейства с множество вериги по безопасен начин, е нетривиален и само ограничен брой инструменти и техники могат да тестват надеждността на кода.

„Изграждането на мостове наследява цялата сложност на всеки блокчейн“, каза в съобщение Дан Гуидо, главен изпълнителен директор на фирмата за сигурност Trail of Bits. „Изглеждат измамно прости, но в действителност са сред най-трудните за писане кодове.“

READ  Основателят на Adobe и разработчикът на PDF умира на 81-годишна възраст

Утежнявайки трудността, новият хак дойде малко след неотдавнашна промяна в част от софтуера.

„Мостът не очакваше потребителите да подадат набор от подписи, тъй като промяната за улесняване на това беше скорошна в времето за изпълнение на Solana“, обясни Гуидо. „Чрез изпращането на собствените си данни за подписа, нападателят е прекъснал проверката на подписа, което им позволява да поемат собствеността върху голямо количество токени.“

В имейл Дейн Шерет, архитект на решения в услугата за докладване на грешки HackerOne, го обясни по следния начин:

Има verify_signatures функция, която трябва да вземе криптографски подписи от настойниците и да ги обедини заедно. Въпреки името си, verify_signatures всъщност не се проверява – използва secp256k1 родна програма на Solana. Версията на Solana-програмата, която използваше Wormhole, не потвърди правилно адреса, което позволи на хакера да създаде акаунт, който може да заобиколи всички проверки.

Чрез горните стъпки хакерът успя да заобиколи проверките за подпис и да изтегли ETH към Ethereum, което означаваше, че за определен период от време някои от wETH [the wrapped ETH on Solana] всъщност не беше подкрепено с нищо.

Този хак ми е трудно да се справя, защото е иницииран на блокчейна Solana – който използва езика за програмиране Rust за своите интелигентни договори. Тъй като Ethereum използва езика за програмиране Solidity за своите интелигентни договори, това е пример за това как новите мрежи, с различни идиосинкразии и различни езици, сега разговарят помежду си – което прави сигурността още по-трудна.

Приложенията за кръстосана верига крият и други рискове. В пост написан миналия месец, съоснователят на Ethereum Виталик Бутерин предупреди, че „фундаменталните граници на сигурността на мостовете“ ги правят уязвими към различен клас блокчейн експлойт, известен като 51% атака.

READ  Илон Мъск казва, че е време Тръмп да „отплава до залез слънце“

Известна също като мажоритарна атака, 51% атака позволява на злонамерена страна, която печели повече от 50 процента от хеш-мощността на блокчейн, да отмени предишни транзакции, да блокира потвърждаването на нови транзакции и да промени подреждането на нови транзакции. Това отваря вратата към нещо, известно като двойни разходи, хак, който позволява на нападателя да направи две или повече плащания с една и съща валута. Бутерин написа:

Не очаквам тези проблеми да се появят веднага. 51% да атакуват дори една верига е трудно и скъпо. Въпреки това, колкото повече се използват кръстосани верижни мостове и приложения, толкова по-лош става проблемът. Никой няма да атакува 51% Ethereum само за да открадне 100 Solana-WETH (или, по този въпрос, 51% атакуват Solana само за да откраднат 100 Ethereum-WSOL). Но ако в моста има 10 милиона ETH или SOL, тогава мотивацията за атака става много по-висока и големите пулове може да се координират, за да се случи атаката. Така че дейността на кръстосаната верига има антимрежов ефект: макар че не се случва много, тя е доста безопасна, но колкото повече се случва, толкова повече се увеличават рисковете.

Междувременно търсенето на оперативна съвместимост на блокчейн продължава да расте, което вероятно прави предизвикателствата за сигурността по-досадни. И Guido, и Sherret посъветваха операторите на мостове да предприемат проактивни стъпки, за да предотвратят подобни хакове в бъдеще. Такива стъпки включват изброяване на множество одити на сигурността и пускане на ограничена функционалност в мрежата, докато разработчиците не са уверени в зрелостта и безопасността на функцията.