Hyperliquid и атака JELLY: контекст, уязвимость и командное решение
Hyperliquid (HYPE) оказалась на грани катастрофы из-за атаки JELLY. Одной сделки было достаточно, чтобы поставить под угрозу платёжеспособность протокола, ни один механизм безопасности не сработал, и валидаторам пришлось вмешаться в последнюю секунду. Вот объяснение того, что произошло на самом деле, и решения, которые команда предложила для устранения недостатков.
Обзор инцидента
На этой неделе компания Hyperliquid стала жертвой хорошо спланированной атаки, целью которой было поставить под угрозу платежеспособность протокола за счет использования определенных ограничений в механизмах ликвидации. Для начала давайте вспомним, что произошло.
26 марта 2025 года несколько недавно созданных адресов открыли позиции по токену JELLY — мемкоину, запущенному на платформе Pump fun и доступному для торговли на Hyperliquid. На тот момент рыночная капитализация токена составляла около 10 миллионов долларов. Три позиции были следующими: короткая позиция на 4,5 миллиона долларов и две длинные позиции примерно на 2,5 миллиона долларов каждая (с кредитным плечом).
Через несколько мгновений короткая позиция стала прибыльной, и трейдер начал постепенно выводить маржу, тем самым инициировав собственную ликвидацию. В этот момент сработал механизм ликвидации Hyperliquid, но он не сработал: в книге ордеров не хватило ликвидности для закрытия позиции.
В результате позиция была переведена в специализированное хранилище для ликвидации (модуль, напрямую связанный с HLP, о котором мы вскоре расскажем) с целью закрыть её как можно быстрее без существенного влияния на цену.
Однако параллельно с ликвидацией короткой позиции адрес на базе Solana купил огромное количество JELLY на спотовом рынке, в результате чего цена токена выросла примерно на 250 %. Всего за несколько минут позиция, которой теперь владела HLP, показала нереализованный убыток в размере около 12 миллионов долларов.
Чтобы защитить целостность платформы и средства пользователей в хранилище HLP, Hyperliquid пришлось действовать быстро: валидаторы единогласно проголосовали за закрытие позиции путём игнорирования цены JELLY в оракуле (переопределение оракула) и её искусственного изменения для погашения всех долгов HLP.
Фонд объявил, что всем трейдерам с длинными позициями будет возмещена прибыль (за исключением кошельков, задействованных в атаке, которые были отмечены командой), как если бы их позиции были закрыты по реальной рыночной цене JELLY на тот момент.
Как работает ликвидация на Hyperliquid
Теперь, когда контекст ясен, важно понять, как работает ликвидация на Hyperliquid, какие меры предосторожности предусмотрены для предотвращения подобных инцидентов и почему они не сработали.
Ликвидаторское хранилище (и HLP)
Как и в случае с любой платформой, поддерживающей кредитное плечо, когда позиция на Hyperliquid опускается ниже поддерживающей маржи, она становится доступной для ликвидации. Протокол использует внутреннюю систему Liquidator Vault, которая принимает позицию и закрывает её через книгу заявок.
Liquidator Vault является частью Hyperliquidity Provider (HLP) — хранилища сообщества на платформе Hyperliquid, предназначенного для автоматического выполнения стратегий маркетмейкинга. Пользователи могут вносить USDC, чтобы получать долю от потенциальной прибыли или убытков, пропорциональную их вкладу.
Стратегия хранилища нацелена на ликвидацию позиций, которые находятся ниже двух третей их поддерживающей маржи. В частности, оно размещает ордера (на покупку или продажу, в зависимости от ситуации) в биржевом стакане, чтобы частично или полностью закрыть позицию.
В обычных рыночных условиях это работает без проблем. Но в случае с активами с низкой ликвидностью риск становится критическим, и может сработать механизм окончательной защиты.
Автоматическое сокращение доли заемных средств (ADL)
Чтобы усилить эту систему, Hyperliquid внедрила механизм под названием автоматическое сокращение доли заемных средств (ADL), который служит последней линией защиты при ликвидации.
ADL работает на удивление просто. В случае серьёзной чрезвычайной ситуации, когда ликвидация представляет слишком большой риск для протокола, может быть задействован ADL. Затем он принимает позиции других трейдеров по тому же активу и использует их нереализованную прибыль для компенсации убытков по рискованной позиции.
Например, при рискованной ликвидации короткой позиции по токену AAA, если срабатывает ADL, модуль определяет все длинные позиции по AAA и ранжирует их по нереализованной прибыли. Затем он закрывает столько позиций, сколько необходимо (начиная с самых прибыльных), чтобы зафиксировать прибыль и покрыть убыток.
Короче говоря, ADL — это механизм распределения убытков для защиты протокола. Это жёсткая мера: идея заключается в том, что в чрезвычайной ситуации лучше заставить платить прибыльных пользователей, чем опустошить HLP, который финансируется за счёт пользователей, не желавших открывать позиции с высоким риском.
Важно отметить, что ADL активируется только в крайних случаях (за всю историю Hyperliquid он ни разу не срабатывал), когда маржинальное покрытие не работает, ликвидатор не может взять на себя риск без безвозвратных потерь, а целостность протокола оказывается под угрозой.
Инцидент с JELLY
Целенаправленная атака на токен JELLY выявила структурные недостатки в системе ликвидации Hyperliquid. Теоретически этот сценарий должны были предотвратить два механизма: Liquidator Vault (управляемый HLP) и автоматическое сокращение доли заемных средств (ADL). Однако, несмотря на большие нереализованные убытки, ADL так и не сработал. Почему?
Как мы уже объясняли ранее, Liquidator Vault не смог провести ликвидацию должным образом. Позиция была слишком большой по сравнению с рыночной капитализацией JELLY и доступной ликвидностью в книге заявок.
Но почему не сработал ADL? Во-первых, помните, что Liquidator Vault — это полунезависимая организация. Она является частью HLP, но это не единственное хранилище, и у каждого из них есть свой сегментированный торговый счёт.
Далее логика срабатывания ADL основана на соотношении: риск, связанный с ликвидацией, и общая сумма доступного обеспечения на счете в хранилище. Если соотношение слишком высокое, ADL активируется.
И вот в чём проблема: поскольку позиция была передана в HLP, коэффициент срабатывания больше не рассчитывался на основе активов Liquidator Vault, а учитывал все активы HLP. Таким образом, крупный нереализованный убыток не привёл к срабатыванию ADL.
Другими словами, объединение средств в рамках HLP не позволило ADL обнаружить «критическую» потерю только в рамках стратегии ликвидации, несмотря на то, что позиция представляла системный риск для протокола. Такая структура, эффективная в условиях низкой волатильности, позволяла рискованной позиции оставаться открытой слишком долго без активации предусмотренного механизма безопасности.
В конечном счёте именно поэтому команде Hyperliquid пришлось провести голосование валидаторов, чтобы осуществить ликвидацию JELLY по преференциальной цене (на основе цены до манипуляций). Кворум валидаторов был достигнут всего за несколько минут, при этом не было ни одного голоса против, что и привело к результату, который мы наблюдаем сейчас.
Принятые меры
После инцидента команда Hyperliquid быстро осознала серьёзность ситуации и объявила о ряде корректирующих мер, призванных предотвратить повторение подобного сценария. Эти меры в первую очередь направлены на усиление механизмов ликвидации, ограничение доступа к HLP и уточнение пороговых значений безопасности, таких как ADL.