9 января ранним утром протокол Truebit Protocol был успешно атакован с использованием ранее нераскрытого контракта, развернутого в ранние годы, в результате чего было потеряно 8 535,36 ETH, что эквивалентно 26,4 миллионам долларов США. Команда безопасности провела глубокий анализ этого инцидента.



Разбор процесса атаки

Хэш основной транзакции атаки: 0xcd4755645595094a8ab984d0db7e3b4aabde72a5c87c4f176a030629c47fb014

Шаги действий злоумышленника ясны:

Сначала вызывается функция getPurchasePrice() для получения информации о цене. Затем переходим к ключевой уязвимости — вызывается дефектная функция 0xa0296215() с установкой очень низкого значения msg.value. Поскольку исходный код контракта не опубликован, результаты декомпиляции показывают, что эта функция содержит арифметическую логическую уязвимость, скорее всего, связанная с неправильной обработкой целочисленного усечения. Именно поэтому злоумышленник смог произвольно создать большое количество токенов TRU.

Далее следует этап вывода средств. Злоумышленник с помощью функции burn "продает" созданные токены обратно контракту, извлекая большое количество ETH. Этот процесс повторялся 4 раза, каждый раз увеличивая значение msg.value, в итоге практически опустошая резерв ETH в контракте.

Отслеживание цепочки финансирования

Согласно данным на блокчейне, команда с помощью инструментов расследования и отслеживания по блокчейну проследила происхождение украденных средств… (оригинальный текст не содержит дальнейшей информации)
ETH-0,94%
TRU-2,94%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 10
  • Репост
  • Поделиться
комментарий
0/400
BridgeJumpervip
· 15ч назад
Опять эта старая ловушка с контрактами, исходный код даже не опубликован, а уже рискуют вложить так много денег...
Посмотреть ОригиналОтветить0
BrokeBeansvip
· 01-11 18:17
Еще один контракт с закрытым исходным кодом, на этот раз действительно взорвался... 26,4 миллиона долларов просто исчезли, как такое низкосортное баги с отсечкой целых чисел могли пройти аудит?
Посмотреть ОригиналОтветить0
LiquidationWizardvip
· 01-11 11:45
Опять какие-то хитрости из-за закрытого исходного кода, давно уже следовало полностью открыть исходный код
Посмотреть ОригиналОтветить0
SerumDegenvip
· 01-09 12:03
честно говоря, это просто переполнение целых чисел с дополнительными шагами... непроверенные контракты остаются непроверенными, я полагаю, лол
Посмотреть ОригиналОтветить0
ForkLibertarianvip
· 01-09 12:01
Черт возьми, снова целочисленное усечение... Как вообще могут быть такие уязвимости?
Посмотреть ОригиналОтветить0
QuorumVotervip
· 01-09 11:57
Целочисленное усечение снова подвело, как вообще есть люди, которые развертывают контракты, исходный код которых не публикуется?
Посмотреть ОригиналОтветить0
SchrodingerWalletvip
· 01-09 11:50
Опять ловушка с непубличным контрактом, на этот раз 26,4 миллиона долларов просто исчезли... Уязвимость с усечением целых чисел просто невероятна
Посмотреть ОригиналОтветить0
MetaMisfitvip
· 01-09 11:48
Опять проблема из-за закрытого исходного кода, в наши дни скрытность только облегчает его изучение
Посмотреть ОригиналОтветить0
BlockImpostervip
· 01-09 11:42
Опять сбой в непубличном контракте, как же хорошо это знакомо.
Посмотреть ОригиналОтветить0
Подробнее
  • Закрепить