Уязвимости Web2: незамеченная опасность для Web3

2022-10-28

Основные выводы

  • DeFi-проекты взламывают с помощью эксплойтов Web2.

  • Недавно два проекта DeFi подверглись атакам из-за управления тегами и доменных имен.

  • Команды Web3 могут сделать всю экосистему безопаснее, если будут уделять больше внимания защите Web2.

За последние месяцы хакеры украли у пользователей сотни тысяч долларов, используя эксплойты Web2 для атак на ряд проектов Web3. Это должно стать уроком для другим проектов. Стоит задуматься об уязвимостях Web2, ставших причиной этих преступлений, и совместно работать над защитой экосистемы Web3.

Технология блокчейна произвела революцию в финансовой сфере. Пользователи получили возможность напрямую управлять собственными деньгами и инвестициями благодаря некастодиальному хранению, смарт-контрактам и продуктам Web3. Но в этом меняющемся пространстве необходимо найти баланс между децентрализацией и безопасностью. Последняя особенно важна, когда речь идет о средствах обычных людей. Учитывая децентрализованный характер Web3, основное внимание часто уделяется тому, чтобы блокчейн-протоколы и смарт-контракты, лежащие в основе различных продуктов и платформ, были надежными, безопасными и защищенными от эксплойтов — вредоносных программ, эксплуатирующих уязвимости. 

Тем не менее многие проекты Web3 все еще опираются на фреймворки и технологии Web2 для запуска дополнительных функций поверх своих основных протоколов блокчейна. И поэтому хакеры начинают использовать уязвимости Web2, чтобы украсть средства проекта и пользователей. Один из примеров — атака на фронтенд-код или систему, а не на сам смарт-контракт.

Какими бывают эксплойты Web2? Как они работают? И как с ними бороться? В этой статье мы ответим на эти вопросы на примере двух крупных DeFi-проектов, которые в последние месяцы подверглись атаке Web2-эксплойтов, — KyberSwap и Curve Finance. Мы также сделаем определенные выводы, которые помогут обеспечить безопасность своих проектов и средств.

KyberSwap потеряла $265 000 из-за эксплойта Google Tag Manager

1 сентября 2022 года децентрализованная биржа KyberSwap пострадала от эксплойта фронтенда. В результате она потеряла $265 000. Что же произошло? Хакеры внедрили вредоносный код в Google Tag Manager (GTM) компании KyberSwap, что позволило им переводить средства пользователей на свои собственные адреса. 

Google Tag Manager (GTM) — уязвимость Web2 

GTM — это эксплойт Web2, поскольку GTM не имеет никакого отношения к смарт-контрактам KyberSwap или функциям блокчейн-протокола. Скорее, GTM — это система управления тегами, которая помогает добавлять и обновлять теги цифрового маркетинга для таких задач, как отслеживание переходов и аналитика сайта. Хакеры смогли получить доступ к учетной записи GTM компании KyberSwap с помощью фишинга, что позволило им вставить вредоносный код. Взломав интерфейс KyberSwap, злоумышленники смогли вывести с платформы средства пользователей на сумму $265 000. 

Цель этого сценария — кошельки китов. Kyber Network, центр ликвидности KyberSwap, смог отключить GTM и устранить вредоносный сценарий, тем самым прекратив дальнейшую преступную деятельность. Отметим, что KyberSwap пообещала компенсировать все потери. Но если бы безопасности Web2 уделялось больше внимания, эту атаку на фронтенд можно было бы предотвратить.

Curve Finance потеряла $570 000 из-за эксплойта DNS

KyberSwap — не единственный DeFi-проект, который недавно пострадал от эксплойта фронтенда. 9 августа 2022 года группа хакеров использовала уязвимость в децентрализованной бирже Curve Finance и похитила из кошельков пользователей Ethereum (ETH) на сумму $570 000. На этот раз атака на фронтенд была вызвана отравлением кэша DNS — уязвимостью, которая позволила хакерам перенаправлять пользователей, пытавшихся открыть домен Curve Finance. Вместо этого они попадали на поддельный сайт-копию.

Отравление кэша DNS — уязвимость Web2 

DNS (Domain Name System) — система доменных имен. Это один из основных инструментов, позволяющих без труда просматривать страницы в интернете. Когда кто-то вводит доменное имя, его устройство отправляет заявку на DNS-сервер, запрашивая соответствующий IP-адрес. 

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

В случае с Curve Finance хакеры создали точную копию реального DNS-сервера Curve и перенаправляли пользователей на мошеннический сайт, который выглядел в точности как сайт проекта. Так они внедрили вредоносный контракт на «главную страницу» Curve. Когда пользователи одобряли использование контракта в своих кошельках, их средства уходили мошенникам. Таким образом они украли в общей сложности $570 000.

Как проекты могут защитить своих пользователей? Выводы из произошедшего

Самый главный урок, который можно извлечь, — не имеет значения, насколько надежны ваши смарт-контракты, если проект не относится к безопасности Web2 с той же серьезностью. Командам следует подумать о пробелах, которые могут существовать между Web2 и Web3, и взять на себя еще больше ответственности за общую безопасность проекта. 

Чему можно научиться на примере эксплойта GTM 

Учитывая случай с KyberSwap и эксплойтом GTM, командам необходимо использовать двухфакторную аутентификацию (2FA) для защиты вспомогательных инструментов, таких как учетные записи GTM. Проекты также должны ограничивать доступ к учетным записям, позволяющим развернуть код на их сайте. Чем больше людей могут это сделать, тем более уязвима система, поэтому доступ необходимо тщательно контролировать. Например, Binance разделяет доступ на три разных уровня: разработчик тегов, ответственный за проверку безопасности и ответственный за публикацию. Ни один из них не может добавить новый код на сайт в одиночку: для завершения процесса нужны все трое.

Чему можно научиться на примере эксплойта DNS 

Избежать взлома DNS-сервера всегда проще, чем потом устранять последствия. Если вы — обычный пользователь, следуйте советам ниже, чтобы защитить свои средства:

  • Не открывайте подозрительные ссылки.

  • Регулярно очищайте кэш DNS.

  • Регулярно проверяйте устройство на наличие вредоносных программ.

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

В этом случае бремя ответственности лежит на криптовалютных компаниях. Проекты должны убедиться, что используют надежного и авторитетного поставщика услуг по управлению доменами. Генеральный директор Binance, CZ, прокомментировал в Twitter взлом Curve Finance, отметив, что проект использовал «DNS, который небезопасен. Ни один проект Web3 не должен так поступать. Это делает их уязвимыми для социальной инженерии».

Команды не должны пытаться экономить за счет дешевого DNS-провайдера. Надежный поставщик должен поддерживать пользовательские протоколы, которые не позволяют хакерам изменять настройки доменных имен. 

Web3 открывает огромные возможности, но мы не должны игнорировать угрозы безопасности, которые существуют еще со времен предыдущей эры интернета. Давайте будем бдительны и вместе защищать нашу экосистему по всем направлениям.

Нас выбирают более 236,245,099 пользователей. Узнайте почему.
Зарегистрироваться