2025 год стал годом эксплуатации смарт-контрактов. Протоколы, прошедшие множественные аудиты, протоколы, проверенные годами работы, протоколы, созданные командами с2025 год стал годом эксплуатации смарт-контрактов. Протоколы, прошедшие множественные аудиты, протоколы, проверенные годами работы, протоколы, созданные командами с

Проаудированы, протестированы и всё равно взломаны: хакерские атаки на смарт-контракты в 2025 году

2026/01/04 14:57

2025 год стал годом эксплойтов смарт-контрактов. Протоколы, прошедшие многочисленные аудиты, протоколы, которые тестировались годами, протоколы, созданные командами с глубокой экспертизой в области безопасности. Все они стали жертвами атак, которые выявили неприятную истину: мы становимся лучше в поиске традиционных ошибок, но всё ещё упускаем фундаментальные недостатки в том, как протоколы подходят к экономике, математике и системному дизайну.

Этот ретроспективный обзор рассматривает наиболее технически интересные инциденты года, упорядоченные по тому, чему они нас учат о безопасности смарт-контрактов. Мы изучим, как нарушения экономических инвариантов позволили атакующим создавать бесконечное количество токенов, как ошибки точности в математике AMM превратили крошечные ошибки округления в эксплойты на миллионы долларов, и как сбои системных границ выявили уязвимости, которые не мог обнаружить ни один аудит отдельных компонентов.

Выдающиеся случаи: Глубокие сбои протоколов

Эти взломы выявляют фундаментальные проблемы в дизайне протоколов, сбои, которые выходят за рамки простых ошибок и затрагивают основные предположения о том, как должны работать DeFi-системы.

Yearn Finance: Эксплойты устаревшей инфраструктуры (9,3 $ млн всего)

Декабрь 2025 года

Yearn Finance пострадал от двух связанных эксплойтов в декабре 2025 года, оба из которых были направлены на устаревшую инфраструктуру, которая осталась в сети после обновлений протокола.

Первый эксплойт: Нарушение экономического инварианта (9 $ млн) — 1 декабря

Устаревший пул yETH stableswap от Yearn Finance был опустошён в одной транзакции. Атакующий обнаружил недостаток в логике расчёта долей, который позволил создать почти бесконечное количество токенов yETH. Около 1 000 ETH (стоимостью около 3 $ млн) было отправлено в Tornado Cash.

Атакующий нашёл крайний случай в формулах stableswap, где расчёты долей могли быть манипулированы. Уязвимость существовала в самой логике учёта. Когда протокол рассчитывал доли для депозитов или выводов, математику можно было манипулировать для создания долей из ничего.

Второй эксплойт: Риск устаревших контрактов (300 $ тыс.) — 17 декабря

После первого эксплойта были атакованы контракты V1 от Yearn. Когда протоколы обновляются, старые контракты не исчезают. Они остаются в сети, потенциально храня ценность. В случае Yearn в контрактах V1 всё ещё были заблокированы средства, и эти средства стали целью после того, как первый эксплойт привлёк внимание к устаревшей инфраструктуре Yearn.

Почему это важно (с точки зрения аудитора и организации):

Первый эксплойт показывает важный пробел в методологии аудита. Инструменты статического анализа не проверяют экономические инварианты. Фаззеры тестируют пути кода, а не экономические модели. Процессы аудита должны чётко проверять, что логика учёта поддерживает намеренные инварианты во всех последовательностях операций.

Второй эксплойт подчёркивает, что устаревшие контракты представляют постоянный риск. Первый эксплойт мог привлечь внимание к устаревшей инфраструктуре Yearn, что привело ко второму. Протоколам нужны чёткие планы по выводу из эксплуатации старых контрактов, миграции оставшейся ценности и мониторингу неожиданных взаимодействий.

Смягчение: Внедрите инвариантные тесты, которые утверждают, что отношения доли к ценности сохраняются во всех операциях. Используйте дифференциальный фаззинг для сравнения расчётов учёта с эталонными реализациями. Имейте чёткие стратегии устаревания для устаревших контрактов с постоянным мониторингом.

Класс уязвимости: Нарушение экономического инварианта и риск устаревших контрактов.

Подробное погружение: Yearn Finance DeFi Project Hacked for 9 $ млн | PeckShield Alert | Yearn Finance V1 Exploit

Balancer: Эксплуатация ошибок округления (70–128 $ млн)

3 ноября 2025 года

Небольшие ошибки округления в расчётах стабильных пулов Balancer были усилены через высокочастотные пакетные свопы, что привело к оттоку 70–128 $ млн на нескольких цепочках. Атакующие выполнили сотни или тысячи свопов, причём каждый своп усиливал предыдущую ошибку округления, пока эти крошечные ошибки не накопились в массовое извлечение ценности.

Как это работало:

Стабильные пулы Balancer используют сложные формулы для поддержания стабильности цен. Эти формулы включают округление на нескольких этапах. При нормальной работе ошибки округления малы. Но атакующие нашли способ структурировать пакетные свопы, которые последовательно получали выгоду от направления округления, извлекая ценность через повторяющиеся операции.

Почему это важно (с точки зрения разработчика протокола):

Математика AMM должна быть корректной в условиях противодействия. Каждое решение об округлении становится потенциальным вектором атаки при работе с большим капиталом и возможностью быстро выполнять множество транзакций. Разработчики должны думать с позиции противника: что произойдёт, если атакующий выполнит эту операцию тысячу раз?

Что упустили аудиты: Стандартные процессы аудита тестировали отдельные свопы, а не последовательности сотен или тысяч. Ошибки округления измерялись как менее 1 wei за своп и считались незначительными. Не было утверждено ни одного инварианта для N повторяющихся операций. Фаззеры без моделирования последовательности состояний не могли обнаружить это.

Смягчение: Утверждайте инварианты, которые сохраняются при повторяющихся операциях. Тестируйте с размерами пакетов противника. Используйте формальную верификацию для доказательства того, что границы ошибок округления остаются приемлемыми при любой последовательности операций.

Класс уязвимости: Математическая ошибка точности в формулах AMM.

Подробное погружение: Balancer DeFi Protocol Suffers Massive Exploit | Balancer Hack Explained with Multi-Chain Details

GMX: Сбой системных границ (42 $ млн)

9 июля 2025 года

GMX, протокол торговли бессрочными фьючерсами, обрабатывающий миллиарды в торговом объёме, был эксплуатирован на 42 $ млн. Эксплойт произошёл не из-за ошибки в основной торговой логике. Он возник на границах между компонентами: где оракулы встречаются с расчётами маржи, где логика ликвидации взаимодействует с инфраструктурой моста.

Как это работало:

Уязвимость существовала в том, как эти компоненты взаимодействовали, а не в каком-либо отдельном компоненте. Когда оракулы обновляют цены, требования к марже изменяются, и логика ликвидации реагирует. Атакующий, вероятно, нашёл способ манипулировать этими взаимодействиями, возможно, синхронизируя обновления оракула с расчётами маржи. Около 9,6 $ млн было переведено в Ethereum сразу после эксплойта, что предполагает тщательное планирование.

Почему это важно (с точки зрения системной архитектуры):

Хорошо проаудированные отдельные компоненты всё ещё могут дать сбой при интеграции. Уязвимость не существует ни в одном отдельном контракте. Она существует в пространстве между компонентами, в том, как они общаются и взаимодействуют. По мере того как протоколы становятся более сложными и композируемыми, поверхность атаки растёт на границах компонентов.

Что упустили аудиты: Традиционные процессы аудита обычно сосредотачиваются на компонентах в изоляции. Интеграционное тестирование существует, но оно может не охватывать сценарии противодействия, где атакующий может синхронизировать операции через границы компонентов.

Смягчение: Внедрите интеграционные тесты, которые симулируют полное поведение системы. Используйте фреймворки симуляции противодействия, которые могут моделировать взаимодействия между компонентами. Тестируйте атаки по времени, где операции последовательны для эксплуатации взаимодействий компонентов.

Класс уязвимости: Сбой системной интеграции.

Подробное погружение: GMX Exploit Coverage

Cork Protocol: Обработка ликвидных деривативов стейкинга (12 $ млн)

28 мая 2025 года

Cork Protocol потерял около 3 761 wstETH (стоимостью около 12 $ млн) из-за уязвимости в том, как он обрабатывал ликвидные деривативы стейкинга. Ликвидные деривативы стейкинга, такие как stETH, wstETH и osETH, вводят скрытые изменения состояния. Обменный курс между wstETH и ETH меняется со временем по мере накопления вознаграждений за стейкинг.

Как это работало:

Эксплойт включал несоответствие между тем, как Cork Protocol моделировал накопление ценности wstETH, и тем, как это на самом деле работает. Протокол, вероятно, предполагал статическое соотношение 1:1, которое не выполняется. Атакующий мог внести wstETH, когда обменный курс благоприятен, подождать, пока он накопит ценность, а затем вывести больше, чем должен был бы.

Почему это важно (с точки зрения организации):

Это подчёркивает пробел в организационных знаниях. Многие команды разработчиков обращаются со всеми токенами ERC-20 одинаково, но ликвидные деривативы стейкинга работают по-другому. Это не просто проблема кода. Это проблема управления знаниями. Командам нужны процессы для выявления и документирования поведения, специфичного для токенов, перед интеграцией.

Смягчение: Всегда используйте функции обменного курса токена (например, wstETH.getStETHByWstETH()). Никогда не предполагайте соотношение 1:1. Учитывайте накопление ценности со временем в любых расчётах, включающих LSD.

Класс уязвимости: Непонимание механики токенов.

Подробное погружение: Cork Protocol Hacked for 12 $ млн, Смарт контракты приостановлены

Интересные крайние случаи

Эти взломы выявляют более узкие, но всё же поучительные уроки о конкретных классах уязвимостей.

Bunni: Накопление ошибок точности (2,4–8,3 $ млн)

2 сентября 2025 года

Bunni, протокол концентрированной ликвидности, был эксплуатирован через ошибку точности/округления в его системе учёта LP. Точная потеря варьируется в зависимости от источника (2,4 $ млн первоначально сообщалось, более поздний анализ предполагает до 8,3 $ млн).

Как это работало:

Атакующий нашёл способ совершать повторяющиеся депозиты и выводы, которые эксплуатировали округление в свою пользу. Каждая операция извлекала крошечную сумму, но за много операций эти крошечные суммы накопились в миллионы.

Почему это важно (с точки зрения методологии тестирования):

Большинство наборов тестов моделируют отдельные операции, а не последовательности операций. Тест может проверить, что один депозит правильно рассчитывает доли, но он не обнаружит ошибки точности, которые появляются только после десятков операций. Фаззеры, которые не моделируют последовательности состояний, упускают эти проблемы.

Смягчение: Используйте установленные математические библиотеки (например, PRBMath, ABDKMath). Тестируйте последовательности операций, а не только отдельные операции. Рассмотрите возможность использования более высокой точности внутри, даже если внешние интерфейсы используют стандартную точность.

Класс уязвимости: Ошибка точности/округления в учёте LP.

Подробное погружение: Bunni V2 Exploit: 8,3 $ млн опустошено

Garden Finance: Паттерн мультичейн-атаки (5,5 $ млн)

30 октября 2025 года

Garden Finance был эксплуатирован на 5,5 $ млн и более на нескольких цепочках. Атакующий эксплуатировал на одной цепочке, затем использовал кроссчейн-мосты для перемещения украденных активов на другие цепочки, обменивая их через различные DEX, чтобы скрыть след.

Почему это важно (с точки зрения моделирования угроз):

Мультичейн-развёртывания создают новые поверхности атак. Модели угроз должны учитывать кросс-чейн векторы атак. Атакующие могут эксплуатировать ваш протокол на одной цепочке, а затем использовать кросс-чейн инфраструктуру для побега или сокрытия следов.

Смягчение: Разработайте модели угроз, которые включают кросс-чейн векторы атак. Понимайте, как работают мосты и их предположения о безопасности. Рассмотрите возможность внедрения кросс-чейн мониторинга и оповещений.

Класс уязвимости: Паттерн мультичейн-атаки.

Подробное погружение: Garden Finance Breach Coverage

Nemo Protocol: Когда «безопасных» языков недостаточно (2,4 $ млн)

8 сентября 2025 года

Nemo Protocol на Sui был эксплуатирован на 2,4 $ млн. Атакующий перевёл украденный USDC через Circle из Arbitrum в Ethereum. Эксплойт произошёл несмотря на функции безопасности Move.

Почему это важно (с точки зрения инструментов):

Система типов Move предотвращает определённые ошибки, но она не решает целый класс уязвимостей на уровне протокола. Если экономическая логика вашего протокола ошибочна, если ваш контроль доступа слаб, если ваша интеграция оракула уязвима, система типов Move не помогает.

Класс уязвимости: Ошибка экономической логики в экосистеме не-EVM.

Подробное погружение: Nemo Protocol Exploit Details

Остальное: Операционные сбои

Несколько других взломов в 2025 году представляют собой простые операционные сбои, а не новые технические уязвимости:

  • Unleash Protocol (3,9 $ млн, 30 декабря): Несанкционированный слив, вероятно скомпрометированные разрешения
  • ArcadiaFi (2,5 $ млн, 15 июля): Злоупотребление лимитом/одобрением в цепочке Base
  • NewGoldProtocol (2 $ млн, 18 сентября): Эксплойт токена, средства направлены через Tornado Cash
  • SuperRare (730 $ тыс., 28 июля): Эксплойт NFT-платформы
  • USPD (1 $ млн, 5 декабря): Эксплойт одобрения токенов
  • 402bridge (17 $ тыс., 28 октября): Небольшой эксплойт моста

Эти инциденты следуют хорошо известным паттернам: скомпрометированные ключи администратора, чрезмерные одобрения токенов и сбои контроля доступа. Решения известны: используйте мультиподпись для функций администратора, внедрите надлежащий контроль доступа, отслеживайте чрезмерные одобрения.

Резюме

Глядя на взломы 2025 года, появляется несколько паттернов. Экономическая корректность важна так же, как и безопасность кода. Бесконечный минт Yearn и ошибки округления Balancer показывают, что протоколам нужна формальная верификация их экономических моделей, а не только аудиты кода. Системные границы скрывают сложность. Эксплойт GMX демонстрирует, что хорошо проаудированные компоненты всё ещё могут дать сбой при интеграции. Интеграционное тестирование и симуляция противодействия необходимы.

Точность и округление остаются опасными. Эксплойт Bunni — это напоминание о том, что уязвимости арифметики с фиксированной точкой сохраняются. Тестируйте последовательности операций, а не только отдельные операции. Кросс-чейн создаёт новые поверхности атак. Garden Finance и Nemo Protocol показывают, что мультичейн-развёртывания требуют моделей безопасности, которые учитывают кросс-чейн векторы атак. Безопасность языка не устраняет экономические ошибки. Nemo Protocol демонстрирует, что типобезопасные языки предотвращают определённые ошибки, но не решают ошибки экономической логики. Устаревшие контракты — это постоянные риски. Декабрьские эксплойты Yearn показывают, что устаревшие контракты остаются уязвимыми, и один эксплойт может привлечь внимание к устаревшей инфраструктуре. Имейте чёткие стратегии устаревания и постоянный мониторинг.

Понравилась эта статья? Нажмите «Подписаться», чтобы быть в курсе.


Audited, Tested, and Still Broken: Smart Contract Hacks of 2025 was originally published in Coinmonks on Medium, where people are continuing the conversation by highlighting and responding to this story.

Возможности рынка
Логотип Smart Blockchain
Smart Blockchain Курс (SMART)
$0.005105
$0.005105$0.005105
-2.48%
USD
График цены Smart Blockchain (SMART) в реальном времени
Отказ от ответственности: Статьи, размещенные на этом веб-сайте, взяты из общедоступных источников и предоставляются исключительно в информационных целях. Они не обязательно отражают точку зрения MEXC. Все права принадлежат первоисточникам. Если вы считаете, что какой-либо контент нарушает права третьих лиц, пожалуйста, обратитесь по адресу [email protected] для его удаления. MEXC не дает никаких гарантий в отношении точности, полноты или своевременности контента и не несет ответственности за любые действия, предпринятые на основе предоставленной информации. Контент не является финансовой, юридической или иной профессиональной консультацией и не должен рассматриваться как рекомендация или одобрение со стороны MEXC.

Вам также может быть интересно