Атакующий сделал всего одну подпись — и вывел все FET из кроссчейн-моста.

Всё дело в смарт-контракте на обмен FET от Super AI Alliance. Этот контракт принимает только одно разрешение, но не возвращается назад и не перепроверяет, действительно ли выданные в авторизации токены были заблокированы или сожжены. Получив приватный ключ за подписью, атакующий сам сгенерировал новое разрешение — и одной транзакцией полностью очистил баланс моста.

Он вывел 8,72 миллиона FET, что примерно равно 1,54 миллиона долларам. Затем тот же кластер кошельков получил ещё 408,5 миллиона только что отчеканенных NTX — на сумму около 463 тысяч долларов. В сумме обе операции — чуть больше двух миллионов; цена NTX при этом обвалилась на 95%.

Сначала это был просто баг одного проекта, но в итоге он затянул два. Направления двух траншей ведут на один и тот же адрес — так две истории соединились в одну: сработали чётко и без намерения оставлять на блокчейне какой-то «сюжет».

Посмотреть с другой стороны: это ещё и способ ценообразования в этом бизнесе. Пользователи ради удобства, команда проекта ради трафика — экономят на одной проверке. В итоге за сэкономленное платят все, кто оставил деньги на мосту.

Баг совсем маленький — размером лишь с одну проверку, которая должна была быть, но не была написана. Дорого обходится не сама ошибка, а то место, где она оказалась: весь баланс моста стоит прямо «за ней». Так что маленькая щель — это равносильно большой двери. В этой «мостовой» сделке зарабатывают на пошлине за проход, а «выдают» — всё состояние.

Самая дорогая строка в коде — никогда не та, что написана с ошибкой. Самая дорогая — та, которой не написали.

#链上安全 #DeFi