Відповідно до звіту від 25 липня фірми з безпеки блокчейну CertiK, програму кредитування Era Lend на zkSync було використано для отримання криптовалюти на 3,4 мільйона доларів. Зловмисник використовував «атаку повторного входу лише для читання», щоб вичерпати кошти. Це тип атаки, який перериває багатоетапний процес, а потім змушує його продовжувати після виконання зловмисної дії. Зокрема, повторне входження «лише для читання» — це таке, що не оновлює стан контракту.
We are seeing reports that @Era_Lend has been exploited on zkSync
Total losses appear to be $3.4 million in a read only reentrancy attack
See more below https://t.co/h8xrjccE5i
— CertiK Alert (@CertiKAlert) July 25, 2023
Згідно зі звітом, зловмисник викачував кошти у двох окремих транзакціях, використовуючи зовнішній обліковий запис 0xf1D076c9Be4533086f967e14EE6aFf204D5ECE7a. Вони покладалися на вразливість у «функції зворотного виклику та _updateReserves», щоб маніпулювати контрактом у звіті про старі значення, які ще не були оновлені.
Era Lend є форком проекту Syncswap, і CertiK стверджував, що інші проекти, засновані на Syncswap, також можуть бути вразливими до експлойту.
Оперативний детектив і користувач Twitter Spreek повідомив, що код Syncswap дозволяє користувачеві «записувати, а потім викликати зворотний виклик перед викликом update_reserves», змушуючи оракул повідомляти про неправильні значення.
in the syncswap LP tokens, one can burn, then callback before update_reserves is called. so the oracle uses an incorrect reserves value to calculate the price, resulting in an inflating oracle price. pic.twitter.com/0U7Vu7BzJM
— Spreek (@spreekaway) July 25, 2023
Spreek також повідомив, що команда Era Lend визнала атаку та призупинила контракти zkSync протоколу, щоб запобігти подальшим експлойтам.
Інший дослідник блокчейну, відомий у Twitter як Saul, повідомив, що атака торкнулася стейблкоїна USDC+, який випускається за протоколом Overnight Finance. За словами Саула, команда Overnight визнала викриття та також призупинила свої контракти. Можливо, було втрачено понад 261 000 доларів США, або 7,86% від загальної вартості застави, що підтримує стейблкойн.
У дописі в блозі від 7 червня, де пояснюється, як здійснюються атаки повторного входу лише для читання, псевдонімний дослідник блокчейну Officer’s Notes заявив, що аудиторам важко помітити ці вразливості, оскільки «зазвичай аудитори та мисливці за помилками стурбовані лише точками входу, які змінюють стан під час пошуку повторного входу».
Щоб полегшити цю проблему, Officer’s Notes рекомендує аудиторам використовувати спеціалізоване програмне забезпечення, яке допоможе їм знайти ці вразливості.
Era Lend працює в мережі zkSync, зведеному рівні 2 Ethereum із нульовим розпізнаванням. У квітні загальна вартість заблокованої мережі сягнула понад 110 мільйонів доларів. До кінця року розробники мережі мають намір створити екосистему сумісних ланцюжків під назвою «Гіперчейни».