
Вчера, 28 июля, в основной сети Zcash на блоке №3 428 143 активировали обновление Ironwood. Оно включает новый пул для приватных транзакций, который должен заменить Orchard — в конце мая в нем была обнаружена критическая уязвимость.
Ошибка была выявлена инженером по безопасности Shielded Labs Тейлором Хорнби во время анализа кода с использованием ИИ-модели Anthropic Opus 4.8. Уязвимость присутствовала с момента запуска пула в мае 2022 года и теоретически могла позволить незаметно создавать поддельные ZEC. В тестовой сети специалисту удалось воспроизвести атаку и сгенерировать монеты с помощью работающего эксплойта.
Разработчики устранили проблему в начале июня в два этапа. Сначала с помощью софтфорка временно отключили транзакции в Orchard, после чего хардфорк восстановил их работу. При этом признаков реального использования уязвимости команда не обнаружила. Однако доказать отсутствие атак криптографически невозможно из-за особенностей приватного пула: суммы переводов скрыты, поэтому по данным самих транзакций нельзя установить, выпускались ли ранее фальшивые монеты.
Ironwood устраняет эту проблему за счет проверки на границе пула. Orchard переведен в ограниченный режим: новые средства больше не могут поступать в него, а уже находящиеся внутри активы нельзя перемещать между счетами. Вывести их можно только через специальный «турникет» в Ironwood.
На уровне протокола также реализован механизм, который гарантирует: из старого пула нельзя вывести больше ZEC, чем ранее было в него внесено.
