Уязвимость в кошельке Argent позволила бы злоумышленникам украсть средства у пользователей, у которых нет опекунов.
Согласно отчету исследователей OpenZeppelin, ошибка могла позволить злоумышленникам захватить кошельки Argent, особенно те, которые не активировали какие-либо защитные функции .
Уязвимость кошелька Argent использована
Функция хранителя позволяет пользователям контролировать определенные действия кошелька, такие как восстановление кошелька и его блокировка. Чтобы создать учетную запись на платформе, пользователям необходимо настроить опекунов. Однако учетные записи, созданные до 30 марта 2020 г., могут быть созданы без опекуна.
Злоумышленники воспользовались ошибкой в коде Argent и запустили процесс восстановления учетных записей, для которых не был настроен опекун. Однако пользователи могут защитить свои средства, регулярно контролируя свои кошельки и отменяя запрос на восстановление в течение 36 часов с момента его выдачи.
Это период восстановления по умолчанию, который теперь можно использовать для защиты средств пользователей. Однако, если пользователь блокирует попытку восстановления, ошибка в кошельке делает его уязвимым для атаки типа «отказ в обслуживании», которая может заморозить его средства на defi период времени.
Это можно сделать, повторно запросив восстановление кошелька, чтобы учетная запись оставалась в периоде восстановления, и пользователь не мог получить доступ к средствам.
Решение
Команда Арджента сообщила, что они будут использовать исправление OpenZeppelin, которое не позволит злоумышленникам запустить восстановление кошелька . Из-за большого количества кошельков, у которых нет опекунов, фирма предложила добавить функцию, которая гарантирует, что если у кошелька нет опекунов, запрос не будет возвращен.
Компания Argent сообщила, что уже связалась с пострадавшими пользователями, чтобы установить хотя бы одного опекуна для их кошелька .