Категории: Новости

Ошибка Банкора раскрывает опасную практику в Ethereum DeFi

Уязвимость, обнаруженная на Bancor 18 июня, позволила бы хакерам просто истощать средства любого, кто взаимодействовал с его умными контрактами.Эксплойт опирался на концепцию авторизации снятия средств, представленную в стандарте ERC-20.Это позволяет различным приложениям Ethereum (ETH) автоматически снимать деньги с кошельков пользователей.

Как писал Одед Лейба, инженер-исследователь в ZenGo, функция вывода средств по умному контракту Bancor была по ошибке установлена ​​так, что каждый мог ее назвать.

Bancor предпринял упреждающие действия, чтобы «украсть» средства пользователей, прежде чем злоумышленники смогут вмешаться.

Эта проблема усугублялась тем фактом, что контракты Bancor требовали неограниченного разрешения на снятие денег при первом взаимодействии с протоколом.Даже если пользователи планируют протестировать протокол только с ограниченным количеством средств, система может вывести весь остаток этого конкретного токена.

Как оказалось, многие другие DApps на Ethereum делают то же самое.

Неограниченное одобрение в течение неограниченного времени

Как рассказал Cointelegraph Лейба, многие известные децентрализованные финансы, или DeFi, требуют бесконечного одобрения приложений.Среди протестированных командой ZenGo Compound, Uniswap, bZX, Aave, Kyber и dYdX имеют бесконечные или чрезвычайно большие разрешения.

Кейн Уорвик, основатель Synthetix, сказал Cointelegraph, что бесконечные разрешения позволяют повысить удобство использования и снизить потребление газа при компромиссе с более высоким риском.Пока что большинство платформ DeFi предпочитают удобство использования.Тем не менее, после аварии, Bancor решил изменить свои контракты, чтобы только утверждать необходимую сумму с каждой сделкой.

Cointelegraph также связался с Aave, чтобы узнать больше об их решении использовать бесконечные надбавки, но не получил ответа.

Warwick считает, что «это серьезная проблема, поскольку каждый новый контракт, который вы даете« бесконечное одобрение », подвергает вас большему риску в случае компрометации контракта».

Даже когда платформа больше не используется, разрешения остаются в силе.Лейба отметил, что более 160 адресов остаются уязвимыми для «умного» контракта Bancor, предположительно без средств.Однако, если они вернутся к активности, хакеры смогут украсть деньги в любой момент времени.

Стандарты виноваты?

Существуют фундаментальные ограничения для стандарта токенов ERC-20, обычно используемого сегодня.С одной стороны, одобрения не могут иметь ограничения по времени, что могло бы помочь смягчить некоторые из долгосрочных последствий бесконечных разрешений.

Различные конкурирующие стандарты, такие как ERC-223, стремились смягчить проблему, исключив необходимость предоставления разрешений в целом.В большинстве существующих приложений взаимодействие со смарт-контрактом можно каждый раз вручную подписывать без существенного влияния на работу пользователя.

Однако умные контракты не могут отвечать на односторонние «переводные» звонки, сделанные пользователем.Вместо этого они должны собирать токены самостоятельно, используя функцию «TransferFrom», которая требует настройки квоты с помощью метода «Approve».

Уорик объяснил, что команда изначально использовала более продвинутый стандарт ERC-223.Однако проблемы с чрезмерным использованием газа и ошибки в контрактах, которые не поддерживали новый стандарт, заставили сообщество отказаться от него.Добавил он:

«Стандарты сложны, и когда все разработано для ERC20, односторонний переход на ERC223 создает много трений».

Как это исправить

Некоторые кошельки позволяют пользователям изменять конкретную сумму надбавки во время запроса на утверждение, хотя немногие четко раскрывают значение по умолчанию.ZenGo внедрила систему, в которой утверждения отправляются одновременно с каждой передачей, что может помочь защитить пользователей за счет более высокого потребления газа.

Уорик поделился своими методами безопасности:

«Я даю контрактам неограниченное количество разрешений, но я очень осторожен, с какими из моих счетов я делаю это, и с какими контрактами я даю их, потому что это меньше трений, но намного более высокий риск».

Он также предположил, что «стоит проводить техническое обслуживание», убрав допуски по неиспользованным контрактам с помощью таких инструментов, как «Отмена», «Одобренная зона» и TAC.

CryptoHamster

Недавние статьи

Биткоин, готовый к изменению W-Bottom, говорит Джон Боллингер

Легендарный технический аналитик Джон Боллингер подчеркнул то, что он называет «классической группой Bollinger W Bottom»,…

4 часа ago

Трамп убивает правило Defi Broker в крупной криптовалюте победа: переопределенные финансы

Trump kills DeFi broker rule in major cryptocurrency win: Finance Redefined, April 4–11В значительной степени…

4 часа ago

Пакистан предлагает основу на основе соответствия нормативной основе криптовалюты-отчет

Регулирующие органы в Пакистане предложили регулирующие рамки для цифровых активов, ориентированных на соответствие, в соответствии…

5 часов ago

S&P 500 кратко видит волатильность уровня биткоина на фоне Trump Tariff War

В индексе S&P 500 кратко испытывалось волатильность на уровне Биткоин после объявления о тарифе президента…

6 часов ago

Пауза Трампа может повысить цену Биткоин свыше 100 000 долларов, Pundit раскрывает точку выхода

Решение Дональда Трампа принять 90-дневную паузу на его тарифах послало новую волну покупки давления на…

6 часов ago

Солана подходит

В настоящее время Solana сталкивается с критической устойчивостью к ликвидности, поскольку более широкий рынок криптовалют…

7 часов ago