Альткоины

Зано заявляет, что незаконные токены на сумму свыше 200 млн долларов привели к 30-дневному «откату» блокчейна

Одна пропущенная проверка — 18,4 миллиона $ZANO

30-дневная «перемотка» блокчейна Zano и без того казалась радикальной мерой. Теперь команда объяснила, что скрывалось за этим, и механизм, по всей видимости, еще более странный. Уязвимость, появившаяся в результате хард-форка 6, позволила злоумышленнику с 29 августа создавать монеты, которые сеть принимала за подлинные.

По данным команды разработчиков, в ходе первой реальной атаки в рамках одной транзакции было создано 2^64 базовых единиц, что составляет примерно 18,4 миллиона $ZANO. Почти месяц никто этого не заметил. К тому времени, когда 25 сентября внутренние инструменты Zano подняли тревогу, поддельные монеты уже оказались запутаны в системе конфиденциальности, специально созданной для того, чтобы затруднить отслеживание транзакций.

Проблема началась с «адресов шлюза» (Gateway Addresses) — нового типа адресов, введенного в рамках хард-форка 6 для упрощения интеграции Zano с централизованными биржами (CEX), мостами и другими сервисами. Выходы шлюза раскрывают сумму и идентификатор актива, в отличие от стандартных конфиденциальных выходов Zano, где и то, и другое скрыто.

Будьте в курсе
движения ваших монет

Алерты, котировки в реальном времени и новости рынка — в одном приложении

4,8 на основе 40 К оценок в App Store и Google Play

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

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

Эти монеты не были просто бухгалтерскими записями. Команда заявила:

«Эти монеты функционировали как подлинные $ZANO и могли тратиться обычным образом».

Первый чекан оставался незамеченным почти месяц

28 августа злоумышленник зарегистрировал адрес шлюза, уплатив требуемую комиссию в размере 100 $ZANO, и, по-видимому, проверил, примет ли Zano сфабрикованный несуществующий актив. На следующий день началось настоящее сражение.

В результате одной транзакции было отчеканено примерно 18,4 млн $ZANO, стоимость которых в настоящее время составляет около 102 млн долларов. Спустя почти месяц, 24 сентября, злоумышленник совершил два легитимных депозита по 0,05 $ZANO каждый, по-видимому, проверяя обычный маршрут пополнения счета. 25 сентября было создано ещё 18,4 млн $ZANO, после чего последовал тот же маневр с 2^64 базовыми единицами с использованием стейблкоина fUSD. В общей сложности это более 200 млн долларов в виде незаконных криптотокенов.

А вот и самое интересное. До Hard Fork 6 Zano проводила тестирование с помощью искусственного интеллекта (ИИ), внутренние аудиты и программы по поиску уязвимостей. Никто не обнаружил эту уязвимость.

«Первоначальная атака оставалась незамеченной почти месяц, поскольку увеличенный выход выглядел как любой другой частный выход», — заявила команда.

Конфиденциальность сработала, и в этом заключалась проблема

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

Zano просканировала каждый выход, потенциально связанный с тремя транзакциями чеканки. К блоку 3 878 388 след охватывал 117 941 выход, созданный в результате 65 301 транзакции. Впоследствии на основе первой транзакции по чеканке было создано примерно 165 700 выходов, что составило около 71 % сетевой активности за этот период.

«Это и есть конфиденциальность, работающая так, как и задумано», — сказал Zano. «Никто, включая команду Zano, не может точно определить, какие выходы затронуты».

Это поставило проект в тупик. Именно те свойства конфиденциальности, которых пользователи ожидали от Zano, не позволили разработчикам точно отделить легитимные монеты от несанкционированных. «Единственный способ проверить целостность предложения — это продолжить цепочку с момента, предшествующего первой уязвимости», — пояснила команда.

Месяц был исключён, и началось восстановление

Этой точкой стал блок № 3 833 000, предшествующий хард-форку № 6. Хард-форк № 7 перезапустил цепочку с этой точки и отключил адреса шлюзов, что означает, что транзакции, вознаграждения за стейкинг и добытые блоки за затронутый период больше не существуют в обновлённом реестре.

Зано также сообщил, что затронутые остатки будут восстановлены в полном объеме без изменения предложения $ZANO или графика эмиссии. Финансирование поступит из фонда развития, личных средств членов команды и внешних спонсоров. Биржам теперь необходимо тщательно проверить данные за месяц, транзакцию за транзакцией, прежде чем возобновить доступ.

«На данный момент никаких действий не требуется», — сообщила команда пользователям в своих социальных сетях.

Источник

Добавить комментарий

Кнопка «Наверх»
  • bitcoinBitcoin (BTC) $ 84,511.00
  • ethereumEthereum (ETH) $ 2,691.38
  • tetherTether (USDT) $ 0.999753
  • usd-coinUSDC (USDC) $ 0.999940
  • tronTRON (TRX) $ 0.335309
  • zcashZcash (ZEC) $ 1,319.89
  • dogecoinDogecoin (DOGE) $ 0.093915
  • chainlinkChainlink (LINK) $ 14.26
  • moneroMonero (XMR) $ 543.82
  • cardanoCardano (ADA) $ 0.245312
  • leo-tokenLEO Token (LEO) $ 8.85
  • stellarStellar (XLM) $ 0.218419
  • bitcoin-cashBitcoin Cash (BCH) $ 307.86
  • litecoinLitecoin (LTC) $ 68.21
  • daiDai (DAI) $ 1.00
  • hedera-hashgraphHedera (HBAR) $ 0.102391
  • crypto-com-chainCronos (CRO) $ 0.068215
  • okbOKB (OKB) $ 120.80
  • ethereum-classicEthereum Classic (ETC) $ 8.80
  • algorandAlgorand (ALGO) $ 0.122897
  • kucoin-sharesKuCoin (KCS) $ 7.30
  • cosmosCosmos Hub (ATOM) $ 1.70
  • vechainVeChain (VET) $ 0.008747
  • dashDash (DASH) $ 58.11
  • true-usdTrueUSD (TUSD) $ 1.00
  • tezosTezos (XTZ) $ 0.322246
  • decredDecred (DCR) $ 18.15
  • iotaIOTA (IOTA) $ 0.054742
  • neoNEO (NEO) $ 2.52
  • basic-attention-tokenBasic Attention (BAT) $ 0.088875
  • qtumQtum (QTUM) $ 0.980651
  • 0x0x Protocol (ZRX) $ 0.121151
  • liskLisk (LSK) $ 0.292490
  • ontologyOntology (ONT) $ 0.058343
  • ravencoinRavencoin (RVN) $ 0.002358
  • wavesWaves (WAVES) $ 0.299508
  • paxos-standardPax Dollar (USDP) $ 0.998839
  • iconICON (ICX) $ 0.014965
  • huobi-tokenHuobi (HT) $ 0.144908
  • bitcoin-diamondBitcoin Diamond (BCD) $ 0.061182
  • monacoinMonaCoin (MONA) $ 0.071953
Закрыть
Закрыть