Проект DAO, уникальный инвестиционный проект, построенный на базе блокчейна Ethereum, подвергся крупномасштабной атаке. В результате эксплуатации ошибки в коде DAO со счетов проекта утекли (и продолжают утекать) десятки миллионов долларов. Стоимость валюты Ethereum стремительно падает, пользователи бегут, и никто не понимает, что делать.
Проект DAO открылся в конце мая и представляет собой полностью автоматический инвестиционный фонд — что-то вроде криптовалютной версии Kickstarter. Желающие могут выставлять свои предложения на суд публики. Те из них, которым удалось найи поддержку сообщества, получат финансирование, а часть их прибыли поделят все «инвесторы». И голосование, и финансирование, и распределение прибыли происходит автоматически. Сотрудники или менеджеры DAO не могут повлиять на эти процессы.
DAO построен на базе Ethereum — технологии, использующей те же принципы, что и Bitcoin, но лучше поддерживающей так называемые умные контракты — компьютерные программы, которые описывают условия и исход сделки. И проверка условий, и исполнение обязательств происходит без участия человека. В Ethereum встроен полноценный язык программирования, предназначенный специально для создания умных контрактов. Правила DAO описаны именно на нём.
Неизвестный злоумышленник использовал уязвимость в функции splitDAO, предназначенной для создания дочерних версий проекта. Эта функция является частью кода DAO. Уязвимость позволяет вызывать splitDAO рекурсивно в процессе каждого отделения и таким образом многократно получать «эфиры» (валюту Ethereum) в течение единственной транзакции, пишет xakep.ru.
В течение нескольких часов на адрес https://etherchain.org/account/0x304a554a310c7e546dfe434669c62820b7d83490 утекли средства, эквивалентные десяткам миллионов долларов. В 15:00 по московскому времени сообщали о пропаже примерно 53 миллионов долларов, но поскольку атака продолжается, а курс «эфира» падает, итоговая цифра, скорее всего, окажется иной.
Строго говоря, по той логике, в которой оперирует Ethereum, атака не является преступлением. Правила DAO — это код, и непреднамеренные уязвимости в них — это такая же часть контракта, как и сознательно описанные условия. Действия, которые выполняет злоумышленник, предусмотрены правилами DAO. В противном случае, они были бы невозможны.
Проблема заключается в той самой неумолимости умных контрактов, которую обычно считают их плюсом. Обычные контракты, содержащие ошибки или лазейки, можно оспорить, изменить или исправить — на этом кормятся десятки тысяч юристов. Вмешаться в исполнение умного контракта невозможно, равно как и повернуть вспять уже проведённые транзакции — это гарантирует блокчейн Ethereum.
Атака повергла сообщество DAO и Ethereum в замешательство. Многие спешно избавляются от токенов проекта и накопленного «эфира». Курс криптовалюты стремительно падает. За считанные часы «эфир» утратил треть своего веса.
Основатели DAO призвали сторонников начать DDOS-атаку на Ethereum, чтобы дать им время на поиск решения, и опубликовали код, который поможет перегрузить сеть криптовалюты. Создатель Ethereum Виталик Бутерин через Reddit попросил обменные сервисы приостановить любую деятельность, связанную с Ethereum и DAO.
Спустя пару часов Бутерин опубликовал в блоге Ethereum предложение провести «мягкое ветвление» (soft fork) криптовалюты, в результате которого будут отменены любые транзакции, которые привели к утечке средств DAO после блока 1760000. Одновременно будет предотвращён вывод средств, полученных устроителем атаки в течение 27 дней, необходимых для завершения процесса создания дочернего DAO. Затем последует «жёсткое ветвление» (hard fork), которое вернёт пострадавшим утекшие средства.
Бутерин рекомендовал майнерам Ethereum возобновить работу в обычном режиме и дожидаться кода «мягкого ветвления», после чего, если они поддерживают это предложение, исполнить его. Обладателям токенов DAO и «эфира» создатель Ethereum советует сохранять спокойствие и не делать резких движений.
Наблюдатели отмечают, что атака уже нанесла непоправимый ущерб репутации DAO. Даже в том случае, если утечку удастся остановить, а то и повернуть вспять, вряд ли проекту снова доверят десятки миллионов долларов. Инцидент может остудить интерес и к идее умных контрактов. Кроме того, нельзя недооценивать угрозу для самого Ethereum. Масштабы и важность DAO для экосистемы этой криптовалюты слишком значительны, чтобы гибель этого проекта прошла бесследно.
Даже удачный исход ветвления, в пользу которого выступил Бутерин, может оказаться пирровой победой. Он докажет, что криптовалюта не настолько децентрализована и неконтролируема, как считается. В её работу можно вмешаться и повернуть законные сделки вспять. Возможно, это ещё хуже, чем потеря 50 миллионов.
Проект DAO, уникальный инвестиционный проект, построенный на базе блокчейна Ethereum, подвергся крупномасштабной атаке. В результате эксплуатации ошибки в коде DAO со счетов проекта утекли (и продолжают утекать) десятки миллионов долларов. Стоимость валюты Ethereum стремительно падает, пользователи бегут, и никто не понимает, что делать." />
Исследователь под ником hackermondev сообщил о 0-click уязвимости, позволяющей без взаимодействия с пользователем определить его местоположение с достаточно большой точностью. Атака нацелена на софт Signal и Discord и задействует механизмы кеширования в инфраструктуре Cloudflare для определения геолокации пользователя в радиусе до 400 километров.
Брешь кроется в механизме кеширования систем доставки контента (CDN). Специалист так описывает проблему:
«Если устройство пользователя загружает контент на сайте, использующем Cloudflare, этот ресурс кешируется в локальном дата-центре. Затем можно идентифицировать конкретный ЦОД, закешировавший контент».
Signal и Discord автоматически скачивают кешированные файлы — например, аватары или вложения — которые сохраняются в ближайшем дата-центре Cloudflare. Используя прокси Cloudflare Teleport или похожие инструменты, злоумышленник может установить, какой именно дата-центр использовался, вычислив таким образом регион пользователя.
Исследователь продемонстрировал эксплуатацию вектора на платформе Signal, широко используемой журналистами и активистами. Он отправил вложение через CDN Signal и выяснил, в каком дата-центре был кеширован файл.
«В моем случае я нахожусь в Нью-Йорке, а ближайший ко мне дата-центр — в Ньюарке, штат Нью-Джерси. Последний располагается примерно в 150 милях (чуть больше 241 километра — прим. Anti-Malware.ru) от меня», — пояснил он.
Аналогичная уязвимость была обнаружена в Discord. Эксперт продемонстрировал атаку через пользовательские эмодзи или уведомления о запросах в друзья. Например, аватар отправителя в запросе автоматически загружается устройством получателя, что активирует 0-click.
Cloudflare устранила конкретную уязвимость, однако hackermondev нашел обходной путь через VPN.
«С помощью нового метода мне удалось снова вычислить около 54% всех дата-центров Cloudflare», — заявил он.
Реакция разработчиков Signal и Discord была довольно прохладной. В Signal заявили, что пользователи сами должны озадачиться сокрытием своей личности. Discord, в свою очередь, возложил ответственность на Cloudflare.
Подписывайтесь на канал "AM Live" в Telegram, чтобы первыми узнавать о главных событиях и предстоящих мероприятиях по информационной безопасности.
Свидетельство о регистрации СМИ ЭЛ № ФС 77 - 68398, выдано федеральной службой по надзору в сфере связи, информационных технологий и массовых коммуникаций (Роскомнадзор) 27.01.2017 Разрешается частичное использование материалов на других сайтах при наличии ссылки на источник. Использование материалов сайта с полной копией оригинала допускается только с письменного разрешения администрации.