Récemment, le protocole d'interopérabilité inter-chaînes Poly Network a été victime d'une attaque de hacker, suscitant un large intérêt dans l'industrie. Une équipe d'experts en sécurité a mené une analyse approfondie de cet incident, concluant que les attaquants n'avaient pas mené l'attaque par une fuite de clé privée, mais avaient utilisé une vulnérabilité de contrat pour modifier des paramètres clés.
Attaque du cœur
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 a le droit d'appeler la fonction putCurEpochConPubKeyBytes du contrat EthCrossChainData pour modifier le keeper du contrat.
Processus d'attaque
L'attaquant passe des données soigneusement construites via la fonction verifyHeaderAndExecuteTx.
Ces données déclenchent l'exécution de la fonction _executeCrossChainTx, appelant la fonction putCurEpochConPubKeyBytes du contrat EthCrossChainData.
Cette opération changera le rôle de keeper à l'adresse spécifiée par l'attaquant.
Une fois le remplacement du keeper effectué, l'attaquant peut alors construire des transactions pour extraire n'importe quelle quantité de fonds du contrat.
Impact de l'attaque
Après l'attaque, en raison de la modification du keeper, les transactions normales des autres utilisateurs ont été refusées. Ce problème a non seulement affecté le réseau BSC, mais un mode d'attaque similaire est également apparu sur le réseau Ethereum.
Réflexion sur l'événement
Cet incident a révélé des risques potentiels dans la conception des contrats intelligents. La clé réside dans le fait que le keeper du contrat EthCrossChainData peut être modifié par le contrat EthCrossChainManager, qui permet également l'exécution des données fournies par l'utilisateur. Ce type de conception offre une opportunité aux attaquants.
À l'avenir, des projets similaires devront être plus prudents dans la conception de mécanismes d'interaction inter-chaînes, en tenant compte des problèmes de gestion des droits et de validation des données. Renforcer l'isolement de sécurité entre les contrats, limiter les conditions d'exécution des opérations sensibles, sont autant de directions d'amélioration à envisager.
Cette attaque nous rappelle une fois de plus que la sécurité est toujours un facteur primordial dans l'écosystème de la blockchain. L'amélioration continue des mécanismes d'audit de sécurité et d'évaluation des risques est essentielle pour maintenir le développement sain de l'ensemble de l'écosystème.
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.
7 J'aime
Récompense
7
5
Reposter
Partager
Commentaire
0/400
MemecoinTrader
· Il y a 23h
les exploits amateurs, c'est tellement 2021... le véritable alpha est dans l'arbitrage du sentiment social en ce moment
Voir l'originalRépondre0
rugdoc.eth
· 08-08 16:37
Contrat gg, je ne peux pas regarder.
Voir l'originalRépondre0
Ramen_Until_Rich
· 08-08 16:37
Vraiment, ils ne savent que modifier les contrats...
Voir l'originalRépondre0
BearMarketBuyer
· 08-08 16:32
Est-ce que c'est acceptable d'avoir été volé ?
Voir l'originalRépondre0
DegenMcsleepless
· 08-08 16:30
Les frères sont tous trop faibles, il y a beaucoup de failles.
Poly Network Hacker attaque événement dévoilé : un contrat vulnérable a conduit à la falsification du keeper
Analyse de l'incident de hack de Poly Network
Récemment, le protocole d'interopérabilité inter-chaînes Poly Network a été victime d'une attaque de hacker, suscitant un large intérêt dans l'industrie. Une équipe d'experts en sécurité a mené une analyse approfondie de cet incident, concluant que les attaquants n'avaient pas mené l'attaque par une fuite de clé privée, mais avaient utilisé une vulnérabilité de contrat pour modifier des paramètres clés.
Attaque du cœur
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 a le droit d'appeler la fonction putCurEpochConPubKeyBytes du contrat EthCrossChainData pour modifier le keeper du contrat.
Processus d'attaque
L'attaquant passe des données soigneusement construites via la fonction verifyHeaderAndExecuteTx.
Ces données déclenchent l'exécution de la fonction _executeCrossChainTx, appelant la fonction putCurEpochConPubKeyBytes du contrat EthCrossChainData.
Cette opération changera le rôle de keeper à l'adresse spécifiée par l'attaquant.
Une fois le remplacement du keeper effectué, l'attaquant peut alors construire des transactions pour extraire n'importe quelle quantité de fonds du contrat.
Impact de l'attaque
Après l'attaque, en raison de la modification du keeper, les transactions normales des autres utilisateurs ont été refusées. Ce problème a non seulement affecté le réseau BSC, mais un mode d'attaque similaire est également apparu sur le réseau Ethereum.
Réflexion sur l'événement
Cet incident a révélé des risques potentiels dans la conception des contrats intelligents. La clé réside dans le fait que le keeper du contrat EthCrossChainData peut être modifié par le contrat EthCrossChainManager, qui permet également l'exécution des données fournies par l'utilisateur. Ce type de conception offre une opportunité aux attaquants.
À l'avenir, des projets similaires devront être plus prudents dans la conception de mécanismes d'interaction inter-chaînes, en tenant compte des problèmes de gestion des droits et de validation des données. Renforcer l'isolement de sécurité entre les contrats, limiter les conditions d'exécution des opérations sensibles, sont autant de directions d'amélioration à envisager.
Cette attaque nous rappelle une fois de plus que la sécurité est toujours un facteur primordial dans l'écosystème de la blockchain. L'amélioration continue des mécanismes d'audit de sécurité et d'évaluation des risques est essentielle pour maintenir le développement sain de l'ensemble de l'écosystème.