DeFi. Деривативы. Взломы perp-DEXs: механика, экономика и уязвимости
Введение
Децентрализованные биржи для perps в DeFi пережили ряд громких взломов. Ниже я рассмотрел несколько заметных подобных инцидентов (включая GMX, dYdX, Stryke и др.), с описанием механики атаки, экономических последствий и ссылками на разборы и постмортемы. В заключении - сделал сводка основных уязвимостей, которые эксплуатировались злоумышленниками.
Взлом GMX V1: реэнтранси-атака. Ущерб ок. $42 млн. Возврат произведён
Механика атаки: 09 июля 2025 года на GMX (версия V1) была осуществлена реэнтранси-атака, приведшая к краже ~$42 млн из пула ликвидности GLP. Уязвимость скрывалась в функции исполнения ордеров на уменьшение позиции (executeDecreaseOrder).
Злоумышленник вызвал эту функцию через вредоносный смарт-контракт, сумев выполнить повторный вход (это и есть reentrancy) в процессе расчёта средней цены позиции.
В результате атаки контракт обошёл обновление средней цены шорта BTC и искусственно занизил её – глобальная средняя цена для BTC на платформе была снижена с примерно $109,515 до ок. $1,913. Это привело к неправильному расчёту стоимости активов под управлением (AUM): цена токена ликвидности GLP, основанная на PnL трейдеров, отклонилась от реальной и взлетела с ~$1.45 до более чем $27.
Экономика взлома: атакующий воспользовался искаженной ценой GLP: взяв флеш-кредит, он купил большой объём GLP по заниженной цене ~$1.45, после чего, благодаря манипуляции, цена GLP взлетела до >$27.
Злоумышленник мгновенно погасил позиции и вывел ликвидность, обменяв раздутые GLP на реальные активы по завышенному курсу.
Всего было выведено ~$42 млн, однако через двое суток хакер вернул порядка $40 млн, оставив себе $5 млн в качестве баунти (фактически выступив как белый хакер).
Команда GMX подтвердила уязвимость и заморозила операции GMX V1, предложив 10% вознаграждения за возврат средств. После инцидента все средства пользователей были восстановлены, а атака стала примером успешного реэнтранси-эксплойта в DeFi, несмотря на аудиты.
Ссылка: quillaudits.com/blog/hack-analysis/how-gmx-lost-42m
Дополнительно. Эксплойт с манипуляцией цен на GMX. Атака на проскальзывания ($565 тыс.)
Механика атаки: 18 сентября 2022 года трейдер (известный как Авраам Айзенберг) воспользовался особенностью GMX, предлагающей нулевое проскальзывание для крупных ордеров, и совершил ценовую манипуляцию на паре AVAX/USD.
GMX использует ценовые оракулы, поэтому большие сделки не двигают цену на самой платформе.
Злоумышленник (?) одновременно открыл на GMX две крупные позиции по AVAX – лонг и шорт – по фиксированной цене оракула (без влияния на цену). Затем он искусственно взвинтил цену AVAX на внешних рынках (на биржах AscendEX, FTX и самой Mango Markets) путём покупки ~$4 млн AVAX, повысив цену, которую сообщал оракул, примерно на 2300%.
После роста цены злоумышленник последовательно закрыл позиции на GMX: выгодно закрыл лонг по завышенной цене и открыл/закрыл шорт, извлекая прибыль из колебаний.
Экономика взлома: благодаря пяти циклам переключения между лонгом и шортом, трейдер создал на ценовом графике AVAX «синусоидальный» паттерн в течение ~1 часа.
На каждом цикле удавалось получать ~$100–150 тыс. прибыли; суммарно злоумышленник вывел около $565 тыс. прибыли за счёт GLP-пула ликвидности GMX.
Потери фактически понесли провайдеры ликвидности (держатели GLP), так как их ликвидность служит контрагентом в сделках: когда трейдер получил прибыль, эквивалентный убыток распределился на пул GLP.
После выявления эксплойта команда GMX ввела ограничения на максимальное плечо и открытую позицию по AVAX (не более $2 млн для лонгов и $1 млн для шортов), чтобы предотвратить повторение атаки.
Этот случай показал, что даже без багов в коде логика протокола (отсутствие проскальзывания при относительно медленном оракуле) может стать мишенью экономической атаки.
- neptunemutual.com/blog/decoding-gmxs-price-manipulation-exploit
- cointelegraph.com/news/decentralized-exchange-gmx-suffers-565k-price-manipulation-exploit
Атака на dYdX (2023). Манипуляция рынком YFI ($9M)
Механика атаки: в середине ноября 2023 года на dYdX произошёл инцидент, который команда назвала целенаправленной атакой на биржу.
Злоумышленник воспользовался рынком малоликвидного токена Yearn.Finance (YFI) на dYdX. Схема заключалась в манипулировании ценой YFI на внешних рынках и одновременном открытии огромных позиций на dYdX.
В результате стремительного обвала цены YFI (ок. 43% за короткое время после длительного роста) множество крупных лонг-позиций в YFI были ликвидированы на dYdX.
Ликвидация ~$38 млн позиций породила дефицит, который был покрыт страховым фондом биржи.
Экономика взлома: dYdX не потеряла средства пользователей – убыток понёс страховой фонд (Insurance Fund), из которого было выплачено ~$9 млн для покрытия “дыр” после экстремальных ликвидаций.
Таким образом, прибыль атакующего проявилась косвенно: он, вероятно, заработал на шортах YFI и манипуляциях вне dYdX, в то время как бирже пришлось покрыть убытки трейдеров.
Генеральный директор dYdX Антонио Джулиано подтвердил, что это была скоординированная атака с манипуляцией рынка YFI, нацеленная именно на уязвимости системы рисков dYdX.
Атака выявила недостатки в механизмах управления рисками биржи – в частности, неспособность оперативно обнаружить аномальные колебания малоликвидного актива.
После инцидента в dYdX повысили требования к марже и пересмотрели параметры рисков для избежания подобных ситуаций.
- web3isgoinggreat.com/?id=dydx-insurance-fund-attack
- cointelegraph.com/news/founder-dydx-targeted-attack-insurance-use
Эксплойты протокола bZx (2020). Флэш-кредиты и ценовые оракулы ($1M)
Механика атак: одними из первых крупных DeFi-взломов стали две атаки на протокол bZx (Fulcrum) в феврале 2020 года – “они продемонстрировали силу флеш-кредитов и уязвимость ценовых оракулов”.
Первая атака (14 февраля 2020): злоумышленник взял флеш-кредит 10,000 ETH через dYdX (без залога, на время одной транзакции то есть). Половину средств (~5,000 ETH) он использовал на bZx для открытия шорт-позиции 5× по паре ETH/BTC. Ордер был обработан через агрегатор Kyber, который в итоге исполнил его на Uniswap.
Огромный объём продажи ETH за wBTC на Uniswap вызвал проскальзывание (slippage) и раздул цену wBTC в 3 раза на этой площадке.
Затем злоумышленник другую часть флеш-кредита (ещё 5,000 ETH) заложил в Compound и занял там wBTC. Полученные wBTC он сразу же продал по искусственно завышенному курсу на Uniswap (где цена wBTC была в 3 раза выше нормальной).
В конце транзакции из прибыли атакующий вернул флеш-кредит dYdX и вышел с чистым прибылью. Эта комплексная сделка принесла 1271 ETH прибыли ($355 тыс.) и оставила в протоколе bZx невозвратный заём (долг).
Ключевая уязвимость – атака смогла обойти встроенные защиты bZx против проскальзывания: была найдена лазейка, позволившая совершить сделку с экстремальным влиянием на цену.
Вторая атака (18 февраля 2020): после возобновления работы bZx хакер применил схожую тактику, но без сложных обходов логики. Он вновь использовал флеш-кредит, чтобы манипулировать ценовым оракулом: на этот раз разогнал цену стабильно-койна Synthetix USD (sUSD) на Uniswap с $1 до $2. Затем по завышенной цене внёс sUSD в bZx в качестве залога и занял под него ETH сверх положенного лимита.
Полученные ETH ($630 тыс. эквивалента) он вывел, не собираясь возвращать заём.
Эта атака была чисто ценовой (oracle attack): bZx доверял цену sUSD с Uniswap, и злоумышленник временно удвоил её, чтобы взять необеспеченный кредит. Прибыль составила 2378 ETH ($630 тыс.).
Экономика взломов: в обеих атаках злоумышленник использовал огромный мгновенный капитал (flash loan) для дисбаланса цены на DEX, извлекая прибыль за счет системы залогов bZx.
Потери протокола составили сумму невозвращенных займов (~$1 млн совокупно). Эти случаи стали поворотными для DeFi: они показали, как композируемость протоколов (dYdX → bZx → Uniswap → Compound и др.) может быть использована во вред.
После атак команда bZx временно остановила протокол и устранила уязвимости, однако репутационный ущерб был значителен. Атаки bZx фактически открыли эру флеш-кредит эксплойтов, особенно связанных с манипуляцией оракулов. Как отмечали аналитики, этот новый класс атак быстро породил череду подражателей.
Ссылка: coinbase.com/ru/learn/market-updates/around-the-block-issue-3
Взлом Mango Markets (2022). Манипуляция ценой внутреннего токена ($116M)
Механика атаки: 11 октября 2022 года на Solana-платформе Mango Markets произошёл один из крупнейших экономических эксплойтов. Злоумышленник (Ави Эйзенберг) взял крупные кросс-маржин позиции на Mango и искусственно разогнал цену токена MNGO – нативного токена платформы, используемого как залог.
Атака проводилась с двух сторон: кошелек A выставил огромный ордер на покупку 483 млн контрактов MNGO-PERP (~в 1000 раз больше оборота) по цене $0.038, а связанный кошелек B этот ордер полностью поглотил.
После этого через несколько минут атакующий скупил MNGO на спотовом рынке Mango, а также на биржах AscendEX и FTX, взвинтив цену MNGO с примерно $0.03 до ок. $0.91 (+2394%).
Оракулы Mango (ориентированные на среднерыночную цену) отразили этот всплеск. В итоге ценность залога на аккаунте злоумышленника (MNGO) многократно выросла.
Экономика взлома: благодаря завышенному залогу атакующий смог взять в Mango Markets крупнейший заём всех доступных средств: примерно $116 млн в различных крипто-активах (BTC, SOL, USDC и др.).
Полученные активы он тут же вывел, оставив платформу с невозвратным долгом в $116 млн (так называемый «протокол задолжал сам себе»).
Фактически Mango осталась с отрицательным балансом казны – около $116.7 млн невосполнимого долга. После инцидента рынок Mango был остановлен, а TVL Solana DeFi упал на ~23% (ниже $1 млрд впервые с 2021).
Сам злоумышленник цинично заявлял, что действовал “в рамках открытого рынка”, хотя сообщество расценило это как атаку. Впоследствии он попытался договориться с DAO Mango о возврате части средств при условии невозбуждения против него дела.
Некоторую сумму он действительно вернул в обмен на обещание вознаграждения, однако позже был арестован по обвинениям в мошенничестве. Инцидент Mango наглядно показал опасность использования низколиквидных токенов в качестве залога и отсутствие страхового фонда: из-за модели с нулевыми комиссиями у Mango не было фонда для покрытия такого рода убытков.
- soliduslabs.com/post/mango-hack
- immunebytes.com/blog/mango-markets-exploit-oct-11-2022-detailed-analysis
Взлом Orange Finance и Stryke (2025). Компрометация админ-ключей ($840 тыс.)
Механика атаки: в начале января 2025 г. произошла серия связанных взломов на Arbitrum, затронувших Orange Finance и её партнёрский протокол Stryke. Orange Finance – протокол управления ликвидностью, интегрированный со Stryke.
Злоумышленник сумел скомпрометировать мультисиг-админ Orange Finance (вероятно, через уязвимость в управлении ключами) и получил полный контроль над смарт-контрактами протокола.
Это позволило ему перенаправить средства из хранилищ ликвидности: были быстро опустошены несколько волн ликвидности с токенами и стейблкоинами. Примерно 50% TVL Orange было выведено (по оценке ~$840k) – ворованные WETH и стейблкоины атакующий мгновенно конвертировал в ETH и вывел.
Поскольку Stryke Protocol имел совместные хранилища (vaults) с Orange, атака затронула и Stryke: злоумышленник выкачал ликвидность Stryke-хранилищ, особенно на рынке предоставления ликвидности.
Основные функциональные смарт-контракты Stryke (биржевой функционал) при этом напрямую не пострадали – атака шла через интеграцию с Orange. Тем не менее, Stryke приостановил всю деятельность на Arbitrum на время расследования. Команда заявила, что ключевые функции Stryke не скомпрометированы, однако доступ к продуктам временно остановлен в целях безопасности.
Экономика взлома: потери Orange Finance составили примерно $840k (в эквиваленте ETH). Stryke Protocol, по данным Cryptopolitan, имел около $2.17 млн ликвидности до атаки и избежал прямого вывода средств, кроме тех, что находились в пострадавших хранилищах Orange.
Однако вынужденная остановка протокола нанесла ущерб репутации. Главной причиной инцидента стала компрометация привилегированных ключей: похоже, злоумышленник нашел способ получить доступ к административному кошельку Orange и переподписать контракты. Это уязвимость не в коде DeFi-приложения, а в операционной безопасности проекта.
Случай подчёркивает, как мне кажется, что даже без багов в коде человеческий фактор и защита ключей остаются критически важными.
- cryptopolitan.com/orange-finance-compromised-contract-arbitrum
- mitrade.com/insights/news/live-news/article-3-562223-20250109
Эксплойт Level Finance (2023). Баг реферальной программы ($1 млн)
Механика атаки: Level Finance – DEX для торговли с плечом на BNB Chain – 1 мая 2023 подверглась эксплойту, нацеленному на ее реферальную программу. Уязвимость крылась в смарт-контракте LevelReferralControllerV2: баг позволял многократно получить реферальное вознаграждение за один и тот же период (epoch).
Злоумышленник обнаружил возможность многократного вызова функции claimMultiple в пределах одной эпохи, тогда как логика предполагала единовременное начисление.
Экономика взлома: пользуясь багом, атакующий за короткое время нафармил 214 000 токенов LVL (нативный токен биржи) в виде фиктивных реферальных наград. Эти токены (эквивалент >$1 млн) он сразу же обменял: через PancakeS wap или др. пути свалил 214k LVL за 3,345 BNB ($1.01 млн), выведя прибыль.
Быстрый продажа обрушила цену LVL-токена (зафиксировано падение >50%, судя по данным рынка). Команда Level Finance оперативно объявила об эксплойте: уязвимый реферальный контракт был приостановлен и запланирован к обновлению в течение 12 часов. Разработчики подчеркнули, что пул ликвидности и казна DAO не затронуты (атака изолировалась только реферальным контрактом).
Таким образом, прямой материальный ущерб понесли держатели LVL (через просадку курса) и фонд вознаграждений, но средства LP не пострадали.
Ссылка: cointelegraph.com/news/level-finance-confirms-1m-exploit-due-to-buggy-smart-contract
Взлом KiloEx (2025). Манипуляция оракулом через ошибку доступа ($7.4 млн)
Механика атаки: KiloEx – мультичейн DEX для торговли perps (на BNB, Base, opBNB и др.) – 14 апреля 2025 лишилась около $7.4 млн из своих пулов ликвидности в результате сложной атаки на систему ценообразования.
Уязвимость заключалась в отсутствии должных проверок валидности входных данных в так называемом MinimalForwarder контракте (фронтенд-прокси).
Злоумышленник сгенерировал фальшивую подпись и указал контролируемый им адрес в поле from для вызова функций, связанных с обновлением цен. Это позволило ему подделать данные о цене ETH на разных этапах: сначала хакер установил цену ETH = $100 и открыл на платформе длинную позицию (лонг) с большим плечом, потом сменил цену ETH на $10,000 и закрыл лонг с огромной прибылью. Проще говоря, отсутствие проверки подписи дало возможность напрямую манипулировать ценовым оракулом/внутренней ценой актива.
Экономика взлома: атакующий последовательно повторил эксплойт на нескольких сетях, где развернут KiloEx, выведя: ~$3.4 млн с Base, ~$2.8 млн с opBNB, остальное с BSC и Manta. В общей сложности ущерб составил $7.4 млн, которые пришлись на потери пула ликвидности (т.е. средств поставщиков ликвидности).
Токен KILO, по сообщениям, обрушился в цене, однако позже частично восстановился после новости о возвращении средств (команде удалось восстановить украденные средства совместно с белыми хакерами, выплатив им 10% баунти).
Главный изъян, приведший к атаке, – недостаток валидации в критически важном контракте.
По сути, проверка подписи или адреса отправителя могла предотвратить подмену данных о цене. Случай KiloEx демонстрирует комбинацию атаки на оракул через ошибку доступа и использование плеча: злоумышленник разогнал небольшой залог до миллионов за счет многократного увеличения цены актива внутри протокола.
- quillaudits.medium.com/kiloex-exploit-breakdown-7-4m-drained-across-chains-ff6e2293d5cb
- coindesk.com/tech/2025/04/18/kiloexs-sophisticated-hack-shows-defi-risks-but-this-time-recovery-was-swift
Взлом Loopscale (2025). Ошибка бизнес-логики оракула ($5.8 млн). Средства возвращены
Механика атаки: в конце апреля 2025 был взломан протокол Loopscale – платформа на Solana, работавшая с кредитами и стейблкоинами. Атака произошла из-за ошибки в оценке стоимости токенов RateX PT внутри смарт-контрактов Loopscale. Проще говоря, протокол неверно рассчитывал цену определенных токенов (PT-токенов, вероятно связанных с процентными ставками), что позволило злоумышленнику завысить оценку своего залога.
Обнаружив эту дыру, атакующий взял не-до-обеспеченный заем: использовал актив с завышенной протоколом ценностью как залог, чтобы вывести средств больше, чем полагалось. По сути, это пример эксплойта бизнес-логики – когда внутренние формулы протокола дают неточный результат, которым можно воспользоваться.
Экономика взлома: атакующий сумел вывести около 5.7 млн USDC и 1200 SOL из пулов Loopscale (примерно $5.8 млн совокупно).
Это составляло ~12% всех средств, депонированных в протоколе (который запустился лишь за пару недель до инцидента). Однако примечательно, что спустя короткое время хакер согласился на переговоры: команда предложила ему баунти 10% и иммунитет, если он вернет средства. Злоумышленник согласился и вернул все украденное, оставив себе ~$580k как вознаграждение.
Таким образом, пользователи Loopscale в итоге не понесли потерь. Этот случай выделяется тем, что атака эксплуатировала логическую ошибку в коде (ошибочную бизнес-логику оракула), а не внешние факторы вроде кражи ключей. В ответ Loopscale приостановил выдачу новых займов и вывода средств, оперативно устранил баг в коде и провел аудит модели оценки.
Ссылка: halborn.com/blog/post/explained-the-loopscale-hack-april-2025
Эксплойт ApolloX (2022). Взлом контракта наград ($1.5 млн). Падение токена >50%
Механика атаки: ApolloX – децентрализованная биржа деривативов на BNB Chain – 8 июня 2022 сообщила об эксплойте, связанном с ее смарт-контрактом торговых наград.
Атакующий обнаружил уязвимость, позволявшую вывести чрезмерное количество нативных токенов APX из контракта, предназначенного для распределения вознаграждений трейдерам.
По данным CertiK, ошибка заключалась в недостаточной проверке условий при выводе наград, что дало злоумышленнику возможность множественно вызвать функцию вывода и “напечатать” себе токены APX сверх лимита. В результате хакер смог вывести ~40 млн токенов APX из пула наград.
Экономика взлома: выведенные 40 млн APX были сразу же проданы/обменяны, что принесло злоумышленнику около $1.5 млн прибыли. Массовый выброс APX на рынок обрушил курс токена более чем на 50%. Цена APX рухнула, нанося ущерб держателям.
Команда ApolloX объявила, что направит средства из казны на выкуп токенов APX с рынка в попытке восстановить цену – на это было выделено ~$600k вскоре после атаки.
Протокол также устранил уязвимость в контракте наград и временно приостановил программу вознаграждений, чтобы предотвратить дальнейшие злоупотребления. В данном случае пострадала экономика платформы через инфляцию токена: хотя прямой ущерб смарт-контрактам составил $1.5 млн, последующее падение цены токена сказалось на капитализации проекта и пользователях.
- web3isgoinggreat.com/?id=apollox-exchange-exploited-for-1-5-million
- certik.com/resources/blog/apollo-x-exploit-analysis
Эксплойт Alpha Homora v2 (2021). Сложная атака на кредитный протокол ($37 млн)
Механика атаки: Alpha Homora v2 – протокол для маржинальной yield-ферминга на Ethereum – 13 февраля 2021 подвергся одной из самых сложных на тот момент атак.
Злоумышленник воспользовался композируемостью Alpha с кредитным протоколом Cream Iron Bank. В Alpha Homora v2 существовала возможность запуска произвольных «спеллов» – вспомогательных контрактов для расширенной логики.
Также атакующий разработал собственный вредоносный спелл и через него последовательно провел многоступенчатую операцию. Сначала он нашел и эксплуатировал небольшой дефект округления при расчете долга в HomoraBank: брал заем в sUSD и возвращал на ничтожную долю меньше, что создавало дисбаланс учета (долг протокола незначительно больше уплаченного).
Через вызов внутренней функции resolveReserve этот дисбаланс был превращен в гигантский «дырявый» заем (резервный долг) почти без коллатерали. Затем, используя этот трюк, атакующий многократно увеличивал свою долю долга, оставаясь при этом с точки зрения протокола почти бездолжником (за счет особенностей расчета share долга). Параллельно он привлек флеш-кредиты (например, 10 млн USDC из Aave) и через серию транзакций гонял средства по кругу: одалживал USDC → конвертировал в sUSD на Curve через Alpha → размещал sUSD на Iron Bank → получал ценные токены залога (cySUSD). Повторяя цикл, он накопил огромную сумму cySUSD на Cream Iron Bank.
После подготовки «позиции» атакующий совершил финальный удар: использовав весь накопленный cySUSD как залог на Iron Bank, он взял крупнейшие кредиты во всех доступных активах: ~13,200 WETH, ~$10 млн в стейблкоинах USDC, USDT, DAI. Из них стейблкоины он перегнал на Aave и Curve, а 13k ETH вывел на свои адреса (частично спрятав через Tornado Cash). Суммарно атака принесла около $37.5 млн (в различных активах).
Экономика взлома: потери понес в первую очередь протокол Iron Bank (Cream), выдавший невозвращенные кредиты, а также Alpha Homora, чей контракт допустил создание «дыры» в резервах. Возник конфликт между Alpha и Cream по поводу того, кто должен покрывать «плохой долг» в $37 млн.
В итоге был достигнут компромисс, что часть долга будет покрыта за счет будущих доходов Alpha (выпуском токенов и сбором комиссий), а Iron Bank разблокировал средства пользователей.
Технически, эксплойт обнажил несколько уязвимостей: возможность использования кастомных спеллов, ошибка округления в коде займа и слишком доверительная интеграция с партнерским протоколом без дополнительных ограничений. После атаки эти лазейки были закрыты: запретили сторонние спеллы, исправили математику и ограничили набор активов для взаимодействия. Случай Alpha Homora v2 стал уроком по комбинированным атакам: он объединял и флеш-кредиты, и уязвимости бизнеса-логики, и межпротокольную сложность – все ради максимизации вывода средств.
- slowmist.medium.com/slowmist-an-analysis-of-the-attack-on-alpha-finance-cream-exploit-723c536c36b8
- halborn.com/blog/post/explained-the-alpha-homora-defi-hack-feb-2021
Основные эксплуатируемые уязвимости в perp-DEXs
Разнообразие взломов показывает, что злоумышленники используют как классические баги смарт-контрактов, так и тонкие экономические просчеты. Ниже суммированы основные типы уязвимостей, на которых были построены атаки:
Манипуляция ценовыми оракулами
Самый распространенный в DeFi-взломах вектор – искусственное и кратковременное искажение цены актива, которую протокол принимает за рыночную. Примеры: атаки на bZx (раздув цены wBTC и sUSD), эксплойты Mango Markets и Loopscale (памп собственного токена или неверная оценка залогового актива), взлом KiloEx (подмена цены через уязвимый форвардер), ранний эксплойт GMX с нулевым проскальзыванием (манипуляция ценой AVAX на сторонних рынках). Манипуляция ценой позволяет брать займы под завышенный залог или выгодно закрывать позиции, фактически обирая пул ликвидности или других трейдеров.
- web.archive.org/web/20221031130815/https://hub.forklog.com/manipulirovanie-orakulom
- web.archive.org/web/20250113060717/https://hub.forklog.com/itak-vy-hotite-ispolzovat-tsenovoj-orakul
Атаки с повторным входом (Reentrancy)
Классическая уязвимость смарт-контрактов, когда злоумышленник в середине выполнения функции вызывает ее повторно или вызывает связанную функцию до завершения расчётов, чтобы нарушить логику. В контексте перпетуальных бирж яркий пример – реэнтранси-атака на GMX V1: через повторный вход злоумышленник обошёл обновление средней цены позиции, что позволило ему исказить расчеты PnL и обокрасть пул. Реэнтранси-уязвимости исторически были причиной многих взломов (DAO 2016, etc.), и в 2025 показали, что всё ещё могут встречаться даже в крупных протоколах.
Компрометация привилегированных ключей и админ-прав
Некоторые атаки не связаны с багами кода, а происходят из-за взлома или мошенничества вокруг ключей доступа. В случае Orange Finance/Stryke хакер овладел админскими ключами и переподписал контракты, украв средства из хранилищ.
Подобным образом ранее взламывали проекты через кражу ключей разработчиков (например, инцидент bZx осенью 2021, когда фишинг-разработчика привёл к краже ~$55 млн). Такие атаки указывают на важность мультисиг-настроек, аппаратных модулей безопасности и оперативного реагирования на компрометацию (пауз контрактов и пр.).
Ошибки бизнес-логики и недостатки проверки условий
Некоторые взломы произошли из-за неправильно реализованных правил протокола: Level Finance – баг, позволявший многократное получение наград в реферальной системе; ApolloX – недостаточная проверка при выдаче торговых вознаграждений, позволившая вывести чрезмерное количество токенов; Alpha Homora – разрешение на выполнение кастомных модулей (спеллов) без достаточной изоляции и проверок, плюс тонкий баг округления.
Эти уязвимости не связаны с внешними факторами, а являются ошибками самой логики смарт-контрактов, которые прошли аудит. Зачастую их сложнее обнаружить, так как формально код может быть корректен синтаксически и даже проходить базовые тесты – однако логика не учитывает какие-то граничные случаи или комбинации действий.
Флеш-займы как инструмент атаки
Во многих изложенных случаях злоумышленники прибегали к flash loans – мгновенным невозвратным кредитам, позволяющим получить огромный капитал на один блок. Флеш-кредиты сами по себе не уязвимость, но они усиливают другие атаки.
Например, в эксплойтах bZx флеш-кредит из dYdX предоставил миллионные суммы для манипуляции ценами. В случае Alpha Homora флеш-заем с Aave дал стартовый капитал для многократного цикла заимствований. Flash loans делают атаки доступными даже без собственного капитала, что значительно расширяет круг потенциальных злоумышленников.
После серии атак 2020–2022 гг. многие проекты стали внимательнее относиться к зависимости от цен на DEX и ввели ограничения на размер заемных позиций, стараясь учитывать возможность флеш-колебаний.
Выводы
Процитирую: “Несмотря на развитие методов формальной верификации и частое проведение аудитов, взломы DeFi-протоколов продолжаются. Как отмечают эксперты, злоумышленники все чаще находят экономические и протокольные слабости даже при безупречном коде. Для повышения безопасности перпетуальных бирж критически важно внедрять многоуровневые меры: ограничения на размеры позиций и мгновенные займы, мониторинг аномалий в ценах (например, системы алертов на резкие движения оракула), использование устойчивых ценовых оракулов (TWAP, кросс-маркет источники), многофакторную защиту админ-доступа, а также создание страховых фондов на случай непредвиденных потерь”.
Что до меня, то каждый из описанных случаев предоставил уроки, и постепенно лучшие практики безопасности пробую распространить, делая DeFi-сектор что более устойчивым к новым атакам, а подписчиков - всё более грамотными.
Но главное, зачем написал эту сводку: чтобы каждый из вас был готов к подобным рискам при взаимодействии с perp-DEXs.