Poolz подвергся атаке арифметического переполнения, многоканальные потери составили 66,5 тысячи долларов США.

robot
Генерация тезисов в процессе

Poolz подвергся атаке переполнения арифметики, убытки составили около 66,5 тысячи долларов США

Недавно на нескольких блокчейн-сетях произошел серьезный инцидент безопасности. Согласно данным мониторинга блокчейна, 15 марта в полночь проект Poolz на сетях Ethereum, BNB Smart Chain и Polygon подвергся хакерской атаке, в результате которой было украдено большое количество токенов.

Атака затронула несколько токенов, включая MEE, ESNC, DON, ASW, KMON, POOLZ и другие. Общая стоимость украденных токенов составляет около 665 000 долларов США. В настоящее время злоумышленники уже обменяли часть украденных токенов на BNB, но еще не перевели средства с адреса атаки.

Poolz подвергся атаке из-за проблемы с переполнением арифметики, убытки составили около 665K долларов!

Анализ показывает, что данная атака в основном использовала арифметическую уязвимость переполнения в смарт-контракте Poolz. Злоумышленник, вызывая функцию CreateMassPools, ловко манипулировал расчетом количества токенов, что позволило ему получить большое количество токенов за очень небольшое количество.

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

Poolz подвергся атаке из-за проблемы с переполнением, убытки составили около 665 тыс. долларов!

Проблема заключается в функции getArraySum. Эта функция отвечает за вычисление количества начальной ликвидности, предоставленного пользователем. Злоумышленник передал специально сконструированный массив, содержащий два огромных числа. Когда эти два числа складываются, из-за ограничения типа uint256 происходит переполнение целого числа, в результате чего окончательный результат становится равным 1.

Однако контракт использует исходное большое значение при записи атрибутов пула. Это создает серьезную несоответствие: злоумышленник фактически перевел только 1 токен, но контракт зафиксировал огромное значение. В конце концов, злоумышленник легко извлек большое количество токенов, вызвав функцию withdraw, завершив весь процесс атаки.

Poolz подвергся атаке из-за проблемы с переполнением арифметики, убытки составили около 665K долларов!

Этот инцидент еще раз подчеркивает важность безопасности смарт-контрактов. Чтобы предотвратить подобные проблемы, разработчикам рекомендуется использовать более новые версии языка программирования Solidity, так как новые версии автоматически выполняют проверку на переполнение во время компиляции. Для проектов, использующих старую версию Solidity, можно рассмотреть возможность внедрения библиотеки SafeMath от OpenZeppelin для решения проблемы переполнения целых чисел.

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

Poolz подвергся атаке из-за переполнения арифметики, потери составили около 665K долларов!

Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 5
  • Поделиться
комментарий
0/400
ShibaOnTheRunvip
· 07-12 01:15
Снова руки черного рынка уязвимости переполнения
Посмотреть ОригиналОтветить0
GateUser-ccc36bc5vip
· 07-11 10:27
Еще один проект обречен
Посмотреть ОригиналОтветить0
GasFeeNightmarevip
· 07-09 09:48
мир криптовалют за один день равен одному году на земле
Посмотреть ОригиналОтветить0
BearMarketMonkvip
· 07-09 09:42
Будут играть для лохов又开始了
Посмотреть ОригиналОтветить0
notSatoshi1971vip
· 07-09 09:38
Отсутствие аудита убивает людей
Посмотреть ОригиналОтветить0
  • Закрепить