Analyse de l'incident d'attaque du Hacker sur le Poly Network
Récemment, le protocole d'interopérabilité inter-chaînes Poly Network a été victime d'une attaque de hacker, suscitant une large attention dans l'industrie. L'équipe de sécurité a effectué une analyse approfondie de cet événement, révélant les détails techniques de l'attaque et l'ensemble du processus d'attaque.
Attaque du noyau
La clé de l'attaque réside dans la fonction verifyHeaderAndExecuteTx du contrat EthCrossChainManager. Cette fonction peut exécuter des transactions inter-chaînes spécifiques via la fonction _executeCrossChainTx. Étant donné que le propriétaire du contrat EthCrossChainData est le contrat EthCrossChainManager, ce dernier peut appeler la fonction putCurEpochConPubKeyBytes du contrat EthCrossChainData pour modifier le keeper du contrat.
Étapes de l'attaque
L'attaquant passe des données soigneusement conçues via la fonction verifyHeaderAndExecuteTx.
Ces données déclenchent l'exécution de la fonction _executeCrossChainTx, appelant la fonction putCurEpochConPubKeyBytes du contrat EthCrossChainData.
L'attaquant a réussi à changer le rôle de keeper en l'adresse spécifiée.
Une fois le remplacement du keeper terminé, l'attaquant peut construire des transactions à sa guise et retirer n'importe quel montant de fonds du contrat.
Impact de l'attaque
L'attaque a eu lieu sur plusieurs réseaux de blockchain, y compris BSC et Ethereum.
Sur BSC, l'attaquant a effectué l'attaque par le biais de plusieurs transactions.
après modification du keeper, les transactions normales des autres utilisateurs sont refusées.
Les modes d'attaque sur le réseau Ethereum sont similaires à ceux de BSC.
Conclusion
La cause fondamentale de cette attaque réside dans le fait que le keeper du contrat EthCrossChainData peut être modifié par le contrat EthCrossChainManager, dont la fonction verifyHeaderAndExecuteTx peut exécuter les données fournies par l'utilisateur. L'attaquant a exploité cette vulnérabilité en construisant des données spécifiques pour modifier le keeper du contrat EthCrossChainData. Cette découverte réfute la théorie selon laquelle une fuite de clé privée du keeper serait à l'origine de l'attaque.
Cet événement souligne encore une fois l'importance de la sécurité des protocoles inter-chaînes et rappelle aux développeurs qu'ils doivent être plus prudents lors de la conception de contrats intelligents, en particulier dans les étapes clés telles que la gestion des droits et les appels inter-contrats.
Voir l'original
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
6 J'aime
Récompense
6
4
Reposter
Partager
Commentaire
0/400
SchrodingersPaper
· 08-14 16:20
Cut Loss sortir est agréable sur le moment, mais être constamment pris pour un idiot est toujours plaisant.
Voir l'originalRépondre0
AltcoinHunter
· 08-14 16:08
Encore une scène d'escroquerie de type "pig-butchering", regardez comme je vais étudier ce trou sérieusement.
Poly Network a été attaqué par un Hacker, la vulnérabilité du contrat EthCrossChainManager a été exploitée.
Analyse de l'incident d'attaque du Hacker sur le Poly Network
Récemment, le protocole d'interopérabilité inter-chaînes Poly Network a été victime d'une attaque de hacker, suscitant une large attention dans l'industrie. L'équipe de sécurité a effectué une analyse approfondie de cet événement, révélant les détails techniques de l'attaque et l'ensemble du processus d'attaque.
Attaque du noyau
La clé de l'attaque réside dans la fonction verifyHeaderAndExecuteTx du contrat EthCrossChainManager. Cette fonction peut exécuter des transactions inter-chaînes spécifiques via la fonction _executeCrossChainTx. Étant donné que le propriétaire du contrat EthCrossChainData est le contrat EthCrossChainManager, ce dernier peut appeler la fonction putCurEpochConPubKeyBytes du contrat EthCrossChainData pour modifier le keeper du contrat.
Étapes de l'attaque
Impact de l'attaque
Conclusion
La cause fondamentale de cette attaque réside dans le fait que le keeper du contrat EthCrossChainData peut être modifié par le contrat EthCrossChainManager, dont la fonction verifyHeaderAndExecuteTx peut exécuter les données fournies par l'utilisateur. L'attaquant a exploité cette vulnérabilité en construisant des données spécifiques pour modifier le keeper du contrat EthCrossChainData. Cette découverte réfute la théorie selon laquelle une fuite de clé privée du keeper serait à l'origine de l'attaque.
Cet événement souligne encore une fois l'importance de la sécurité des protocoles inter-chaînes et rappelle aux développeurs qu'ils doivent être plus prudents lors de la conception de contrats intelligents, en particulier dans les étapes clés telles que la gestion des droits et les appels inter-contrats.