Раскрытие инцидента с атакой Хакера на Poly Network: Анализ уязвимости контракта EthCrossChainManager

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

Анализ инцидента с атакой на Poly Network Хакер

В последнее время кросс-цепочный протокол взаимодействия Poly Network подвергся атаке Хакера, что вызвало широкий интерес в отрасли. Команда безопасности провела глубокий анализ этого инцидента, раскрывая конкретные детали и процесс атаки.

Принципы атаки

Суть этой атаки заключается в уязвимости функции verifyHeaderAndExecuteTx в контракте EthCrossChainManager. Злоумышленник передал тщательно сконструированные данные через эту функцию, что позволило ему успешно изменить keeper контракта EthCrossChainData на указанный адрес. Это противоречит ранее распространённой версии о утечке приватного ключа keeper.

Атакующий воспользовался следующими ключевыми моментами:

  1. Функция verifyHeaderAndExecuteTx контракта EthCrossChainManager может выполнять кросс-чейн транзакции через функцию _executeCrossChainTx.

  2. Владельцем контракта EthCrossChainData является контракт EthCrossChainManager, который может вызывать функцию putCurEpochConPubKeyBytes предыдущего контракта для изменения keeper.

  3. Атакующий конструирует определенные данные, вызывая функцию verifyHeaderAndExecuteTx для вызова _executeCrossChainTx, в результате чего выполняется функция putCurEpochConPubKeyBytes, изменяя keeper на адрес, контролируемый атакующим.

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

Процесс атаки

Атаки в основном происходят на двух сетях: Binance Smart Chain (BSC) и Ethereum, процесс примерно одинаковый:

  1. Атакующий сначала вызывает функцию putCurEpochConPubKeyBytes через функцию verifyHeaderAndExecuteTx контракта EthCrossChainManager, чтобы изменить keeper.

  2. после замены keeper, атакующий начинает осуществлять серию атакующих сделок, извлекая средства из контракта.

  3. После завершения атаки, из-за изменения keeper, нормальные транзакции других пользователей были откатаны.

!

Влияние событий

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

Безопасные рекомендации

  1. Дизайн контракта должен быть более тщательным, особенно в отношении управления правами ключевых ролей (таких как keeper).

  2. Безопасность межконтрактных вызовов требует комплексной оценки, чтобы избежать уязвимостей, которые могут быть использованы злоумышленниками.

  3. Регулярно проводить полные аудиты безопасности, своевременно выявляя и устраняя потенциальные риски.

  4. Создание многофакторной системы проверки, чтобы избежать системных рисков, связанных с единичной точкой отказа.

  5. Укрепить возможности мониторинга в реальном времени и реагирования на чрезвычайные ситуации, чтобы быстро реагировать и принимать необходимые меры в случае атаки.

Этот инцидент прозвучал как тревога для всей блокчейн-индустрии, напоминая разработчикам и проектным командам о необходимости всегда ставить безопасность на первое место и постоянно улучшать и оптимизировать проектирование протоколов.

Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 5
  • Поделиться
комментарий
0/400
AlphaBrainvip
· 07-31 16:42
Не понимая контракт, пришел играть с цепочкой?
Посмотреть ОригиналОтветить0
SlowLearnerWangvip
· 07-31 16:42
Эй, вот и пришло время мне подняться на борт... Я всегда говорил, что у контрактов не бывает недостатков.
Посмотреть ОригиналОтветить0
SandwichHuntervip
· 07-31 16:37
Эй, снова вижу уязвимость контракта, базовые операции не делайте.
Посмотреть ОригиналОтветить0
BoredWatchervip
· 07-31 16:26
Веселье с контрактными переводами снова пришло~
Посмотреть ОригиналОтветить0
DegenRecoveryGroupvip
· 07-31 16:17
Кто снова взорвал контракт? Можно еще хакнуть?
Посмотреть ОригиналОтветить0
  • Закрепить