Автор оригинала: Бочай Бочай (X: @bocaibocai_)
Основные выводы
Метод атаки: атакующий использовал всего около 100 000 долларов США в USDC, эксплуатируя критическую уязвимость в функции чеканки USR — возможно, манипуляция с оракулом, утечка закрытого ключа офлайн-подписывающего лица или отсутствие проверки суммы между запросом на чеканку и её выполнением — и создал 80 миллионов USR (на сумму около 80 миллионов долларов США), после чего быстро обменял их на реальные активы.
Арбитражный путь: атакующий постепенно сбрасывал незаконно созданные USR в ликвидностные пулы, такие как Curve Finance, что привело к падению цены USR до минимального уровня в 2,5 цента; в ходе хаоса, вызванного отвязкой, было получено примерно 25 миллионов долларов США, после чего прибыль от арбитража была конвертирована в ETH для вывода.
Распределение убытков: в соответствии с логикой двухуровневой архитектуры рисков Resolv, дефицит залога, вызванный этой атакой, сначала покрывается держателями страхового пула RLP (цена RLP снижается вместе с чистой стоимостью активов протокола), а держатели USR теоретически защищены до приостановки выкупа протоколом; однако плечевые позиции USR (Looping) на протоколах займа, таких как Morpho, были закрыты принудительно из-за потери привязки, что привело ко вторичным убыткам.
Сопутствующие протоколы: Основные DeFi-протоколы, затронутые этим событием, включают: Curve Finance (мгновенный крах ликвидности USR/USDC), Morpho (плечевые позиции с USR в качестве залога были закрыты), Fluid и Euler (также существовали циклические позиции USR/RLP).
Предупреждение от отрасли: Это событие выявило фундаментальную слабость стабильных монет с нейтральной дельтой — точка связки логики чеканки с оф-чейн-подписями/оракулами является наиболее уязвимым местом для атак; любая конструкция с капитальной эффективностью «1 доллар за 1 доллар» должна основываться на чрезвычайно строгом аудите безопасности смарт-контрактов.
I. RESOLV и USR: чтобы понять эту атаку, нужно понять эту систему
Прежде чем обсуждать атаку, нам нужно понять, как работает USR — ведь злоумышленники воспользовались самой тонкой и уязвимой частью его дизайна.
Основной механизм USR: дельта-нейтральная стабильная монета
USR — это не стабильная монета, поддерживаемая банковскими депозитами, как USDT, и не переобеспеченная стабильная монета, как DAI. Это стабильная монета с нейтральным дельта-риском — архитектура, обеспечивающая чистую нейтральность риска за счет одновременного удержания спот-ETH и продажи бессрочного фьючерса на ETH [Примечание 1].
Логика следующая:
Когда вы вносите 1 доллар в ETH для чеканки 1 единицы USR, протокол Resolv одновременно открывает на рынке фьючерсных контрактов короткую позицию по ETH в эквивалентном объеме. Если ETH растет — вы зарабатываете на споте, но теряете на контрактах; если ETH падает — вы зарабатываете на контрактах, но теряете на споте — все это взаимно компенсируется, и ваша чистая стоимость остается примерно равной 1 доллару. Это позволяет USR отвязаться от цены ETH, сохраняя при этом привязку к доллару в соотношении 1:1 [примечание 2].
Преимущество этой архитектуры заключается в чрезвычайно высокой эффективности капитала: вам достаточно всего 1 доллара ETH, чтобы чеканить 1 USR, без необходимости перекрытия. Источником дохода являются платы за финансирование позиций по хеджированным позициям (платежи от лонгов к шортам), а также доход от стейкинга ETH, благодаря чему держатели USR получают годовую доходность около 5–6%. Доходность стейкинг-версии stUSR еще выше [Примечание 3].

Двухуровневая архитектура: изоляция рисков между USR и RLP
Resolv разработал двухуровневую структуру токенов для решения проблемы «кто несет риски эксплуатации протокола»:
Уровень USR (высокий приоритет): держатели享有 стабильную привязанную защиту, убытки на них не возлагаются;
Слой RLP (подчиненный слой): держатели RLP выступают в роли «страхового пула» протокола, принимая на себя рыночные риски, риск контрагента (например, постоянная отрицательная ставка по финансированию) и потенциальные контрактные риски, в обмен на более высокую доходность (20–40% годовых) [Примечание 4].
Правила ясны: любые убытки сначала покрываются за счет RLP, затем за счет USR. Когда коэффициент залога USR падает ниже 110%, выкуп RLP автоматически блокируется для приоритетной защиты держателей USR [Примечание 5].
Это ключевое предпосылка для понимания распределения потерь от этой атаки.
Основная атака: в чем именно проблема с функцией чеканки?
Это самый критичный и наименее информативный этап на данный момент. Данные в цепочке подтвердили один факт: атакующий «купил» USR на сумму 50 миллионов долларов США за 100 тысяч долларов США [1]. Соотношение чеканки 1:500 означает, что проверка объема чеканки в смарт-контракте полностью не работает.
Криптофонд D2 Finance предложил три возможные гипотезы атаки [Примечание 9]:
Гипотеза A: Манипуляция оракулом (Oracle Manipulation). Цена чеканки USR зависит от ценового оракула. Если злоумышленник сможет временно завысить цену оракула в одной транзакции (например, с помощью молниеносного займа), заставив контракт считать, что активы, внесенные пользователем, имеют более высокую стоимость, он сможет чеканить избыточное количество USR [Примечание 6].
Гипотеза B: Компрометация ключа оффчейн-подписчика (Off-Chain Signer Compromise). Процесс чеканки Resolv включает этап проверки оффчейн-подписи — запросы на чеканку пользователей должны быть подписаны бэкенд-сервисом протокола для выполнения. Если этот ключ подписи будет скомпрометирован, злоумышленник сможет подделывать легитимные команды на чеканку любой суммы, обходя все ограничения на цепочке [2].
Гипотеза C: Отсутствие проверки суммы между запросом и выполнением (Validation Gap). Процесс чеканки состоит из двух этапов: «отправка запроса» и «выполнение чеканки». Если смарт-контракт при выполнении не проверяет строго, совпадает ли окончательная сумма выполнения с суммой запроса, злоумышленник может изменить параметры после отправки запроса, но до выполнения, чтобы осуществить избыточную чеканку.
На момент написания отчета официальный представитель Resolv еще не опубликовал полный анализ корневой причины уязвимости (RCA), поэтому приоритеты трех вышеуказанных гипотез пока не могут быть окончательно подтверждены.
На основе анализа последствий атаки, гипотеза B (утечка ключа подписывающего) или гипотеза C (отсутствие логики проверки) представляются более вероятными — поскольку манипуляции оракула обычно требуют значительных средств и трудно реализуемы для достижения таких экстремальных отклонений цен; при чеканке 80 миллионов USR атакующий фактически вложил крайне ограниченные средства, что лучше соответствует характеристикам "обхода проверки контракта".
Как злоумышленники выводят средства: учебный сценарий ухода из DeFi
После получения 80 миллионов единиц USR перед злоумышленником встает задача: как превратить фальшиво созданные стабильные монеты в реальную стоимость?
D2 Finance называет это «учебным примером пути вывода средств DeFi-атакой»: атакующий постепенно отправлял USR в несколько протоколов ликвидности, предпочитая массово продавать на пуле Curve Finance USR/USDC (крупнейший пул ликвидности USR с дневным объемом торгов 3,6 млн долларов США) [Примечание 10].
Поскольку ликвидность Curve ограничена, внезапный приток 80 миллионов USR полностью разрушил пул — цена USR упала с 1 доллара до 2,5 цента за 17 минут. Атакующие не планировали продать все USR по цене 1 доллар, а постепенно обменивали их на USDC/USDT в диапазоне от 0,25 до 0,5 доллара, в итоге переведя прибыль от арбитража в ETH для вывода.
PeckShield оценивает, что итоговая сумма вывода составила около 25 миллионов долларов США [примечание 11] — с учетом проскальзывания, вызванного массовой продажей USR в крайне низком ценовом диапазоне, этот показатель означает, что фактический коэффициент извлечения злоумышленниками составил около 30% (25 млн / 80 млн). Оставшиеся 70% «ценности» исчезли из-за огромного проскальзывания при истощении ликвидности.

Три: После отсоединения: что произошло с USR, RLP и системой залога
Коэффициент залога USR мгновенно рухнул
В нормальных условиях USR обеспечивается 1:1 за счет ETH+хеджированных позиций. Однако после выпуска в систему 80 миллионов неколлатерализованных USR реальные активы, соответствующие общему объему USR, оказались недостаточными для погашения по курсу 1:1 — уровень покрытия резко упал ниже 100%.
Это напрямую активировало механизм защиты уровня RLP — протокол теоретически замораживает выкуп RLP, чтобы в приоритетном порядке защитить держателей USR. Однако одновременно, поскольку USR сам по себе отвязался от привязки (торговая цена на вторичном рынке составляет около 0,87 доллара США), держатели USR также сталкиваются с убытками при продаже по рыночной цене.
Каскадное списание по кредитному протоколу
Это один из наименее оцененных побочных ущербов в ходе этого инцидента.
Рост Resolv во многом зависит от стратегии: пользователи вносят USR в качестве залога в протоколы кредитования, такие как Morpho, Fluid, Euler, занимают USDC и покупают еще больше USR, повторяя этот цикл, образуя луппинг-позиции с плечом, где у некоторых пользователей плечо достигает 10 раз [3].
Когда цена USR резко упала с 1 доллара до 0,87 доллара и ниже, стоимость залога этих плечевых позиций мгновенно сократилась на 13%+. Поскольку кредитные протоколы автоматически закрывают позиции при падении коэффициента залога ниже линии ликвидации, большое количество USR было ликвидировано роботами, что привело к дополнительному сбросу USR на вторичном рынке и дальнейшему снижению цены — образовался классический механизм смертельной спирали [Примечание 7].
На Morpho существует отдельный «MEV Capital Resolv USR Vault», чей TVL до атаки уже достиг значительного размера, и эти позиции стали основными пострадавшими от косвенных убытков [4].
Резкое сокращение TVL протокола
Перед атакой TVL Resolv вырос до нескольких сотен миллионов долларов США (ранее достигал пика более 650 миллионов долларов США, в основном за счет плечевых позиций на Morpho и Euler). После приостановки протокола пользователи не могут вывести USR, а расчет TVL затруднен из-за отклонения цены USR от привязки [5].
Четвертый: Кто несет убытки? Анализ рисков для всех сторон

Держатели RLP являются первым уровнем потерь по конструкции. Дефицит обеспечения, вызванный атакой (80 миллионов некрытых USR были напечатаны), напрямую отразится на снижении чистой стоимости RLP — цена RLP представляет собой долю в избыточно обеспеченной части протокола, и при появлении непокрытого долга по протоколу RLP обесценивается в первую очередь [6].
Держатели плечевых позиций USR понесли наибольшие потери. Они не только столкнулись с ликвидацией (которая обычно сопровождается штрафом в размере 5–10%), но и продали свои позиции во время отклонения USR от привязки по цене ниже привязанной, что неизбежно привело к совокупным потерям.
Curve LP-провайдеры несут убытки от временной потери — когда атакующий массово продает USR, пул LP пассивно поглощает большое количество USR (продавая USDC и удерживая больше дешевого USR), что приводит к арбитражным убыткам [Примечание 8].
Обычные держатели USR: согласно дизайну, если протокол корректно активирует механизм приостановки, держатели USR могут обменять их на 1:1 оставшиеся реальные обеспечительные активы. Однако проблема в том, что после атаки протокол приостановил все функции, окно выкупа закрыто, и фактические продавцы могут совершить сделку только по рыночной цене 0,87 доллара, понеся убыток в 13% из-за отсоединения от привязки.
Пятый пункт: Реагирование на чрезвычайные ситуации: Меры, принятые командой RESOLV
Первым действием команды Resolv стало немедленное приостановление всех функций протокола, включая чеканку, выкуп и переводы, чтобы перекрыть дальнейшие каналы действий злоумышленника[1].
На момент написания отчета Resolv официально подтвердила факт атаки, однако окончательный пост-мортем-отчет и официальная компенсационная схема еще не опубликованы. Это соответствует типичному графику реагирования на инциденты безопасности в DeFi — команды обычно требуют 48–72 часов для проведения цепочки анализа и подтверждения уязвимости, прежде чем опубликуют подробный план устранения.
Стоит отметить, что ранее Resolv сотрудничала с Immunefi для запуска программы вознаграждения за обнаружение уязвимостей и внедрила систему активного мониторинга безопасности Hypernative [7]. Последняя теоретически должна была зафиксировать предупредительные сигналы о необычном чеканке — что порождает вопрос: был ли предупредительный сигнал активирован вовремя, или скорость атаки превысила окно для ручного вмешательства?
Из-за экстремальной скорости падения USR до 2,5 цента за 17 минут видно, что атака была выполнена с высокой эффективностью, а окно для реакции крайне ограничено.
Шесть: Предупреждение о протоколах аналогичного типа: системные риски дельта-нейтральных стабильных монет
Событие Resolv не является изолированным — это типичный провал в сегменте DeFi «синтетических долларов».

Основный урок один: оффчейн-подписчики представляют централизованную угрозу. Для обеспечения эффективного чеканки нейтральные к дельте стабильные монеты обычно вводят оффчейн-бэкенд-сервисы для проверки заказов. Этот «оффчейн-компонент» по сути является централизованным узлом власти — если его приватный ключ будет скомпрометирован, злоумышленник получит контроль над правом чеканки протокола. Это переносит уязвимости безопасности Web2 в Web3[8].
Второй ключевой урок: «Капитальная эффективность 1:1» — это двойной меч. Философия проектирования систем с избыточным обеспечением (например, MakerDAO) заключается в том, что даже при наличии небольших уязвимостей в контракте избыточный резервный залог может поглотить часть потерь. Системы с нулевой дельтой сводят резерв к нулю — любой сбой в логике чеканки напрямую приводит к пропорциональному дефициту в системе без избыточности.
Основной урок три: аудит не успевает за быстрым ростом TVL. TVL Resolv вырос с менее чем 50 миллионов долларов до более чем 650 миллионов долларов за три месяца, главным образом благодаря стратегии леверидж-цикличности на Morpho. Быстрое увеличение сложности системы и точек интеграции создало огромное давление на аудит. Подобные уроки неоднократно повторялись в истории DeFi: Euler Finance (март 2023 года, убыток в 197 миллионов долларов), Inverse Finance (апрель 2022 года, 15,6 миллиона долларов) — это трагедии, связанные с «логически обоснованным дизайном, но наличием детальных уязвимостей в логике чеканки/заимствования» [9].
Семь. Основные выводы
Эта атака раскрыла не просто уязвимость в контракте, а глубокий противоречие в архитектуре рынка стабильных монет с дельта-нейтральной стратегией.
История началась с амбициозного замысла USR: без зависимости от резервов фиатных валют, без необходимости сверхобеспечения, только за счет хеджирующих деривативов для достижения капитальной эффективности 1:1. Эта модель идеально работала на восходящем рынке — пользователи создавали 1 единицу USR, закладывая 1 доллар в ETH, а протокол вознаграждал их платой за финансирование, что привело к быстрому накоплению TVL в сотни миллионов долларов.
Но «капитальная эффективность 1:1» одновременно означает отсутствие какого-либо страхового буфера. Если возникает уязвимость в логике чеканки — будь то утечка ключей подписывающих узлов вне цепочки или отсутствие проверки между запросом и выполнением — злоумышленник может создать любое количество стабильных монет практически за нулевую стоимость. В отличие от систем с избыточным обеспечением, здесь нет никакой дополнительной защиты — атака проникает прямо в систему.
Создание 80 миллионов USR заняло всего 100 000 долларов США, 17 минут и дно цены в 2,5 цента. Злоумышленник вывел реальную стоимость в 25 миллионов долларов США, оставив протоколу черную дыру, ожидающую устранения — а также счет, составленный держателями RLP, пользователями с плечом и Curve LP, оплаченный реальными затратами.
Побочные эффекты от таких протоколов, как Curve, Morpho, Fluid и Euler, — это другая сторона «суперкомпозируемости» DeFi: интеграция между протоколами в обычные времена усиливает доходность, а в кризисные времена — также усиливает риски. В конечном счете, урок этого случая заключается в том, что в DeFi каждый открытый вами окно эффективности — это каждый открытый вами вектор атаки. Существование оффчейн-подписчиков делает протоколы более гибкими, но также добавляет им централизованную смертельную уязвимость.
Примечание
[注1] Дельта-нейтральность (Delta Neutral): термин финансовых производных. Дельта измеряет чувствительность цены актива к изменениям цены базового актива. "Дельта=0" означает, что позиция не приносит прибыль или убыток при росте или падении цены базового актива — то есть полностью хеджирована. Для Resolv это означает удержание 1 доллара ETH (Дельта=+1) и одновременную продажу фьючерсов на эквивалентное количество ETH (Дельта=-1), при этом чистая дельта = 0, поэтому это называется "дельта-нейтральностью".
[注2] Перпетуальные фьючерсы: фьючерсный контракт без срока погашения, являющийся основным производным инструментом на рынке криптовалют. Позиция по продаже перпетуальных фьючерсов означает: получение прибыли при падении цены ETH и убытки при росте цены, что позволяет хеджировать риск изменения цены现货 ETH.
[注3] Ставка финансирования (Funding Rate): механизм балансировки рынка перпетуальных фьючерсов. Когда длинных позиций больше, чем коротких, держатели длинных позиций регулярно платят «средства финансирования» держателям коротких позиций, и наоборот. Resolv, будучи стороной короткой позиции, как правило, постоянно получает средства финансирования на фоне бычьего настроения на рынке криптовалют, что является его основным источником дохода.
[Примечание 4] Субординированный слой (Junior Tranche): В структуре финансового разделения инвесторы субординированного слоя первыми несут убытки при возникновении потерь (аналогично «первым потерпевшим»), но при распределении доходов также получают более высокую компенсацию в виде премии за риск. RLP соответствует субординированному слою протокола Resolv, а USR — приоритетному слою.
[Примечание 5] Уровень срабатывания коэффициента залога 110%: общая стоимость заложенных активов USR составляет 1,1 раза больше общего объема обращения USR. При падении ниже этого уровня выкуп RLP приостанавливается, чтобы обеспечить приоритетный выкуп оставшихся активов держателями USR.
[Примечание 6] Флеш-кредит (Flash Loan): инструмент беззалогового заимствования, уникальный для DeFi, требующий погашения займа в рамках одной транзакции (в том же блоке). Злоумышленники могут использовать его для временного получения крупных сумм средств с целью манипулирования ценами, при условии погашения займа до завершения транзакции, что практически не требует затрат.
[Примечание 7] Смертельный вихрь (Death Spiral): самоподдерживающийся крах в процессе снижения плеча: падение цены актива → срабатывание ликвидации → дальнейшая продажа активов → дальнейшее падение цены → срабатывание дополнительных ликвидаций, и так по кругу.
[Примечание 8] Временная потеря (Impermanent Loss): Специфический риск, с которым сталкиваются поставщики ликвидности в автоматизированных маркет-мейкерах (AMM). Когда соотношение цен двух активов в пуле отклоняется от первоначального состояния, стоимость портфеля LP становится ниже стоимости прямого владения этими двумя активами; эта разница и называется временной потерей.
[Примечание 9] D2 Finance / CoinTelegraph анализ, цитируя комментарий D2 Finance: "Either the oracle was gamed, the off-chain signer was compromised, or the amount validation between request and completion is simply missing." То же самое источник.
[注10] CoinTelegraph сообщает, что 24-часовой объем торгов на пуле Curve USR/USDC составил 3,6 млн долларов, а цена упала до 2,5 цента в 2:38 UTC.
[Примечание 11] Данные по оценке PeckShield, взяты из CoinTelegraph по тому же источнику: «PeckShield оценила, что злоумышленнику удалось извлечь около 25 миллионов долларов в ходе атаки на фоне деспега USR».

