Атака на dForce: причина возврата хакером $25 млн

19 апреля хакер вывел $25 млн, заблокированных в популярном китайском DeFi-протоколе dForce. Но у него не удалось перевести деньги на свой счёт, видимо, в процессе этой попытки он выдал свою личность. Как хакеру удалось это сделать? Почему потом он вернул украденное? Как взлом повлиял на DeFi-сектор?

 

 

Атаки на Uniswap и Lendf.Me

 

18 и 19 апреля были осуществлены две атаки: на децентрализованную биржу Uniswap и Lendf.Me — один из DeFi-протоколов dForce. Мы не знаем, один злоумышленник стоит за этим или нет, но применялись в оба раза одни и те же уязвимости. Ещё эксперты, которые анализируют данные атаки, утверждают, что это это сделал один человек, а не группа людей.

Сначала 18 апреля хакер вывел $300 000 с пула ликвидности для токена imBTC на децентрализованной бирже Uniswap. Средства в ВТС при этом остались нетронутыми. imBTC — это токен на базе Ethereum, который имеют оценку в соотношении 1:1 с биткоином. Токен осуществляет свою деятельность на стандарте ERC777, ориентированном на поддержку смарт-контрактов и помощь отражать стоимость биткоина в блокчейне Ethereum. Для этого он позволяет много раз прибегать к смарт-контракту, выводя находящиеся в нем средства до обновления внешнего баланса. Именно эта уязвимость и послужила совершившимся атакам.

 

После совершившейся атаки на Uniswap разработчики токена imBTC из проекта Tokenlon заметили прорехи и поняли, что безопасность токена находится под угрозой. Они приостановили его работу и сообщили о данном происшествии партнерам imBTC, в том числе dForce, чтобы те выразили своё мнение, готовы ли они к потенциальным угрозам. После подтверждения от dForce и других партнеров о том, что системы под защитой, Tokenlon возобновил транзакции imBTC.

 

Но спустя 24 часа 19 апреля хакер атаковал открытый протокол краткосрочного кредитования Lendf.Me — один из двух протоколов, созданных dForce для поддержки кредитных операций на платформе Ethereum. У него получилось вывести почти все заблокированные в протоколе средства — $24.7 млн в ЕТН, ВТС и нескольких стейблкоинах, в том числе, в HuobiBTC и Huobi.

 

SlowMist, компания по кибербезопасности, сообщает, что похищенное сразу же было переведено на другие счета и преобразованы в ETH и другие токены на децентрализованных платформах 1inch.exchange, ParaSwap и Tokenlon.

 

Объем заблокированных в dForce активов, по данным DeFi Pulse. Источник.

 

В итоге деятельность протокола Lendf.Me и USDx (собственного стейблкоина dForce) была приостановлена. В то же время проект Tokenlon приостановил работу токена imBTC и транзакций с ним. Реализация токена в ВТС при этом не было затронуто.

 

Баннер о блокировке работы Lendf.Me на китайском и английском языках. Источник.

 

dForce — одна из крупнейших в Китае DeFi-платформ для кредитования. Данная атака причинила большой вред компании. Всего за несколько дней до этого она получила $1.5 млн стратегического финансирования от Multicoin Capital, Huobi Capital и China Merchants Bank International (CMBI). У организации было в планах расширить штат и создать новые продукты за счёт данной суммы.

 

Поддержку токена imBTC добавили в протокол Lendf.Me лишь в январе 2020 года. Роберт Лешнер — генеральный директор конкурирующего протокола Compound, как в воду глядел, когда говорил о вероятных опасных происшествиях  в начале 2020 года. Он утверждал, что Lendf.Me — плагиат кода его компании. По его мнению, если проект не в состоянии создать собственный смарт-контракт, следовательно, он не переживает о безопасности.

 

Каким образом были реализованы атаки на Uniswap и Lendf.Me

 

Обе атаки были совершены с применением одной и той же достаточно популярной уязвимости токена imBTC.

 

 Компания Tokenlon, которая создала данный токен, выпустила собственный отчет о произошедшем. В нем она сообщила, что «у токена нет уязвимостей в системе безопасности». Но комбинация применения токенов ERC777 и смарт-контрактов на Uniswap и Lendf.Me позволяет осуществлять атаки «повторного воспроизведения» (Reentrancy Attack). Именно этой уязвимостью и воспользовался хакер.

 

Этот эксплойт давно даёт знать о себе специалистам по кибербезопасности. Он был выявлен еще в 2018 году экспертами ConsenSys при аудите безопасности системы смарт-контрактов Uniswap. Биржа собиралась исправить эту уязвимость в апрельском обновлении, но, походу, не успела. Эксперты Tokenlon утверждают, что при выводе средств с протокола Lendf.Me злоумышленник применил схему использования эксплойта, которая была выявлена еще в июле прошлого года компанией OpenZeppelin, выполняющей аудит безопасности для криптовалютных платформ. Такая же ситуация произошла в 2016 году с токенами DAO — тогда злоумышленники заполучили около $60 млн в ЕТН.

Можно сделать вывод о том, что данная уязвимость применялась чуть-чуть по-другому. В случае с Uniswap эксплойт позволил хакеру постоянно вызывать смарт-контракт платформы для вывода средств по выгодному для себя курсу конвертации imBTC в ETH до обновления внешнего баланса. Теоретическую характеристику данной атаки есть возможность изучить в аудите Uniswap программиста ConsenSys Сергея Кравченко.

 

В случае с Lendf.Me хакер применил не только уязвимость imBTC, но и эксплойт в смарт-контрактах протокола, которые несут ответственность за обновление балансов пользователей. Мошенник применил уязвимость для произвольного увеличения собственного залога imBTC до 290 токенов (около $2 млн). Потом он использовал фейковый баланс для залогового обеспечения, что дало ему возможность брать все доступные активы из пула ликвидности Lendf.Me и вывести их на собственные кошельки. Часть средств хакер вывел в конкурирующий Compound.

 

Поподробнее о техническом анализе действий хакера можно узнать в отчетах компаний по блокчейн-безопасности PeckShieldи SlowMist.

 

Почему хакер возвратил украденное

 

После взлома представители dForce обратились в полицию в нескольких юрисдикциях и к эмитентам активов и биржам, чтобы отметить похищенные средства и совместными усилиями выследить хакера. Благодаря тому, что у imBTC централизованный реестр, которым управляет Tokenlon, украденные токены могут быть помечены, после чего их не примет ни одна площадка. Похищенные ERC20-токены HuobiBTC также находятся под управлением Huobi и погашаются лишь на их платформе.

 

Хакер, после того, как вывел средства, осуществил попытку по их обмене, для этого ему понадобилось перевести токены на несколько децентрализованных бирж, именно на этом этапе, по всей видимости, он открыл свою личность. Так, при перемещении выведенных монет на децентрализованные биржи хакер просто применил VPN или прокси-сервер, тем временем когда опытные хакеры использовали бы децентрализованную сеть, к примеру, Tor. Эта ошибка привела к утечке метаданных, включая IP-адрес хакера. С этой информацией отследить личность взломщика будет намного проще. Также IP-адрес можно внести в «черный список» централизованных площадок — так привести в деньги часть активов будет еще сложнее.

 

В комментариях TheBlock Сергей Кунц, глава 1inch.exchange (одной из децентрализованных бирж, использованных злоумышленником для отмывания похищенных средств), сообщил, что площадка получила запрос от сингапурской полиции на раскрытие IP-данных хакера и передала эту информацию правоохранительным органам. По поводу случившегося Кунц отметил, что «злоумышленник кажется хорошим программистом, но неопытным хакером». Судя по всему, данные мошенника оказались у dForce.

После этого, еще 19 апреля, представители dForce вступили с хакером в переговоры с помощью сообщений, прикрепленных к нулевым транзакциям. Во время переписки компания попросила мошенника отправить свой email.

 

Сообщение от администратора Lendf.Me с просьбой прислать свой email. Источник.

 

После этого хакер перевел Lendf.Me $2.79 млн. Но представители dForce убедили его в том, что этого недостаточно.

 

Сообщение от администратора Lendf.Me с просьбой связаться с компанией. Источник.

 

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

 

«Вирус нанес ущерб каждому из нас, жизнь не проста! Мои средства на Lendf.Me — кредитные деньги. Без них я потеряю мою жену и детей. Пожалуйста, верни наши средства! Да благословит тебя Бог!», — сообщение хакеру от потерпевшего, который потерял $240 000. Источник.

 

В итоге 21 апреля несколькими переводами хакер вернул все украденные средства. О монетах, которые украдены в Uniswap, пока ничего не известно. Можно подумать, что злоумышленник вернул деньги, потому что у него проснулась совесть, но, вероятнее всего, его личность стала известна.

 

Был нанесён ещё один удар репутации DeFi-сектора

 

Происшествие в очередной раз запятнает репутацию DeFi-сектора, несмотря на то, что злоумышленник возвратил основную часть денег. В 2019 году отрасль показала огромный рост, на пике удерживая $1.23 млрд в своих протоколах.

 

График объема заблокированных средств в DeFi-протоколах, по данным DeFi Pulse. На момент выхода статьи в них насчитывается около $760 млн. Источник.

 

Но перед DeFi до сих пор много проблем, которые мозолят глаза, и, по нашему мнению, главная из них — безопасность. Описанные выше атаки не первые. В феврале хакер два раза вывел с DeFi-платформы маржинального кредитования и торговли Fulcrum, работающей на алгоритме bZx, ЕТН почти на $1 млн. Из-за ошибки алгоритма хакер обманул ценовой оракул, проверяющий условия выполнения смарт-контрактов. Команда bZx применила ключ администратора, чтобы приостановить деятельность протокола — это начало критиковать сообщество, обвинившее проект в централизованности.

 

Все эти атаки и последующие ответные меры снижают оптимизм, который испытывает DeFi-сектор. Данная ситуация послужит уже не первым уроком для отрасли. DeFi развивается, да, но вместе с тем у руководителей не хватает времени достаточное внимание оказывать безопасности. Даже первая возникшая атака на Uniswap не повлияла должным образом на dForce.

Все случившееся — это проблемы, касающиеся не только Uniswap и dForce. Вся DeFi-отрасль, видимо, нуждается в более высоких стандартах надежности. Без них она не будет подготовлена к массовому принятию, несмотря на свой потенциал.

bit44.org

Обязательно подпишитесь на наш Telegram канал

ПОДПИСЫВАЮСЬ
ПОТОМ