BTC 96589.5$
ETH 3187.09$
Tether (USDT) 1$
Toncoin (TON) 5.32$
telegram vk
telegram vk Х
Russian English
"

Эксплойт со скидкой на газ обнаружен в обновлении протокола DittoETH

Дата публикации:13.09.2024, 08:44
725
725
Поделись с друзьями!

Децентрализованная аудиторская платформа Code4rena обнаружила эксплойт в новом обновлении алгоритмической платформы стейблкоинов DittoETH. Этот эксплойт позволил бы пользователю с большим количеством депонированных токенов получать чрезмерную прибыль, увеличивая безнадежные долги в протоколе и, в конечном счете, ставя под угрозу его способность к выживанию.

Обнаружение означает, что уязвимость не будет добавлена в рабочую версию DittoETH, поскольку она была устранена путем устранения неполадок в более новой тестовой версии.

Block, специалист по поиску талантов для образовательной компании Web3 Rare Skills, сообщил об обнаружении данной уязвимости на X.

Рисунок 1. Источник: Block.

Согласно документам, Code4rena является краудсорсинговой аудиторской платформой. Ее участники делятся на три группы: спонсоры, надзиратели и судьи.

Спонсорами являются протоколы Web3, которые предлагают призы в обмен на обнаружение уязвимостей. Надзиратели соревнуются друг с другом в поиске уязвимостей в обмен на денежный приз. Судьи разрешают споры между спонсорами и надзирателями о том, является ли уязвимость реальной и в чем состоит ее серьезность. 

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

По словам Block, уязвимость была обнаружена надзирателем Code4rena под псевдонимом あああああ (в переводе с японского, «Ааааа»). Команда DittoETH изначально не верила в реальность уязвимости, но позже отказалась от своих возражений после того, как Aaaaa представил дополнительные доказательства.

Уязвимость заключалась в неисправном механизме распределения вознаграждений в стейблкоинах среди вкладчиков в хранилище yDUSD от DittoETH.

Пользователи могут добавить собственный стейблкоин протокола, dUSD, в это хранилище, чтобы получать доход. Этот доход достигается за счет «комиссионных скидок», которые генерируются на платформе в периоды, когда реальные цены на токены отличаются от цен, предоставляемых оракулом. Цель этой системы - стимулировать поставщиков ликвидности добавлять ликвидность в периоды рыночного стресса.

Несмотря на то, что в названии содержится слово «комиссия», комиссионные за скидки никем не выплачиваются. Вместо этого они выплачиваются в виде новоиспеченных токенов и отправляются в хранилище yDUSD. Всякий раз, когда это происходит, соответствующий долг платформы также увеличивается пропорционально этой сумме.

Надзорный орган обнаружил, что математическая ошибка в функции «matchIsDiscounted» может привести к возникновению больших сумм задолженности при небольшом объеме торгов, что противоречит замыслу протокола, который предусматривает выплату этих комиссионных только в периоды рыночного стресса.

В своем отчете Block заявила, что «ключевым моментом является то, что шаги 6-9 выполняются только в том случае, если дисконтированная сумма превышает определенный порог общего долга. Когда они выполняются, они создают новый долг на основе всего долга системы, а не только дисконтированной суммы. Именно в этом кроется основная причина уязвимости, поскольку небольшие сделки со скидкой могут привести к непропорционально большому новому долгу и чеканке токенов».

Рисунок 2. Схема системы скидочных сборов для DittoETH. Источник: Block.

15 июля Aaaaa опубликовал объяснение эксплойта на github проекта. В ответ члены команды DittoETH и, по крайней мере, один судья Code4rena изначально заявили, что злоумышленник не сможет создать безнадежный долг, поскольку другие участники присоединятся к пулу и «разбавят» прибыль злоумышленника.

Однако Aaaaa ответил, что злоумышленник не может быть разбавлен, поскольку «депозиты не влияют на то, на какой объем активов может претендовать токен».

Aaaaa также написал тест в Foundry, который имитировал атаку, и «другие пользователи внесли большое количество средств в хранилище». Они пригласили членов команды провести тест на своих устройствах.

Сообщается, что тест показал, что злоумышленник заработал 20 454,54 доллара, создав новый долг за протокол, который равен этой сумме. Предположительно, эта атака может быть повторена для получения еще большей выгоды.

12 июля судья Ханс Фрисс (Hans Friesse) оценил заявку как «удовлетворительную», указав, что команда Aaaaa получит приз. Представитель DittoETH также снял свои возражения, заявив: «это действительно так, хорошая находка».

Аудит касался непроизводственной копии кода протокола. Но если бы уязвимость была пропущена, ее, возможно, можно было бы внедрить в блокчейн и использовать в естественных условиях. 

Эксплойты DeFi могут иметь разрушительные последствия, если уязвимости не будут обнаружены до их внедрения. В апреле сеть Ronin gaming потеряла 9,8 миллиона долларов после того, как была обнаружена новая уязвимость в ходе обновления. В марте пользователи платформы DeFi Unizen потеряли более 2 миллионов долларов, когда злоумышленник обнаружил «одобренную» уязвимость в рабочей копии платформы.

Подписывайся на наш Telegram канал. Не трать время на мониторинг новостей. Только срочные и важные новости

https://t.me/block_chain24