Poly Network подвергся атаке Хакера: технический сбой привел к краже средств
Протокол межсетевого взаимодействия Poly Network недавно подвергся атаке Хакера, что вызвало широкий интерес в отрасли. По анализу команды безопасности, эта атака не была вызвана утечкой приватного ключа keeper, а злоумышленники использовали уязвимость контракта, изменив адрес keeper контракта EthCrossChainData с помощью конструкции определенных данных.
Детали атаки
Атака заключается в том, что функция verifyHeaderAndExecuteTx контракта EthCrossChainManager может выполнять кросс-чейн транзакции через функцию _executeCrossChainTx.
Владелец контракта EthCrossChainData является контрактом EthCrossChainManager, который может вызывать функцию putCurEpochConPubKeyBytes первого контракта для изменения хранителя.
Атакующий передает тщательно сконструированные данные через функцию verifyHeaderAndExecuteTx, что приводит к вызову функции putCurEpochConPubKeyBytes контракта EthCrossChainData в функции _executeCrossChainTx, изменяя роль хранителя на адрес, указанный атакующим.
После замены адреса keeper, хакер может произвольно создавать транзакции для извлечения средств из контракта.
Процесс атаки
Атакующий сначала вызывает функцию putCurEpochConPubKeyBytes через функцию verifyHeaderAndExecuteTx контракта EthCrossChainManager, чтобы изменить keeper.
Затем атакующий осуществляет несколько атакующих транзакций, извлекая средства из контракта.
После завершения атаки, из-за изменения keeper, нормальные транзакции других пользователей были отменены.
Атакующий также провел аналогичные операции в сети Эфириум, изменив keeper и осуществив атаку.
!
Итог
Атака в основном использовала уязвимость контракта EthCrossChainData, в которой keeper может быть изменен контрактом EthCrossChainManager. Злоумышленник передал тщательно сконструированные данные через функцию verifyHeaderAndExecuteTx, изменив keeper контракта EthCrossChainData на адрес, который он контролирует, что дало ему право на вывод средств. Этот инцидент снова подчеркивает важность аудита безопасности смарт-контрактов и необходимость более тщательного рассмотрения различных потенциальных рисков при проектировании кросс-цепочных протоколов.
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
18 Лайков
Награда
18
4
Поделиться
комментарий
0/400
ColdWalletGuardian
· 5ч назад
Снова попал под удар...
Посмотреть ОригиналОтветить0
LiquidatedNotStirred
· 5ч назад
Снова провал контракта
Посмотреть ОригиналОтветить0
governance_ghost
· 6ч назад
Смеюсь до слез, код на самом деле является сутью rug.
Посмотреть ОригиналОтветить0
CompoundPersonality
· 6ч назад
Еще одна новая уязвимость? Разработчики не могут работать более стабильно?
Poly Network была взломана: уязвимость контракта привела к вмешательству в работу Keeper
Poly Network подвергся атаке Хакера: технический сбой привел к краже средств
Протокол межсетевого взаимодействия Poly Network недавно подвергся атаке Хакера, что вызвало широкий интерес в отрасли. По анализу команды безопасности, эта атака не была вызвана утечкой приватного ключа keeper, а злоумышленники использовали уязвимость контракта, изменив адрес keeper контракта EthCrossChainData с помощью конструкции определенных данных.
Детали атаки
Атака заключается в том, что функция verifyHeaderAndExecuteTx контракта EthCrossChainManager может выполнять кросс-чейн транзакции через функцию _executeCrossChainTx.
Владелец контракта EthCrossChainData является контрактом EthCrossChainManager, который может вызывать функцию putCurEpochConPubKeyBytes первого контракта для изменения хранителя.
Атакующий передает тщательно сконструированные данные через функцию verifyHeaderAndExecuteTx, что приводит к вызову функции putCurEpochConPubKeyBytes контракта EthCrossChainData в функции _executeCrossChainTx, изменяя роль хранителя на адрес, указанный атакующим.
После замены адреса keeper, хакер может произвольно создавать транзакции для извлечения средств из контракта.
Процесс атаки
Атакующий сначала вызывает функцию putCurEpochConPubKeyBytes через функцию verifyHeaderAndExecuteTx контракта EthCrossChainManager, чтобы изменить keeper.
Затем атакующий осуществляет несколько атакующих транзакций, извлекая средства из контракта.
После завершения атаки, из-за изменения keeper, нормальные транзакции других пользователей были отменены.
Атакующий также провел аналогичные операции в сети Эфириум, изменив keeper и осуществив атаку.
!
Итог
Атака в основном использовала уязвимость контракта EthCrossChainData, в которой keeper может быть изменен контрактом EthCrossChainManager. Злоумышленник передал тщательно сконструированные данные через функцию verifyHeaderAndExecuteTx, изменив keeper контракта EthCrossChainData на адрес, который он контролирует, что дало ему право на вывод средств. Этот инцидент снова подчеркивает важность аудита безопасности смарт-контрактов и необходимость более тщательного рассмотрения различных потенциальных рисков при проектировании кросс-цепочных протоколов.