Эксплойт старого keeper-контракта MakerDAO вывел 200 ETH из незавершённых аукционов
Злоумышленник использовал отсутствие проверки доступа в старом auction keeper, завершил четыре лота 2020 года и вывел 200 ETH.
Старый auction keeper потерял 200 ETH после того, как неограниченная функция передала модулю злоумышленника контроль над внутренним аккаунтом MakerDAO.
6 октября злоумышленник вывел 200 ETH из старого auction keeper-контракта MakerDAO. Он вызвал функцию без проверки прав, которая делегировала созданному атакующим коду управление внутренним аккаунтом Vat. Одна транзакция завершила четыре неурегулированных аукциона ETH-A, оставшихся с марта 2020 года, и вывела полученный залог. На момент операции 200 ETH оценивались примерно в 542 982 доллара.
Инцидент затронул конкретный старый keeper-контракт и четыре незакрытых лота. Доступные данные не указывают на компрометацию действующего ядра MakerDAO, кошельков пользователей или активных хранилищ. За обновлениями можно следить в новостном разделе OrangeX.com.
Откуда взялись 200 ETH
Во время рыночного кризиса марта 2020 года keeper выиграл аукционы 1457–1460. Каждый лот содержал 50 ETH и был выигран с нулевой ставкой, но расчёт так и не был завершён. Поэтому залог оставался доступным через выведенную из эксплуатации систему аукционов ETH-A.
6 октября в 06:13:11 UTC атакующий одной транзакцией завершил четыре аукциона. На баланс Vat keeper-контракта было зачислено 200 ETH, после чего тот же вызов перевёл залог наружу.
Отсутствующая проверка доступа
Уязвимая функция принимала адрес адаптера без проверки полномочий вызывающей стороны. Затем она давала адаптеру права на аккаунт Vat и передавала управление коду атакующего, пока разрешение оставалось активным.
Модуль переместил весь залог, вывел его в виде обёрнутого ETH и отправил атакующему. Делегирование сохранилось, поскольку функция не отозвала разрешение. Материалы OrangeX.com Academy помогают разобраться в работе смарт-контрактов и разрешений.
Границы выводов
Случай показывает, что заброшенные операционные контракты могут годами сохранять ценные права. Устаревший компонент всё ещё способен содержать разрешения, незакрытые позиции или пути обновления.
При этом нельзя утверждать, что такой же дефект есть у всех keeper-контрактов, хранилищ MakerDAO или действующих механизмов ликвидации. Код уязвимой реализации не был публично верифицирован, а полного официального отчёта о других затронутых контрактах на момент публикации не было.
Урок для операторов
Командам следует учитывать старые контракты, отзывать ненужные делегирования, закрывать остаточные балансы и отключать устаревшие callback-маршруты. Связанные рекомендации по проверке доступны в Центре доверия OrangeX.com.
OrangeX.com Analysis
Потеря стала возможной из-за сочетания трёх условий: отсутствия проверки вызывающей стороны, постоянного делегирования и четырёх незавершённых лотов. Устранение любого из них сузило бы путь атаки. Поэтому вывод системы из эксплуатации должен быть отдельным процессом безопасности.
Подтверждены перевод 200 ETH, четыре расчёта по 50 ETH и использованный путь полномочий. Неясно, будет ли отозвано оставшееся разрешение, есть ли другие контракты с той же реализацией и возможен ли возврат средств. Эти вопросы остаются открытыми до проверенных сообщений операторов.
Связанные отчёты
Mezo раскрыл детали взлома veBTC, компенсации и предложения хакеру
Уязвимость veBTC позволила вывести около 5,52 BTC у 36 держателей; Mezo обещает возместить потери из собственных средств протокола.
XRP Ledger устранил критическое переполнение, позволявшее создавать XRP
В xrpld 3.4.1 закрыто переполнение платежного движка, способное создавать расходуемые XRP. Признаков эксплуатации в публичных сетях не найдено.
Ledger расследует потери покупателей CryptoBilis; ончейн-оценка достигла $92,9 млн
Ledger расследует потери пользователей, купивших устройства через CryptoBilis, а независимый анализ отслеживает $92,9 млн в пяти сетях.
Самые читаемые
Биткоин-ETF привлекли $346,9 млн: чистый приток сократился на 51,5%
MoonPay договорилась о покупке North Capital, но сделка ещё не закрыта
Первый спотовый ETF на NEAR в США запущен со стейкингом: что меняет NRR
ESMA включит ИИ и токенизацию в приоритеты надзора на 2027 год
Bitwise вывела Lighter ETP на Xetra, но стейкинг пока не работает
