Обзор
Недавние фишинговые веб-сайты в сфере Web3 нанесли ущерб на миллионы долларов множеству пользователей. На этих ресурсах пользователи, сами того не подозревая, подписывают транзакции, которые разрешают перевод их токенов на счета, контролируемые мошенниками. Чтобы защитить пользователей от фишинговых атак, многие Web3-кошельки внедрили механизм черных списков для проактивной блокировки транзакций с участием известных фишинговых аккаунтов.
Однако, согласно нашим наблюдениям, эта стратегия оказалась неэффективной для блокировки фишинговых аккаунтов. Мошенники разработали несколько методов обхода этого механизма защиты. Первый метод предполагает использование функции Create2 для предсказания адреса фишингового контракта и последующего развертывания этого контракта после успешной кражи токенов. Второй метод заключается в ежедневном развертывании новых фишинговых контрактов со скоростью, опережающей обновления черного списка.
Существующий механизм оповещения о безопасности в кошельках

Механизм оповещения о безопасности в кошельке включает проверку как веб-сайтов, так и аккаунтов. В настоящее время все подобные системы поддерживают черные списки для доменов веб-сайтов и аккаунтов. Когда пользователь посещает веб-сайт, кошелек проверяет, находится ли домен в черном списке. Если это так, доступ к веб-сайту блокируется. Аналогично, перед тем как пользователь подписывает транзакцию, кошелек проверяет, находится ли аккаунт, участвующий в транзакции, в черном списке. Если находится, транзакция блокируется, чтобы предотвратить выполнение операции пользователем. Примером таких функций безопасности являются системы типа MetaMask.
Использование Create2 для обхода оповещений о безопасности
Опкод Create2 в Ethereum позволяет предсказать адреса контрактов до их фактического развертывания. Это достигается с помощью формулы:
address = hash(deployer address, bytecode, salt)
Имея адрес развертывателя, байт-код контракта и заданное значение соли (salt), можно заранее определить адрес контракта.
Очевидно, что, зная адрес развертывателя, байт-код и значение соли, мы можем предсказать адрес контракта до его развертывания. На фишинговом сайте пользователям предлагается отправить ETH или одобрить (approve) перевод токенов на внешний аккаунт (EOA), который ожидается через Create2 и еще не занесен в черный список. Впоследствии, после успешной кражи токенов, фишинговые контракты будут развернуты, а токены жертв будут переведены на другой счет для дальнейшей обработки. Весь этот процесс происходит автоматически.

Вот пример, продемонстрированный в Phalcon Explorer:
Фишинговый сайт сначала запрашивает у пользователей одобрение токенов для адреса 0x0ddb. Затем мошенник запускает фишинговую транзакцию, которая состоит из двух внутренних транзакций. Первая внутренняя транзакция развертывает фишинговый контракт с помощью Create2. Вторая внутренняя транзакция вызывает фишинговый контракт для перевода токенов жертв.
Частое развертывание фишинговых контрактов для обхода оповещений о безопасности
Из-за короткого промежутка времени между развертыванием фишингового контракта и обновлением черного списка мошенники могут использовать этот разрыв для обхода оповещений о безопасности. Они делают это, развертывая новые фишинговые контракты ежедневно. В результате, когда пользователи посещают фишинговые сайты, эти контракты еще не занесены в черный список, что позволяет им избежать оповещений в некоторых кошельках.

Вот пример ситуации с Pink Drainer, показанный в Phalcon Explorer. Функция развертывания (Deploy) адреса 0x5d77 вызывается ежедневно для создания новых фишинговых контрактов.
Резюме
Разработчики фишинговых веб-сайтов постоянно создают новые стратегии для обхода механизмов обнаружения угроз, используемых Web3-кошельками. Мы сохраняем бдительность, постоянно отслеживая их новейшую тактику. Мы призываем пользователей проявлять осторожность и тщательно проверять детали транзакций перед их подписанием.
Дополнительные материалы
О компании BlockSec
BlockSec — это передовая компания в области безопасности блокчейнов, основанная в 2021 году группой всемирно признанных экспертов по безопасности. Компания стремится повысить уровень безопасности и удобство использования в развивающемся мире Web3, чтобы способствовать его массовому внедрению. С этой целью BlockSec предоставляет услуги аудита безопасности смарт-контрактов и EVM-сетей, платформу Phalcon для разработки систем безопасности и проактивной блокировки угроз, платформу MetaSleuth для отслеживания средств и расследований, а также расширение MetaSuites для эффективной работы разработчиков Web3 в криптомире.
На сегодняшний день компания обслужила более 300 уважаемых клиентов, таких как MetaMask, Uniswap Foundation, Compound, Forta и PancakeSwap, и получила десятки миллионов долларов США в рамках двух раундов финансирования от выдающихся инвесторов, включая Matrix Partners, Vitalbridge Capital и Fenbushi Capital.
Официальный сайт: https://blocksec.com/
Официальный аккаунт в Twitter: https://twitter.com/BlockSecTeam



