Raydium повідомляє подробиці злому, пропонує компенсацію жертвам

Команда децентралізованої біржі Raydium (DEX) оголосила подробиці того, як стався злом 16 грудня, і запропонувала компенсацію жертвам.

Згідно з офіційним повідомленням команди на форумі, хакер зміг отримати понад 2 мільйони доларів криптовалюти експлуатація уразливість у смарт-контрактах DEX, яка дозволяла адміністраторам вилучати цілі пули ліквідності, незважаючи на те, що існуючі засоби захисту запобігають такій поведінці. 

Команда використовуватиме власні розблоковані токени, щоб компенсувати жертвам, які втратили токени Raydium, також відомі як RAY. Однак у розробника немає стейблкойна та інших токенів, які не належать до RAY, щоб компенсувати постраждалим, тому він просить власників RAY проголосувати за використання казначейства децентралізованої автономної організації (DAO) для купівлі відсутніх токенів для виплати тим, хто постраждав від експлуатувати.

Згідно з окремим посмертним звітом, першим кроком зловмисника в експлойті було коефіцієнт посилення контроль закритого ключа пулу адміністратора. Команда не знає, як цей ключ був отриманий, але підозрює, що віртуальна машина, яка зберігала ключ, була заражена троянською програмою.

Коли зловмисник отримав ключ, він викликав функцію зняття комісій за транзакції, які зазвичай надходили в скарбницю DAO для використання для зворотного викупу RAY. На Raydium комісії за транзакції не надходять автоматично в скарбницю в момент свопу. Натомість вони залишаються в пулі постачальника ліквідності, доки їх не вилучить адміністратор. Однак смарт-контракт відстежує суму комісії, що належить DAO, за допомогою параметрів. Це повинно було перешкодити зловмиснику зняти більше 0.03% від загального обсягу торгів, які відбулися в кожному пулі з моменту останнього виведення.

Тим не менш, через недолік у контракті зловмисник зміг вручну змінити параметри, створивши враження, що весь пул ліквідності — це комісії за транзакції, які були зібрані. Це дозволило зловмиснику вивести всі кошти. Після того, як кошти були виведені, зловмисник міг вручну обміняти їх на інші токени та перевести виручені кошти на інші гаманці під контролем зловмисника.

За темою: Розробник каже, що проекти відмовляються виплачувати винагороди хакерам

У відповідь на експлойт команда оновила смарт-контракти програми, щоб усунути контроль адміністратора над параметрами, якими скористався зловмисник.

У дописі на форумі від 21 грудня розробники запропонували план компенсації жертвам нападу. Команда використовуватиме власні розблоковані токени RAY, щоб компенсувати власникам RAY, які втратили свої токени через атаку. Він запросив обговорення на форумі того, як реалізувати план компенсації з використанням скарбниці DAO для придбання втрачених токенів, відмінних від RAY. Команда просить провести триденне обговорення для вирішення проблеми.

Злом Raydium коштував 2 мільйони доларів вперше відкритий 16 грудня. Згідно з першими повідомленнями, зловмисник використовував функцію draw_pnl для вилучення ліквідності з пулів без депонування токенів LP. Але оскільки ця функція мала дозволити зловмисникам лише знімати комісію за транзакції, фактичний метод, за допомогою якого вони могли виснажувати цілі пули, не був відомий, доки не було проведено розслідування.