Содержание:
Вчера по Твиттеру и многим тг-каналам разлетелась информация о новой схеме скама с использованием фейковых апрувов. Пользователи теряли несколько десятков долларов при попытке отозвать разрешения для кошелька через сервисы Revoke или Rabby. Размеры кражи в каждом случае отличались, но у всех пользователей средства списывались в токенах BNB.
В этой статье мы собрали всю доступную информацию по атаке и спросили специалистов по безопасности HAPI Labs как защититься обычным пользователям.
Что вообще случилось?
7 июля стало известно о взломе Fantom-моста Multichain. Peckshield и площадки вроде Revoke и Rabby рекомендовали пользователям отозвать разрешения у смарт-контрактов, связанных с протоколом, чтобы избежать утечки средств.
Это в свою очередь вызвало пик активности на Revoke — самом популярном сервисе для отзыва разрешений.
Yesterday, we received reports of people seeing unknown approval transactions in their transaction history.
It turns out that this is a new scam where scammers use so-called gas tokens to steal money when victims revoke these "fake approvals". pic.twitter.com/vpY2sGIv0T
— Revoke.cash (@RevokeCash) July 9, 2023
Затем, на выходных начали появляться сообщения от пользователей Revoke, получивших уведомление об апрувах в сети Binance Smart Chain, которые они не совершали. При попытке отозвать эти разрешения через сервис, с кошелька списываются токены BNB на сумму до $60 при средней комиссии BSC в размере 3 Gwei (0.000000003 BNB).
Как устроена схема
Пользователь, за свой счет, минтит газ-токены, которые потом сразу отправляют скамеру. Это не вызывает подозрений т.к. расходы на минт $CHI классифицируются как комиссия за транзакцию:
- Скамер развернул в сети BSC смарт-контракт фейкового токена DAI, которые были разосланы на кошельки пользователей. Адрес контракта (0x1af32e8488822bf8e2fff374de8d737ecfb368c3) уже помечен как фишинговый.
- В поддельном контракте функция approve была изменена таким образом, что скамер сам добавил апрувы на использование фейкового токена для многих кошельков.
- Транзакции токенов с апрувом затригерило системы безопасности Revoke и Rabby, которые призывали получателей токена отозвать разрешения.
- Пользователи начали отзывать разрешение с фейковых DAI, но модифицированная функция approve также предусматривала параллельный минт газ-токенов $CHI. Лимит расходов на минт $CHI ограничивается размером блока и при среднем размере комиссии на BSC составляет ~$60.
- Эти газ-токены затем отправляются на адрес скамера, а он уже продает их на рынке.
Что такое газ-токены
Концепция GasTokens впервые была опубликована на GitHub в 2018-м и позиционировалась как инструмент, позволяющий снизить стоимость газа в сети Ethereum через его токенизацию. Чтобы понять, как это работает, нам нужно знать следующее:
- Комиссия за транзакцию: это по сути плата за использование ресурсов блокчейна, в число которых входят вычисления и пространство для хранения.
- В 2017-м Ethereum ввел функцию возврата газа за удаление ненужных данных смарт-контракта. Задумка проста — разработчик удаляет ненужные данные, чем освобождает пространство для хранения, а взамен получает компенсацию в виде части его стоимости.
Создатели механизма GasTokens эксплуатируют эту функцию для создания так называемых газовых «батарей», которые могут расходоваться в периоды пиковой комиссии в сети. Работает это так:
- Пользователь создает смарт-контракт в период низкой нагрузки на сеть и платит комиссию за запись данных. В этот момент он также минтит газ-токены.
- Смарт-контракт выполняет роль батареи. Теперь, когда комиссия в сети вырастет, можно удалить записанные в нем ранее данные и получить компенсацию за освобожденное место для хранения. При удалении данных газ-токены сжигаются.
- Компенсация за освобожденное место покрывает часть расходов на комиссию, то есть по факту удешевляет стоимость транзакции.
Этот механизм активно использовали 1Inch, запустив свой токен для токенизации газа — $CHI.
В 2021-м Ethereum принял EIP-3529, который отключил функцию компенсации, сделав газ-токены бесполезными. Однако в BSC и еще нескольких EVM-сетях она до сих пор работает, что позволяет использовать $CHI по прямому назначению.
Что делать, чтобы не попасть в ловушку
Мы пообщались с командой безопасности HAPI Labs и они отмечают, что в целом газ-атаки не новое явление для крипты. Особенностью же конкретной этой атаки стало использование Revoke и удачно выбранное время — общая паника на фоне взлома Multichain.
Основная мера предосторожности — проверять адрес смарт-контракта при предоставлении/отзыве апрува и любом другом взаимодействии. Верифицированные адреса доступны на сайте проекта или в агрегаторах данных.
Также можно использовать чекер от HAPI Labs, он позволяет сразу увидеть рейтинг риска кошелька или смарт-контракта:
Терминал HAPI Labs
Revoke также приняла меры по защите пользователей и блокирует апрувы, для отзыва которых расходуется слишком много газа, а часть фейковых разрешений была скрыта в начале атаки при помощи нативных фильтров сервиса.
Примечание: пользователи призывают BSC принять аналог EIP-3529, чтобы устранить подобные атаки в будущем. Впрочем. BSC может быть не последней уязвимой сетью, так что лучше выработать привычку постоянно проверять смарт-контракты и активность кошелька.
Заключение
Крипторынок все еще дикий дикий вест, опасный для неопытных ковбоев. Скамеры используют любую ситуацию и инструменты, чтобы опустошить кошельки криптанов. Случай с Revok — это эффективное сочетание панического инфошума вокруг Multichain и уже успевших забыться газ-токенов.
Чтобы не стать жертвой мошенников, достаточно внимательно проверять транзакции кошелька и смарт-контракты активов с которыми планируете взаимодействовать. Для быстрой проверки можно использовать бесплатный чекер от HAPI Labs.
Случай с BSC может быть не последним, есть и другие уязвимые для газ-атаки сети!