Finflash logo Finflash logo
Forklog 2021-05-19 08:48:24

Ethereum два года работал с эксплойтом, вызывающим отказ сети

Разработчики Ethereum Foundation раскрыли информацию об уязвимости, позволяющей провести DoS-атаку на блокчейн второй по капитализации криптовалюты. A disclosure about the #Ethereum state problems, which we've been working on fixing for the past two years: https://t.co/GQBh0rFYKf— M H (((Swende))) (@mhswende) May 18, 2021 Уязвимость обнаружили еще в марте 2019 года, но устранить ее удалось лишь с активацией хардфорка Berlin в апреле 2021 года.  По словам разработчиков, уязвимость была «общеизвестным секретом» — ранее ее публично раскрыли по ошибке. После апрельского обновления уровень угрозы снизился достаточно, чтобы рассказать о ней детально. «Важно, чтобы сообщество могло понять причины изменений, негативно влияющих на пользовательский опыт, таких как повышение стоимости газа», — говорится в сообщении. Разработчики объяснили, что состояние Ethereum фиксируется с помощью дерева хешей [Merkle Patricia Tree]. Каждый «лист» этого дерева — аккаунт в сети, поэтому с ростом блокчейна структура становится более плотной.  Между корневым хешем и счетами пользователей есть несколько «промежуточных» нод. Для обращения к конкретному адресу системе необходимо выполнить 8-9 операций.  Низкая стоимость этих транзакций и развитие сети создали риски DoS-атаки. Для ее реализации достаточно запустить поиск по несуществующим адресам. Для решения этой проблемы разработчики изменили алгоритм расчета стоимости газа и интегрировали в клиент Geth механизм динамических снимков состояния [dynamic state snapshots]. Такие снимки представляют собой вторичную структуру данных для хранения состояния сети в формате плоских файлов.  С активацией Berlin эффективность атаки упала в 50 раз. Напомним, в сентябре 2020 года разработчик Storj Брейдон Фуллер рассказал о серьезной уязвимости в программном обеспечении Bitcoin Core. Эксплойт позволял похищать средства и задерживать платежи. 

Read the Disclaimer : All content provided herein our website, hyperlinked sites, associated applications, forums, blogs, social media accounts and other platforms (“Site”) is for your general information only, procured from third party sources. We make no warranties of any kind in relation to our content, including but not limited to accuracy and updatedness. No part of the content that we provide constitutes financial advice, legal advice or any other form of advice meant for your specific reliance for any purpose. Any use or reliance on our content is solely at your own risk and discretion. You should conduct your own research, review, analyse and verify our content before relying on them. Trading is a highly risky activity that can lead to major losses, please therefore consult your financial advisor before making any decision. No content on our Site is meant to be a solicitation or offer.