
Harmony планирует откат сети после форджинга ONE на $3 млрд
Атакующий подделал 3,01 триллиона токенов ONE в шардированной сети Harmony, найдя способ повторно провести одну и ту же действительную квитанцию между шардами, — и теперь команда Harmony планирует откатить сеть к моменту до атаки, а не пытаться устранять последствия постфактум.
Уязвимость крылась в том, как Harmony проверяет квитанции, перемещающиеся между двумя её шардами — Shard 0 и Shard 1: одну и ту же действительную квитанцию можно было обработать более одного раза, из-за чего токены эмитировались на одной стороне без соответствующего списания на другой. С помощью шести транзакций на четыре кошелька атакующий подделал таким образом 3,01 триллиона ONE. Один только кошелёк получил 2,4 триллиона — почти $3 млрд по докризисным ценам, хотя курс ONE обвалился, как только стал понятен масштаб подделки, так что реальная стоимость, которую можно было бы извлечь, упала почти мгновенно. Независимый исследователь впервые заметил проблему 12 августа, обнаружив эмиссию около 4 миллиардов токенов через пустые блоки — лишь малую часть итоговой суммы; Harmony закрыла саму уязвимость в тот же день, а полная реконструкция масштаба атаки появилась только позже.
По словам Harmony, команда рассматривала сжигание подделанных токенов, внесение кошельков атакующего в чёрный список и полную миграцию токена, прежде чем остановиться на полном откате обоих затронутых шардов к блоку непосредственно перед подделанной эмиссией — с отменой всех блоков и транзакций после него, поддельных или нет.
“Из всех изученных вариантов фиксированное окно отката — самый честный и безопасный. Оно применяет одно правило ко всем, убирает подделанное состояние и несёт наименьший риск новой атаки или сбоя консенсуса.”
— команда Harmony
Откат — инструмент по определению грубый: он не различает поддельные транзакции и обычные, поэтому любой, кто отправлял, получал, торговал или переводил через мост ONE на любом из шардов в затронутом окне времени, будет отброшен назад вместе с атакующим — именно этот компромисс Harmony и называет наименее плохим из доступных вариантов. Баги эмиссии, спрятанные в логике верификации, продолжают всплывать в сетях со сложным внутренним учётом: Zcash закрыл похожий по природе баг в пуле Orchard всего несколько недель назад — он оставался незамеченным около четырёх лет, прежде чем его нашли. Межшардовый обмен сообщениями особенно уязвим: каждый лишний переход между цепями или шардами одной цепи — ещё одно место, где квитанцию можно повторно провести, задвоить или довериться ей там, где не следовало, а баг именно в этом узле способен эмитировать ценность напрямую, а не просто вывести уже заблокированные где-то средства.
У откатов более тяжёлая история, чем у большинства других способов реагирования в этой индустрии: хардфорк Ethereum 2016 года после взлома DAO остаётся главным прецедентом — тогда сообщество раскололось настолько сильно, что Ethereum Classic существует и сегодня как цепь, отказавшаяся откатываться. Версия Harmony уже в одном важном смысле: она затрагивает только два шарда, где произошла подделанная эмиссия, а не всю сеть целиком, — но в основе лежит то же самое противоречие, с которым сталкивается любой откат: валидаторам и операторам нод всё равно нужно реально принять новую каноническую цепь, чтобы план сработал, а любой, кто успел совершить сделку, перевод или интеграцию на отброшенных блоках, теряет эту активность — независимо от того, имел ли он вообще отношение к эксплойту.
Это не финансовый совет — только информация к размышлению.

Комментарии (0)
Пока нет комментариев — будь первым!
Похожие материалы
ПопулярноеТоп 7
Крипторынок теряет 4-5% за день: что говорят объёмы и трейдеры
71Рынок





