Почему опасность подстерегает проекты на базе Ethereum, и каким образом хакеры крадут деньги пользователей? Комментирует Дмитрий Волков, технический директор криптобиржи CEX.IO.
По данным исследования Atlas VPN с 2012 года по сегодняшний день блокчейн-индустрия потеряла целых $13,6 миллиардов по причине хакерских атак. При этом кроме нападений на биржи и кошельки, достаточно солидные потери пришлись на встроенные приложения блокчейна, так называемые DAPPS. В одной только системе Ethereum хакерам удалось провести 33 успешных атаки на DAPPS и украсть $364,38 миллиона.
Что такое DAPPS?
DAPPS (Distributed Applications) — это распределенные приложения, которые работают внутри самого блокчейна. Они запускаются на суперкомпьютере, состоящем из машин-майнеров. Любое приложение такого типа имеет множество копий и работает одновременно на всех компьютерах сети.
DAPPS могут иметь разное назначение: они способны принимать и отправлять криптовалюту, выступать торговыми роботами, обслуживать биржи, выполнять роль ICO-токенов или даже быть играми.
В сети Ethereum DAPPS называются смарт-контрактами. И хотя никто не запрещает делать их «с нуля», как правило в блокчейне создаются однотипные DAPPS по шаблону. Например, ERC-20 — это популярный шаблон смарт контракта для создания новых токенов. Любой желающий может создать свой собственный смарт-контракт, точно также как взаимодействовать с любым существующим в блокчейне смарт-контрактом.
Почему атаки идут на Ethereum?
Простые блокчейны, такие как Bitcoin, поддерживают только математические простые операции, такие как перевод криптовалюты между адресами или совершение транзакции с простым логическим условием. В таких операциях сложно найти уязвимость. DAPPS на базе Ethereum представляет собой полноценные приложения, созданные с использованием языка программирования.
Как следствие, в DAPPS, как и в любом программном коде, бывают ошибки. Они могут быть допущены случайно или специально, но именно на этих ошибках основаны практически все взломы DAPPS.
Для атак на DAPPS существует две возможности — либо хакеры находят ошибку (уязвимость) в существующем приложении, либо мошенники изначально стараются создать уязвимость, которую поначалу никто не заметит. В конечном счете успешные атаки приводят к потерям своих активов пользователями приложения. И иногда эти потери бывают значительными.
Примеры уязвимостей DAPPS
Один из известных случаев атаки на DAPPS — использование случайно допущенной ошибки в приложении The Dao. В 2016 году неизвестный хакер эксплуатировал уязвимость и украл значительную сумму пользовательских средств из проекта. Кстати, именно это событие впоследствии привело к хард-форку и разделению блокчейна на ETH и ETC.
Другая случайно допущенная ошибка была обнаружена в популярном DeFi проекте YAM Finance. В августе 2020 вложенные в этот проект средства пользователей исчезли, навсегда застряв в приложении. В истории с YAM не было злого умысла, но от этого не легче — потери пользователей, веривших в проект, оказались значительными.
Технический аудит и гарантия надежности
Увы, большинство пользователей, даже самых опытных, не могут проверить, есть ли в приложении ошибки и можно ли доверять ему свои средства. Учитывая, что взлом DAPPS мог стать еще более масштабной проблемой, для DeFi-проектов проводят технические аудиты. Опытные программисты и эксперты проверяют код конкретного приложения и подтверждают, что в нем нет ошибок. Доверия такому проекту будет больше, но не стоит забывать, что эксперты — тоже люди.
Например, популярный и многообещающий проект Harvest Finance с отличной репутацией в свое время привлек порядка 1 млрд долларов. Harvest Finance прошел не один, а целых два независимых аудита у авторитетных фирм, он считался действительно надежным. И хотя в самом коде приложения не было серьезных и очевидных ошибок, проблема обнаружилась в самом алгоритме Harvest Finance. Хакер обнаружил нетривиальную уязвимость и с помощью других приложений за несколько минут украл десятки миллионов долларов.
Есть ли защита от взлома?
Даже высокий авторитет и популярность проекта с двойным аудитом у лучших фирм не гарантирует отсутствия ошибок в DAPPS. Конечно, аудит значительно уменьшает вероятность ошибок, но универсальной защиты еще не придумали.
Пользователи могут ориентироваться на более известные приложения, которые уже давно используются, либо диверсифицировать свои инвестиции в разные проекты. Но стоит помнить, что риск взлома в этой области всегда остается.
Полный материал читайте по ссылке.
Так что. признав этот постулат, единственной принципиальной ошибкой надо считать предоставление своих денег в распоряжение DAPPS.