2025 рік став роком експлойтів смартконтрактів. Протоколи, які пройшли кілька аудитів, протоколи, які були перевірені роками, протоколи, створені командами з глибокою експертизою в галузі безпеки. Усі вони стали жертвами атак, які виявили щось неприємне: ми стаємо кращими у пошуку традиційних помилок, але все ще пропускаємо фундаментальні недоліки в тому, як протоколи розуміють економіку, математику та системний дизайн.
Цей ретроспективний огляд досліджує найцікавіші з технічної точки зору інциденти року, упорядковані за тим, чого вони навчають нас щодо безпеки смартконтрактів. Ми дослідимо, як порушення економічних інваріантів дозволили зловмисникам карбувати нескінченну кількість токенів, як помилки точності в математиці AMM перетворили крихітні помилки округлення на експлойти на мільйони доларів, і як збої системних меж виявили вразливості, які не міг виявити жоден аудит окремих компонентів.
Ці злами виявляють фундаментальні проблеми в дизайні протоколів, збої, які виходять за межі простих помилок і стосуються основних припущень щодо того, як повинні працювати DeFi системи.
Грудень 2025
Yearn Finance зазнав двох пов'язаних експлойтів у грудні 2025 року, обидва з яких були спрямовані на застарілу інфраструктуру, що залишилася в мережі після оновлення протоколу.
Перший експлойт: порушення економічного інваріанту ($9 млн) — 1 грудня
Застарілий пул стейблсвопу yETH від Yearn Finance був виснажений в одній транзакції. Зловмисник знайшов вразливість у логіці розрахунку часток, яка дозволила карбування майже нескінченної кількості токенів yETH. Близько 1 000 ETH (вартістю приблизно $3 млн) було надіслано до Tornado Cash.
Зловмисник знайшов крайній випадок у формулах стейблсвопу, де розрахунками часток можна було маніпулювати. Вразливість існувала в самій обліковій логіці. Коли протокол розраховував частки для депозитів або виведень, математикою можна було маніпулювати для створення часток з нічого.
Другий експлойт: ризик застарілого контракту ($300 тис.) — 17 грудня
Після першого експлойту були атаковані контракти V1 від Yearn. Коли протоколи оновлюються, старі контракти не зникають. Вони залишаються в мережі, потенційно зберігаючи цінність. У випадку Yearn контракти V1 все ще мали заблоковані кошти, і ці кошти стали мішенню після того, як перший експлойт привернув увагу до застарілої інфраструктури Yearn.
Чому це важливо (з точки зору аудитора та організації):
Перший експлойт показує важливий пробіл у методології аудиту. Інструменти статичного аналізу не перевіряють економічні інваріанти. Фазери тестують шляхи коду, а не економічні моделі. Процеси аудиту повинні чітко перевіряти, що облікова логіка підтримує передбачені інваріанти у всіх послідовностях операцій.
Другий експлойт підкреслює, що застарілі контракти представляють постійний ризик. Перший експлойт міг привернути увагу до застарілої інфраструктури Yearn, що призвело до другого. Протоколи потребують чітких планів для припинення роботи старих контрактів, міграції залишкової цінності та моніторингу несподіваних взаємодій.
Пом'якшення: впровадити інваріантні тести, які стверджують, що співвідношення часток до вартості зберігається у всіх операціях. Використовувати диференціальний фазінг для порівняння облікових розрахунків з еталонними реалізаціями. Мати чіткі стратегії застаріння для застарілих контрактів з постійним моніторингом.
Клас вразливості: порушення економічного інваріанту та ризик застарілого контракту.
Детальний аналіз: Yearn Finance DeFi Project Hacked for $9M | PeckShield Alert | Yearn Finance V1 Exploit
3 листопада 2025
Невеликі помилки округлення в розрахунках стабільного пулу Balancer були посилені через високочастотні пакетні свопи, що призвело до виснаження $70–128 млн у кількох мережах. Зловмисники виконали сотні або тисячі свопів, причому кожен своп посилював попередню помилку округлення, поки ці крихітні помилки не накопичилися в масове вилучення цінності.
Як це працювало:
Стабільні пули Balancer використовують складні формули для підтримки стабільності цін. Ці формули включають округлення на кількох етапах. При звичайній роботі помилки округлення невеликі. Але зловмисники знайшли спосіб структурувати пакетні свопи так, щоб постійно отримувати вигоду від напрямку округлення, витягуючи цінність через повторювані операції.
Чому це важливо (з точки зору розробника протоколу):
Математика AMM повинна бути правильною в умовах атак. Кожне рішення щодо округлення стає потенційним вектором атаки при роботі з великим капіталом і можливістю швидко виконувати багато транзакцій. Розробники повинні мислити як зловмисники: що станеться, якщо атакуючий виконає цю операцію тисячу разів?
Що пропустили аудити: стандартні процеси аудиту тестували окремі свопи, а не послідовності сотень або тисяч. Помилки округлення вимірювалися менше ніж 1 wei на своп і розглядалися як незначні. Жоден інваріант не стверджувався для N повторюваних операцій. Фазери без моделювання стану послідовностей не могли це виявити.
Пом'якшення: стверджувати інваріанти, які зберігаються для повторюваних операцій. Тестувати з розмірами пакетів для атак. Використовувати формальну верифікацію для доведення того, що межі помилок округлення залишаються прийнятними для будь-якої послідовності операцій.
Клас вразливості: математична помилка точності в формулах AMM.
Детальний аналіз: Balancer DeFi Protocol Suffers Massive Exploit | Balancer Hack Explained with Multi-Chain Details
9 липня 2025
GMX, протокол торгівлі безстроковими контрактами, який обробляє мільярди обсягу торгівлі, був експлуатований на $42 млн. Експлойт не був викликаний помилкою в основній торговій логіці. Він виник на межах між компонентами: де оракули зустрічаються з розрахунками маржі, де логіка ліквідації взаємодіє з інфраструктурою мостів.
Як це працювало:
Вразливість існувала в тому, як ці компоненти взаємодіяли, а не в жодному окремому компоненті. Коли оракули оновлюють ціни, вимоги до маржі змінюються, і логіка ліквідації реагує. Зловмисник, ймовірно, знайшов спосіб маніпулювати цими взаємодіями, можливо, синхронізуючи оновлення оракулів з розрахунками маржі. Близько $9,6 млн було переведено на Ethereum одразу після експлойту, що свідчить про ретельне планування.
Чому це важливо (з точки зору системної архітектури):
Добре перевірені окремі компоненти все ще можуть зазнати невдачі при інтеграції. Вразливість не існує в жодному окремому контракті. Вона існує в просторі між компонентами, в тому, як вони спілкуються та взаємодіють. Оскільки протоколи стають більш складними та компонованими, поверхня атаки зростає на межах компонентів.
Що пропустили аудити: традиційні процеси аудиту зазвичай зосереджуються на компонентах ізольовано. Інтеграційне тестування існує, але воно може не охоплювати сценарії атак, де зловмисник може синхронізувати операції через межі компонентів.
Пом'якшення: впровадити інтеграційні тести, які симулюють повну поведінку системи. Використовувати фреймворки симуляції атак, які можуть моделювати взаємодії між компонентами. Тестувати атаки синхронізації, де операції упорядковуються для експлуатації взаємодій компонентів.
Клас вразливості: збій системної інтеграції.
Детальний аналіз: GMX Exploit Coverage
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 $12M, Smart Contracts Paused
Ці злами виявляють вужчі, але все ще повчальні уроки про конкретні класи вразливостей.
2 вересня 2025
Bunni, протокол концентрованої ліквідності, був експлуатований через помилку точності/округлення в його системі обліку LP. Точні втрати відрізняються за джерелами (спочатку повідомлено $2,4 млн, пізніший аналіз припускає до $8,3 млн).
Як це працювало:
Зловмисник знайшов спосіб здійснювати повторювані депозити та виведення, які експлуатували округлення на його користь. Кожна операція витягувала крихітну суму, але за багато операцій ці крихітні суми накопичилися в мільйони.
Чому це важливо (з точки зору методології тестування):
Більшість тестових наборів моделюють окремі операції, а не послідовності операцій. Тест може перевірити, що один депозит правильно розраховує частки, але він не виявить помилки точності, які з'являються тільки після десятків операцій. Фазери, які не моделюють послідовності стану, пропускають ці проблеми.
Пом'якшення: використовувати встановлені математичні бібліотеки (наприклад, PRBMath, ABDKMath). Тестувати послідовності операцій, а не лише окремі операції. Розглянути використання вищої точності внутрішньо, навіть якщо зовнішні інтерфейси використовують стандартну точність.
Клас вразливості: помилка точності/округлення в обліку LP.
Детальний аналіз: Bunni V2 Exploit: $8.3M Drained
30 жовтня 2025
Garden Finance був експлуатований більш ніж на $5,5 млн у кількох мережах. Зловмисник експлуатував в одній мережі, потім використовував кросчейн мости для переміщення викрадених активів до інших мереж, обмінюючи їх через різні DEX для приховування сліду.
Чому це важливо (з точки зору моделювання загроз):
Мультимережеві розгортання створюють нові поверхні атаки. Моделі загроз повинні враховувати кросчейн вектори атак. Зловмисники можуть експлуатувати ваш протокол в одній мережі, а потім використовувати кросчейн інфраструктуру для втечі або приховування своїх слідів.
Пом'якшення: розробляти моделі загроз, які включають кросчейн вектори атак. Розуміти, як працюють мости та їхні припущення щодо безпеки. Розглянути впровадження кросчейн моніторингу та сповіщення.
Клас вразливості: шаблон мультимережевої атаки.
Детальний аналіз: Garden Finance Breach Coverage
8 вересня 2025
Nemo Protocol на Sui був експлуатований на $2,4 млн. Зловмисник переправив викрадений USDC через Circle з Arbitrum на Ethereum. Експлойт стався незважаючи на функції безпеки Move.
Чому це важливо (з точки зору інструментів):
Система типів Move запобігає певним помилкам, але вона не вирішує цілий клас вразливостей на рівні протоколу. Якщо економічна логіка вашого протоколу хибна, якщо ваш контроль доступу слабкий, якщо ваша інтеграція оракулів вразлива, система типів Move не допомагає.
Клас вразливості: помилка економічної логіки в екосистемі поза EVM.
Детальний аналіз: Nemo Protocol Exploit Details
Кілька інших зломів у 2025 році представляють прямолінійні операційні збої, а не нові технічні вразливості:
Ці інциденти слідують відомим шаблонам: скомпрометовані адміністраторські ключі, надмірні схвалення токенів та збої контролю доступу. Рішення відомі: використовувати мультипідпис для адміністраторських функцій, впроваджувати належний контроль доступу, моніторити надмірні схвалення.
Дивлячись на злами 2025 року, виникають кілька шаблонів. Економічна правильність важлива так само, як і безпека коду. Нескінченний випуск Yearn і помилки округлення Balancer показують, що протоколам потрібна формальна верифікація їхніх економічних моделей, а не лише аудити коду. Системні межі приховують складність. Експлойт GMX демонструє, що добре перевірені компоненти все ще можуть зазнати невдачі при інтеграції. Інтеграційне тестування та симуляція атак є необхідними.
Точність та округлення залишаються небезпечними. Експлойт Bunni є нагадуванням про те, що вразливості арифметики з фіксованою комою зберігаються. Тестуйте послідовності операцій, а не лише окремі операції. Кросчейн створює нові поверхні атаки. Garden Finance і Nemo Protocol показують, що мультимережеві розгортання вимагають моделей безпеки, які враховують кросчейн вектори атак. Безпека мови не усуває економічні помилки. Nemo Protocol демонструє, що типобезпечні мови запобігають певним помилкам, але не вирішують помилки економічної логіки. Застарілі контракти є постійними ризиками. Експлойти Yearn у грудні показують, що застарілі контракти залишаються вразливими, і один експлойт може привернути увагу до застарілої інфраструктури. Майте чіткі стратегії застаріння та постійний моніторинг.
Audited, Tested, and Still Broken: Smart Contract Hacks of 2025 було вперше опубліковано в Coinmonks на Medium, де люди продовжують розмову, виділяючи цю історію та відповідаючи на неї.


