По словам экспертов, в каждом проекте первичного размещения токенов есть, как минимум, пять различных уязвимостей, которые позволяют хакерам похитить собранные инвестиции. Среди самых распространенных методов злоумышленников выделяют: атаки на организаторов или инвесторов, а также использование уязвимостей в смарт-контрактах, веб- и мобильных приложениях.
Как сообщается в отчете Positive Technologies, в течение 2017 года с помощью ICO по всему миру было привлечено более 5 млрд долларов от инвесторов, и 7% от этой суммы (около 300 млн долларов) было похищено киберпреступниками.
Роковые ошибки организаторов
В ходе исследования аналитикам из Positive Technologies удалось выяснить, что примерно треть организаторов ICO являются уязвимыми для атаки. Злоумышленники легко могут получить доступ к электронным почтовым ящикам организаторов, используя информацию на официальном сайте проекта. Там зачастую содержатся имена, фамилии и фотографии руководителей.Используя эту информацию, можно вычислить участников проекта в соцсетях, определить их почтовые логины и подобрать правильные ответы на контрольные вопросы для восстановления паролей от различных сервисов, включая домены и хостинги. Если процедура изменения пароля потребует подтверждение с помощью смс, хакер может просто купить на черном рынке детализацию входящих сообщений абонента. В зависимости от оператора, детализация за месяц может стоить от 3 до 8 тыс. рублей.
Получив доступ к почте, хакер может поменять место хранения собранных средств на собственный электронный кошелек. Таким методом злоумышленникам удалось вывести из Coindash.io около 7 млн долларов – преступники всего лишь изменили адрес Ethereum-кошелька.
Еще одной ошибкой организаторов ICO часто является то, что они не регистрируют на себя все возможные доменные имена и аккаунты в соцсетях, которые могут ассоциироваться с их проектом. Например, в ходе атаки на криптовалютную биржу Bittrex хакеры воспользовались невнимательностью пользователей и заставили их ввести свои данные для авторизации не на официальном сайте bittrex.com, а на фишинговом blttrex.com.
Чего следует опасаться инвесторам
Инвесторы являются не менее уязвимым звеном для киберпреступников. По результатам исследования, их оказалось возможным атаковать в 23% случаев. Чтобы обмануть инвесторов, достаточно создать фейковую страницу в социальных сетях, название которой будет совпадать или иметь сходство с названием проекта ICO. На фальшивой странице злоумышленники могут размещать информацию о проекте, содержащую ссылки на фишинговые сайты.Бреши в смарт-контрактах
Согласно результатам исследования Positive Technologies, 71% всех проанализированных ICO имеет баги в смарт-контрактах. На них приходится 32% всех выявленных уязвимостей. Как правило, такие «дыры» возникают вследствие недостаточной квалификации программистов или слишком поверхностного тестирования исходного кода.К характерным ошибкам относится – несоответствие стандарту интерфейса токена ERC20, некорректная генерация случайных чисел, неправильное определение области видимости, некорректная верификация отправителя транзакции, а также целочисленное переполнение и ошибки в бизнес-логике.
С помощью уязвимости в смарт-контрактах в июне 2016 года были украдены средства у проекта The DAO. «Дыра» возникла из-за ошибки разработчиков в описании одной из функций. Кроме того, от подобной атаки пострадал проект Parity. Летом 2017 года хакеры нанесли проекту ущерб в размере 30 млн долларов, а в ноябре того же года заморозили на его счетах еще 285 млн долларов.
Уязвимость в приложениях
Еще 28% всех уязвимостей при проведении ICO приходится на веб-приложения. Однако по сравнению с мобильными приложениями этот показатель не так уж и плох – там уязвимым является каждое первое приложение из всех проанализированных, а общее количество брешей выше в 2,5 раза.Директор по безопасности приложений в Positive Technologies Денис Баранов отметил, что уязвимости зачастую присутствуют в механизме интеграции блокчейна с другими компонентами приложения. Например, часто встречается некорректная настройка механизма безопасности CORS, который позволяет веб-приложению контактировать с блокчейном.
Еще одной опасностью является некорректное внедрение блокчейна в серверную часть веб-приложения, например, с помощью web3.js.
Также эксперт акцентировал внимание на том, что большинство приложений ICO не застрахованы от уязвимостей, характерных для приложений в целом – инъекций кода, раскрытия конфиденциальной информации веб-сервером, небезопасной передачи данных, чтения произвольных файлов и т.д. Например, зарегистрировавшись у того же хостинг-провайдера, что и веб-приложения ICO, злоумышленники могут использовать уязвимость для чтения произвольных файлов на сервере, а затем взять приложение под контроль.
В исследовании отмечается, что распространенными недостатками мобильных приложений, как правило, являются небезопасная передача данных, хранение пользовательских данных в резервных копиях, а также наличие в коде приложения служебной информации и раскрытие идентификатора сессии.