Уразливість EVM Cosmos, використана в шести мережах, включаючи MANTRA, виявила безпекову бреш у близько 40 блокчейнах.
28 серпня Cosmos Labs повідомив, що та сама бухгалтерська помилка була використана в шести мережах, включаючи MANTRA, TAC і KiiChain, перш ніж аварійна реакція поширилася на ширшу екосистему Cosmos EVM.
Зловмисники конвертували близько 2,87 мільйона доларів через децентралізовані біржі та приблизно 2,85 мільйона доларів через централізовані платформи, згідно з постмортемом безпеки Cosmos. Рахунки, пов’язані з діяльністю централізованих бірж, з того часу заморожені.
MANTRA зазнав найбільшого публічно деталізованого удару. Непривілейований гаманець перемістив близько 720,9 мільйона токенів з двох адрес, які не санкціонували транзакції 20 серпня, не порушуючи ключі валідатора, адміністратора, управління чи мультисигну.
[
Пов’язане читання
MANTRA Chain повернулася онлайн, але тихі зміни коду викликають занепокоєння розробників
Уразливість вплинула на ширшу екосистему Cosmos/EVM, яка є спільним програмним шаром, що надає мережам Cosmos SDK функціональність сумісну з Ethereum. Після початку атак Cosmos Labs зв’язався з 40 мережами й повідомив, що 13 інших потенційно вразливих мереж вже виправили, зупинили або застосували заходи зменшення ризиків до того, як їх використали.
Реакція також виявила 11 розгортань Cosmos EVM, про які Cosmos Labs раніше не знала через свої канали комунікації з безпекою.
Цей потенційний охоплення входить у ширшу екосистему Cosmos, оцінену більше ніж у 7 мільярдів доларів, згідно з CryptoSlate's даними. Водночас, ця цифра включає проекти, які могли не використовувати уразливий софт, і не представляє безпосередньо викритого обсягу.
Cosmos спочатку недооцінив уразливість
Cosmos Labs повідомив, що помилку було повідомлено за кілька місяців до того, як зловмисники її використали.
Фірма заявила, що отримала первинне повідомлення про уразливість 25 квітня, але після тестування встановила, що уразливість торкалася мереж з шістьма десятковими знаками, тоді як відомі продуційні мережі Cosmos EVM використовували 18 десяткових знаків. Тому інженери вважали, що розгорнуті мережі не були в небезпеці.
За словами фірми:
“Виходячи з цієї оцінки, Cosmos Labs вирішив уразливість через свій тихий, публічний процес виправлення, а не через приватний процес розповсюдження виправлень, коли уразливість вважається загрозою для живих користувачів.
Виправлення було об’єднане в основну базу коду 15 травня і оброблено як тихе публічне виправлення, а не як аварійне випуск безпеки. У той же час, воно не було одразу перенесено на старі версії, оскільки зміна була революційною і потребувала координованого оновлення.
Оцінка змінилася на початку серпня, коли додаткові дослідження показали, що розгортання Cosmos EVM були вразливі незалежно від конфігурації десяткових знаків.
Виправлені версії v0.6.2 і v0.7.2 були опубліковані пізно 19 серпня. На наступний ранок публічний запит у форку іншого проекту описав уразливість і шлях її використання. Перша відома невідповідна транзакція MANTRA відбулася менш ніж через 12 годин.
Помилка поєднувала дві бухгалтерські недоліки. Зловмисник міг спровокувати недостатність беззнакового цілого числа, що створило аномально великий баланс, а потім використати цей стан, щоб перевантажити інший рахунок і витягнути його законний баланс, не збільшуючи загальний обсяг токенів.
TAC повідомив про використання приблизно через 45 годин після MANTRA, а KiiChain слідував незабаром. Cosmos Labs згодом рекомендував мережам Cosmos EVM зупинитися і оновитися, поки координувавши ширшу реакцію.
MANTRA зазнала найбільшого оприлюдненого удару
На MANTRA, зловмисник перемістив близько 600 мільйонів токенів з адреси для спалення та ще 120,9 мільйона зі старої мультисигнатурної адреси епохи зародження.
Нові токени не були випущені. Натомість раніше нерухомі баланси стали передаваними, збільшивши обіговий обсяг приблизно на 720,9 мільйона MANTRA.
Проект оцінив цей рух приблизно у 3,6 мільйона доларів за ціною до інциденту. Станом на 28 серпня жоден токен не був відновлений. Близько 38 мільйонів залишилися замороженими на рахунку зловмисника, тоді як решта була відслідкована через біржові маршрути та направлена на платформи й правоохоронні органи.

MANTRA також визнала, що її моніторинг не виявив першу транзакцію протягом майже чотирьох годин, оскільки вважав адресу для спалення нездатною переміщати кошти. Мережа зупинилася через 14 хвилин після другого невідповідного дебету, що призвело до простою тривалістю близько 30 годин.
MANTRA впала до рекордно низького рівня після атаки, а потім відновилася приблизно на 14% до близько 0,004744 долара після постмортему.
Ширший вплив змусив Cosmos Labs переглянути процедури триажу та розкриття уразливостей після того, як помилка, спочатку вважалася малоймовірною для загрози продуційних мереж, врешті-решт досягла шести мереж і змусила провести аварійні заходи в десятках інших.
Публікація Cosmos неправильно оцінив критичну помилку протягом 4 місяців, перш ніж хакери вкрали майже 6 мільйонів доларів через 6 мереж вперше з’явилася на CryptoSlate.