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

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

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

15 марта в полночь Poolz подвергся атаке в сети Ethereum, Binance Smart Chain и Polygon, в результате чего было похищено множество токенов на общую сумму около 665 000 долларов США. Злоумышленники использовали уязвимость арифметического переполнения в смарт-контракте, в результате чего им удалось получить значительное количество токенов.

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

Атакующий создает массовые ликвидные пулы, вызывая функцию CreateMassPools. Эта функция имеет критическую уязвимость, которая позволяет атакующему обходить обычные проверки ликвидности с помощью тщательно подобранных параметров. В частности, атакующий воспользовался проблемой переполнения целого числа в функции getArraySum.

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

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

Функция getArraySum при суммировании переданного массива _StartAmount из-за проблемы переполнения в конечном итоге возвращает значение 1. Однако функция CreatePool все еще использует исходное значение _StartAmount для записи. Это приводит к тому, что злоумышленник, переведя всего 1 токен, может зарегистрировать в системе большое количество ложной ликвидности.

После выполнения этого шага злоумышленник просто вызывает функцию withdraw для извлечения токенов, завершая весь процесс атаки.

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

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

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

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

Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 3
  • Поделиться
комментарий
0/400
GweiWatchervip
· 07-14 06:30
Ещё одна уязвимость контракта.
Посмотреть ОригиналОтветить0
SignatureCollectorvip
· 07-14 06:18
66w просто так пропали??
Посмотреть ОригиналОтветить0
Whale_Whisperervip
· 07-14 06:04
Снова увидели баг в смарт-контрактах
Посмотреть ОригиналОтветить0
  • Закрепить