продолжение
dForce x imBTCК этому моменту для любого разработчика / протокола, который коснулся imBTC, было очевидно, что эта атака была возможна. Агрегатор токена BTC, BTC++, сразу же заморозил imBTC внутри своих контрактов - и это правильно. Однако внутри каждой истории взлома DeFi всегда есть интересный поворот.
Возвращаясь к тому, что несколько месяцев назад китайская команда dForce скопировала исходный код Compound, развернутый в main-net и setup shop. Они хотели запустить “the Compound of Asia”. Хорошо в теории, за исключением того, что команда полностью знала, что они делали сомнительное решение. Crypto - одна из тех отраслей, где вы не можете использовать низкокачественных разработчиков, поскольку стоимость ошибки буквально уничтожает деньги других людей. Несмотря на это, dForce продолжил и начал набирать обороты. Дело дошло до того, что всего неделю назад Multicoin вложил 1,5 млн долларов в dForce:
https://multicoin.capital/2020/04/14/our-investment-in-dforce-the-defi-super-network/Крупный инвестор вкладывает деньги в протокол DeFi, этот протокол набирает обороты -а безопасно ли вкладывать туда деньги? Точно нет. Оказывается, что dForce использует imBTC в своем кредитном протоколе, что означает, что кто-то может использовать imBTC для заимствования других активов.
Этот хак был более умным в том, как он использовал атаку повторного входа.
Хакер вносит значительное количество imBTC в dForce. Это количество imBTC, которое регистрируется в протоколе dForce.
Затем наш хакер вносит в протокол 0.000001 imBTC
Следующим шагом является снятие первого крупного депозита с imBTC, но затем активация атаки на повторный вход, что означает, что протокол не регистрирует его снятие.
Во время этой атаки с повторным входом он заимствует другие активы со своим первоначальным депозитом imBTC. Так как его первоначальный залоговый баланс не вычитается, он может повторно одолжить намного больше, чем его фактическая сумма.
Благодаря этому он получает 25 миллионов долларов напрямую от dForce!
Затем хакер помещает украденные активы в другие протоколы DeFi, чтобы получить доход
Лучший пример того, что произошло:
https://bloxy.info/tx/0xe49304cd3edccf32069dcbbb5df7ac3b8678daad34d0ad1927aa725a8966d52aКраткое изложение понесенных убытков:
Список жертв и потерянных средств:
https://drive.google.com/file/d/15SYI-gNkozXKvU0WG15n3f6w0fzNAXZf/viewХакеры и dForceВы не думаете, что это может стать еще более безумным, чем это, не так ли? После того, как команда dForce поняла, что они по существу потеряли все деньги своих вкладчиков, они выбрали необычную тактику.
Вести переговоры с хакером в блокчейне. Ниже приведен небольшой пример.
Возможно, вы думаете: зачем вообще вести с ними переговоры? Хорошо получается, что imBTC на самом деле является кастодиальным активом, и эмитентам нужно будет выпустить выкуп для реального BTC, чтобы он был полезен. Если быть более кратким, то imBTC испорчен, и извлечь из него выгоду будет трудно. Вместо этого наш хакер решает сесть за стол переговоров. Вы можете проверить оставшийся твит Frank Topbottom:
https://twitter.com/FrankResearcher/status/1251950684334952453ПоследствияИтак, теперь, когда мы изложили на одной странице о том, что произошло и как это произошло, давайте посмотрим на последствия всего этого.
Uniswap. Были ли они ответственны? Частично. Хотя они не участвовали в листинге imBTC, на самом деле они заявляют, что не поддерживают ERC-777, но они могли сделать две вещи под своим контролем. Во-первых, выявляйте токены, не совместимые с ERC20, и предупреждайте пользователей об использовании пулов, которые не соответствуют стандартной логике. Во-вторых, они могли бы использовать охранников для повторного входа, которые в первую очередь предотвращают повторную атаку. Я бы не стал их упрекать, а скорее научил разработчиков протоколов думать о таких внешних векторах и предупреждать пользователей.
dForce. Были ли они ответственны за то, что случилось? Абсолютно. Все активы, перечисленные на их платформе, должны быть тщательно рассмотрены и проанализированы. Кроме того, они взяли исходный код Compound, не обладая необходимым опытом. Выход на рынок был приоритетом над безопасностью пользователей.
Multicoin. Хотя они были просто инвесторами, я думаю, что они играют определенную роль, учитывая их известность в отрасли. Они очень публично поддержали команду, которая, судя по всему, не имела необходимых технических знаний для поддержания протокола децентрализованного кредитования. Копирование и вставка кода не должны быть полностью проницаемы, так как все является открытым исходным кодом, и инновации могут быть ускорены из множества уже доступного кода. Плохо, когда команды, которые не знают, что делают, копируют и вставляют код. Небольшое отличие, но большая разница в результатах.
imBTC. Трудно сказать, были ли они здесь виноваты, поскольку придерживались утвержденного стандарта токенов. Они могли бы придумать протоколы, которые собирались интегрировать, с тем, что возможен вектор атаки с повторным входом.
Что касается инвесторов, которые следят за этим со стороны, я думаю, что любая команда, которая обладает знаниями об Ethereum / Solidity, получит премию, учитывая тонкости того, как эти вещи работают. Я всегда думал, что произойдет взрыв протоколов DeFi, но, возможно, я бы изменил свою оценку, чтобы только лучшее могло закончиться поставкой и созданием в процессе высококачественного программного обеспечения. Напомню, что талантов в этой отрасли очень мало.
ИтогЯ предполагаю, что эта статья завершает специальное издание DeFi Weekly. Этот набор событий действительно выглядит как передача богатства тем, кто более глубоко понимает DeFi (хакер), от тех, кто не понимает (dForce). Погоня за доходностью вслепую - опасная задача, и риски всегда должны быть взвешены. Одной из проблем здесь является то, что это событие, наряду со многими другими, пугает инвесторов от инвестирования в DeFi из-за сложного риска, связанного с объединением токенов / протоколов.
@kaiynne19 довольно хорошо подводит итог:
"Погоня за доходностью без учета риска платформы безумна. Надеюсь, это гвоздь в гробу для погони за «без риска»"https://twitter.com/kaiynne/status/1251743290178727936