Сеть TAC остановлена на блоке 24 671 475 уже более 10 дней после того, как эксплойт опустошил пул стейкинга. Сеть представляет собой совместимый с EVM Layer 1, подключенный к экосистеме TON. Запрос RPC от CryptoSlate в 2:33 UTC по-прежнему показывал последний блок от 22 августа, что означает, что нормальное производство блоков не возобновилось.
В отчете о происшествии от 1 сентября указано, что из пула было выведено 2 985 651 403,40 TAC, что составляет 28,6% от общего предложения. TAC заявила, что одна транзакция обнулила пул стейкинга, не изменив общего предложения токенов, оставив записи о делегировании в цепочке без токенов, которые их поддерживали.
В рекомендациях по безопасности Cosmos EVM путь атаки был связан с несоответствием между двумя записями баланса. EVM StateDB отслеживал только доступные для траты токены учетной записи, в то время как реестр Cosmos SDK также отслеживал заблокированные вестинговые токены, которые могли быть делегированы. Делегирование суммы, превышающей доступную для траты, привело к непроверенному вычитанию, которое обернулось огромным числом, близким к 2^256.
Cosmos Labs заявила, что вторая операция переполнения позволила злоумышленнику обнулить учетную запись жертвы, сохранив при этом ее законные токены. TAC определила в качестве учетной записи жертвы контролируемый протоколом пул стейкинга в своей сети. В рекомендациях уязвимость была классифицирована как критическая, и было указано, что версии Cosmos EVM ниже 0.6.2, а также версии 0.7.0 и 0.7.1, были уязвимы.
Информация об уязвимости появилась до атаки. В отчете Cosmos Labs говорится, что ошибка попала в программу вознаграждений 25 апреля, была исправлена в основной ветке 15 мая и обратнопортирована в релизы 19 августа. Форк Push Chain публично описал путь атаки 20 августа. TAC отдельно заявила, что отправила мейнтейнеру анализ двух связанных дефектов в июле без ответа.
Восстановление сети TAC оставляет нерешенным баланс BNB Chain
TAC заявила, что злоумышленник продал 1 208 329 197 TAC на BNB Chain за 950 293 USDT и еще 49,9 млн TAC на TON за 55 481 USDT. Общая заявленная выручка составила 1 005 774 USDT.
Предлагаемое восстановление делит опустошенный пул на три части. Целевое изменение состояния удалит 65 100 989 TAC, связанных с инцидентом и замороженных в TAC. Еще 1 662 322 353 TAC остаются на адресах BNB Chain, связанных с инцидентом, и будут обработаны отдельно. TAC заявила, что оставшиеся 1 258 228 061,40 TAC, представляющие токены, проданные из пула, будут полностью возмещены из резервов казначейства TAC Foundation.

В отличие от отката, предлагаемое изменение исправит указанные балансы на блоке остановки без перемотки цепочки. TAC заявила, что это восстановит пул стейкинга и балансы делегаторов, сохранив при этом 7 772 законные транзакции от 218 несвязанных адресов.
Прекращение остановки сети TAC по-прежнему зависит от принятия валидаторами пропатченного бинарного файла TAC, возобновления производства блоков и выполнения изменения. Мосты и погашение остаются отключенными, и TAC не определила, как будут обрабатываться 1,662 миллиарда TAC на BNB Chain. Таким образом, обязательство казначейства покрывает дефицит проданных токенов, а не более крупный баланс, удерживаемый злоумышленником вне сети.
Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.
Автор – Liam 'Akiba' Wright




