
Платформа для моніторингу кібербезпеки в блокчейні PeckShieldAlert (PeckShieldAlert) 1 квітня підтвердила, що токен LML зазнав цілеспрямованого нападу: збитки становлять близько 950 000 доларів США, а курс «мем-збитку» протягом короткого часу впав на 99,6%, майже до нуля. Зловмисники одразу обміняли вкрадені 950 000 USDT на 450,6 ETH, а потім внесли кошти в протокол приватного мікшування Tornado Cash, щоб розірвати ланцюжок відстеження.
(Джерело: Trading View)
Ця атака використала типову конструктивну ризикованість у DeFi-протоколах для застави: логіка розрахунку винагород спирається на запізнілі TWAP або ціни зі знімка, тоді як реальний продаж здійснюється за поточною ринковою ціною спот. Саме різниця між цими цінами створює можливість для керованого арбітражного «вікна».
Коли атакувальник може за короткий час штучно підняти спотову ціну токена, то, продаючи за підконтрольною високою спотовою ціною обсяг винагород, розрахований за TWAP, він отримує фактичний прибуток, що значно перевищує нормальний. Ще важливіше те, що отримання винагород і продаж токенів можуть бути виконані атомарно в межах однієї торгової послідовності, через що традиційні механізми управління ризиками складно втрутитися до закриття арбітражу. BlockSec зазначає, що цей дефект TWAP-ціноутворення не є унікальним для LML: його вже виявляли в багатьох DeFi-протоколах, але багато з них досі не встигли достатньо підсилити захист проти таких векторів атак.
Згідно з on-chain-аналізом BlockSec, дії атакувальника поділяються на такі ключові кроки:
Попереднє формування позиції за рахунок внесення токенів: заздалегідь внести токени в цільовий протокол застави, щоб отримати право на подальший виклик функції claim
Підняття спотової ціни через маршрут із нульовою адресою: за допомогою торгового шляху, де одержувачем виставлено нульову адресу, штучно зменшити обіг і підвищити спотову ціну LML
Виклик claim за високою ціною для отримання винагород: на маніпульованому високому рівні спот-ціни, використовуючи логіку винагород, що базується на TWAP або знімку, розрахувати великий обсяг токенів, які можна отримати
Миттєвий продаж винагород за високою спот-ціною: коли спот-ціна все ще штучно утримується на високому рівні, негайно продати та «осібнити» приблизно 950 000 USDT
Обмін USDT на ETH і внесення в міксер: обміняти 950 000 USDT на 450,6 ETH і внести в Tornado Cash, щоб перервати on-chain-відстеження
Уся атака виконується атомарно в межах блокчейна, не залишаючи традиційного у сенсі «вікна помилки».
Атакувальник обрав Tornado Cash як інструмент для відмивання коштів — це типовий шлях у випадках DeFi-атак. Tornado Cash розриває можливість відстеження on-chain-фінансів за допомогою доказів із нульовим розголошенням, через що правоохоронцям і фахівцям із безпеки складніше відстежити кінцевий пункт призначення, а також суттєво підвищує складність повернення активів.
Ця LML-атака виявила проблему, що має широке галузеве практичне значення. Механізми виплати винагород, що покладаються на TWAP або ціни зі знімка, загалом мають ризик маніпуляції на менш ліквідних токенах: низька ліквідність означає, що атакувальнику потрібно витратити відносно менше коштів, щоб підштовхнути спот-ціну, тоді як арбітражні віддачі можуть бути надто високими. Ключові заходи, які DeFi-протоколи використовують для захисту від таких атак, включають введення часової затримки між отриманням винагород і продажем токенів, обмеження верхньої межі винагород, які один адрес може отримати за короткий час, а також додавання захисту від відхилення між поточною спот-ціною та TWAP.
Суть атаки — «невідповідність» між «базовою ціною для розрахунку винагород» і «базовою ціною для продажу»: протокол обчислює обсяг винагород, які можна отримати, за запізнілим TWAP або ціною зі знімка, але токени можна напряму продати за поточною спот-ціною. Атакувальник, маніпулюючи високою точкою спот-ціни, одразу отримує та продає, роблячи можливим арбітраж «розрахунок за повільною ціною, продаж за маніпульовано високою ціною»; одноразова втрата може сягати 950 000 доларів США.
Торгівля з одержувачем, встановленим як нульова адреса, технічно є операцією «спалювання» — токени переводяться на адресу без керування, зникають з обігу, через що видимий ринку обсяг обігових поставок різко скорочується, а спот-ціну штучно підвищують. Зазвичай атакувальники підтримують цю операцію за допомогою флеш-кредиту, щоб виконати маніпуляцію ціною без необхідності тримати активи; весь процес може завершитися в межах одного торгового блоку.
Tornado Cash суттєво підвищує складність відстеження, але це не означає, що відстеження стає повністю неможливим. On-chain-безпекові компанії можуть провести кореляційний аналіз за часом надходження, характеристиками сум і подальшою on-chain-поведінкою; якщо атакувальнику потрібно перевести ETH на централізовану біржу для ліквідації, процеси KYC все ще можуть розкрити особу. PeckShield і BlockSec та інші організації постійно відстежують подальші дії за пов’язаними адресами.