USM подвергся атаке, понес убытки примерно в 70.83 ETH
Сообщение ChainCatcher, в функции выкупа defund() контракта USM обнаружена ошибка в логике ценообразования ethFromDefund(). Эта функция при расчете однократного выкупа использует арифметическое среднее текущей цены продажи FUM и предполагаемой конечной цены продажи FUM, однако этот алгоритм не обладает инвариантностью разбиения.
После наложения коэффициента сжатия состояния adjShrinkFactor, связанного с однократным выкупом, и механизма округления до целого числа, равное количество активов FUM, разбитое на 64 мелких операции выкупа, в конечном итоге позволит извлечь значительно большее количество эфира, чем при однократном крупном выкупе.
Связанные теги






