MetaTrust Labs Дэниела Тана
01
Краткое содержание
3 января 2024 года по пекинскому времени протокол Radiant на Arbitrum подвергся атаке с помощью срочных кредитов. Хакеры провели 3 атаки на протокол #Radiant, в результате которых было потеряно 1902 ETH (на сумму $4,5 млн). Основная причина — проблема математического округления в функции «сжигания», которая была расширена и использована на новом рынке $USDC, позволяя хакерам выводить дополнительные $USDC. MetaTrust Labs провела углубленное исследование и анализ этой атаки, выявив, как хакеры воспользовались уязвимостью для запуска атаки.
02
Протокол кредитования Протокол Radiant
Radiant — это децентрализованный протокол кредитования, не связанный с хранением, который работает в нескольких цепочках, включая Arbitrum, BNBChain и Ethereum.
После атаки общая стоимость, заблокированная в протоколе Radiant, по-прежнему составляла $313 млн. Это произошло потому, что команда проекта быстро приостановила работу протокола после атаки, чтобы предотвратить дальнейшие потери.
03
Лента новостей
04
торговля
04
торговля
0xc5c4bbddec70edb58efba60c1f27bce6515a45ffcab4236026a5eeb3e877fc6d0x2af556386c023f7ebe7c662fd5d1c6cc5ed7fba4723cbd75e00faaa98cd142430x1ce7e9 a9e3b6dd3293c9067221ac3260858ce119ecb7ca860eac28b2474c7c9b
05
потеря активов
Три транзакции атаки привели к общей потере более 1902 ETH на сумму более 4,5 миллионов долларов США. На момент написания в кошельке хакера (0x826d5f4d8084980366f975e10db6c4cf1f9dde6d) все еще хранилось 1902 $ETH.
злоумышленник
0x826d5f4d8084980366f975e10db6c4cf1f9dde6d
Контракт на атаку
0x39519c027b503f40867548fb0c890b11728faa8f
Контракт под угрозой
Radiant: Кредитный пул: 0xf4b1486dd74d07706052a33d31d7c0aafd0659e1rUSDCn: 0x3a2d44e354f2d88ef6da7a5a4646fd70182a7f55
06
что произошло перед нападением
За пятнадцать секунд до атаки участник проекта только что создал новый рынок USDC на Arbitrum, и хакер был первым, кто взаимодействовал с новым рынком USDC.
07
Шаги атаки
В качестве примера возьмем первую атакующую транзакцию 0x1ce7e9a9e3b6dd3293c9067221ac3260858ce119ecb7ca860eac28b2474c7c9b. 1. Занять 3 миллиона долларов США у AAVE через функцию мгновенного кредита 2. Внести 2 миллиона долларов США в Radiant Pool. В настоящее время индекс ликвидности равен 1e27.
3. Выдайте мгновенный кредит в размере 2 миллионов долларов США в Radiant Lending Pool и увеличьте индекс ликвидности до 1,8e36. 4. Повторите шаг 3 151 раз, чтобы увеличить индекс liauidityIndex до 2,7e38, что в 270000000000 раз превышает исходное значение.
5. Занять 90,6 $ETH у Radiant Pool на сумму $215 тыс., что является прибылью от этой атаки 6. Создать новый контракт (0xd8b591) 7. Утвердить неограниченное количество долларов США для нового контракта и перевести 543 тыс. долларов США USDC в новый контракт и используйте новый контракт для выполнения следующих шагов: перенесите 543 000 долларов США в новый контракт и используйте новый контракт для выполнения следующих шагов: 8. Внесите 543 000 долларов США в пул Radiant и выпустите 2 токена wei, потому что Масштабируемая сумма равна 2 токенам Coin, 543600000002*1e27/2718000000009999999999999998631966035920=2;
9. Вывод 407 тыс. долларов США USDC из пула Radiant, сжигание только 1 Wei токенов, поскольку sumScaled равно 1, 407700000000*1e27/271800000000999999999999998631966035920=1,5 и проблемы с математическим округлением. Обратите внимание, что sumScaled — это переменная типа uint256, которая преобразует 1,5 в 1.
10. Внесите 271 тыс. долларов США в пул Radiant и выпустите жетоны на сумму 1, начиная с 271800000001*1e27/27180000000099999999999999998631966035920=1. 11. Выведите 407 тыс. долларов США в пул Radiant и уничтожьте только суммы, указанные в масштабе до 1 жетона. 12. Повторите шаги 10 и 11 до 18 раз и слейте с нового рынка доллары США USDC, которые хакер ранее внес на новый рынок. 13. Конвертируйте 2 $WETH в 4,73 тыс. $USDC и 3,23 тыс. $USDC в 1,36 $WETH. 14. Используйте 3,5 миллиона долларов США в качестве основной суммы и 15 000 долларов США в качестве комиссии для погашения срочного кредита AAVE. 15. Прибыль в размере $90 ETH.
08
первопричина
Основная причина заключается в том, что хакер первым вошел в контакт с недавно созданным собственным рынком USDC, воспользовался функцией мгновенного кредитования протокола Radiant для увеличения индекса ликвидности и использовал проблемы математического округления для кражи активов из кредитного пула.
09
ключевой код
О лаборатории МетаТраст
MetaTrust Labs — ведущий поставщик инструментов безопасности искусственного интеллекта Web3 и услуг аудита кода, созданных Наньянским технологическим университетом в Сингапуре. Мы предоставляем передовые решения искусственного интеллекта, которые позволяют разработчикам и участникам проекта защищать приложения Web3 и смарт-контракты. Наши комплексные услуги включают сканирование безопасности с помощью искусственного интеллекта, аудит кода, мониторинг смарт-контрактов и мониторинг транзакций. Интегрируя искусственный интеллект, мы обеспечиваем безопасную экосистему и повышаем доверие между пользователями и разработчиками.
Все комментарии