Осенью 2017 года разработчики криптовалютного Parity опубликовали в официальном блоге предупреждение, согласно которому, в библиотеке, отвечающей за работу смарт-контракта, который затем используют кошельки с мультиподписью, был обнаружен критический баг.

Обнаруженная уязвимость позволяла превратить проблемную библиотеку/контракт в обычный кошелек с мультиподписью, а затем стать его владельцем, задействовав функцию initWallet. Именно это случайно проделал пользователь, известный под псевдонимом Devops199. Получив полный контроль, он отдал команду на самоуничтожение контракта, что вывело из строя множество кошельков с мультиподписью, а все средства на них оказались блокированы. Представители Parity писали, что в результате действий Devops199 пострадали 587 кошельков, на которых оказались заблокированы 513 774 ETH (порядка 160 млн долларов по курсу на момент возникновения проблемы).

Этот инцидент с Parity привлек внимание группы специалистов из Национального университета Сингапура, Университетского колледжа Лондона, а также гуманитарного колледжа Yale-NUS, который Йельский университет и Национальный университет Сингапура учредили совместно. Эксперты решили разобраться в вопросе и выяснить, много ли еще проблем таят в себе смарт-контракты.

Для проведения исследования (PDF) специалисты создали собственный приватный форк блокчейна Ethereum и разработали специальное решение MAIAN, с помощью которого проанализировали более миллиона смарт-контрактов на предмет потенциальных уязвимостей. Эксперты искали любые проблемы, которые могли бы повлечь за собой «заморозку» криптовалюты, как это произошло с Parity, утечки или полное уничтожение контрактов.

Согласно отчету команды исследователей, потенциальные проблемы были обнаружены в 34 200 смарт-контрактах. Эксперты проверили 3759 из этих контрактов более детально и в лабораторных условиях попробовали эксплуатировать обнаруженные уязвимости. В 89% случаев тесты прошли успешно, и компрометация удалась. Исследователи пишут, что если бы на их месте были злоумышленники, те могли бы похитить примерно 6 000 000 долларов США в Ethereum эквиваленте.

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

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

Оставить мнение