Poly Network sufrió un ataque de Hacker: una vulnerabilidad técnica llevó al robo de fondos
El protocolo de interoperabilidad entre cadenas Poly Network ha sido recientemente atacado por un Hacker, lo que ha generado una amplia atención en la industria. Según el análisis del equipo de seguridad, este ataque no se debió a la filtración de la clave privada del keeper, sino que el atacante aprovechó una vulnerabilidad del contrato, modificando la dirección del keeper del contrato EthCrossChainData al construir datos específicos.
Detalles del ataque
El núcleo del ataque radica en que la función verifyHeaderAndExecuteTx del contrato EthCrossChainManager puede ejecutar transacciones entre cadenas a través de la función _executeCrossChainTx.
El propietario del contrato EthCrossChainData es el contrato EthCrossChainManager, que puede llamar a la función putCurEpochConPubKeyBytes del primero para modificar el keeper.
El atacante pasa datos meticulosamente construidos a la función verifyHeaderAndExecuteTx, lo que hace que la función _executeCrossChainTx llame a la función putCurEpochConPubKeyBytes del contrato EthCrossChainData, cambiando el rol de keeper a la dirección especificada por el atacante.
Después de completar el reemplazo de la dirección del keeper, el atacante puede construir transacciones a su antojo para extraer fondos del contrato.
Proceso de ataque
El atacante primero llama a la función putCurEpochConPubKeyBytes a través de la función verifyHeaderAndExecuteTx del contrato EthCrossChainManager para cambiar el keeper.
A continuación, el atacante realizó múltiples transacciones de ataque para extraer fondos del contrato.
Después del ataque, debido a que el keeper fue modificado, las transacciones normales de otros usuarios fueron revertidas.
El atacante también realizó operaciones similares en la red de Ethereum, cambiando el keeper e implementando el ataque.
Resumen
Este ataque aprovechó principalmente una vulnerabilidad en el contrato EthCrossChainData, donde el keeper puede ser modificado por el contrato EthCrossChainManager. El atacante utilizó la función verifyHeaderAndExecuteTx para introducir datos cuidadosamente elaborados, modificando el keeper del contrato EthCrossChainData a una dirección bajo su control, lo que le permitió obtener permisos para retirar fondos. Este evento resalta una vez más la importancia de la auditoría de seguridad de los contratos inteligentes y la necesidad de considerar con más cuidado los diversos riesgos potenciales al diseñar protocolos de cadena cruzada.
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
18 me gusta
Recompensa
18
4
Compartir
Comentar
0/400
ColdWalletGuardian
· hace7h
Otra vez me han atacado...
Ver originalesResponder0
LiquidatedNotStirred
· hace7h
Otra vez el contrato se estrella
Ver originalesResponder0
governance_ghost
· hace8h
Reírse hasta morir, el código es la esencia del rug.
Ver originalesResponder0
CompoundPersonality
· hace8h
¿Otra nueva vulnerabilidad? ¿Los desarrolladores no pueden ser más estables?
Poly Network sufrió un ataque de Hacker: un fallo en el contrato llevó a la modificación del keeper.
Poly Network sufrió un ataque de Hacker: una vulnerabilidad técnica llevó al robo de fondos
El protocolo de interoperabilidad entre cadenas Poly Network ha sido recientemente atacado por un Hacker, lo que ha generado una amplia atención en la industria. Según el análisis del equipo de seguridad, este ataque no se debió a la filtración de la clave privada del keeper, sino que el atacante aprovechó una vulnerabilidad del contrato, modificando la dirección del keeper del contrato EthCrossChainData al construir datos específicos.
Detalles del ataque
El núcleo del ataque radica en que la función verifyHeaderAndExecuteTx del contrato EthCrossChainManager puede ejecutar transacciones entre cadenas a través de la función _executeCrossChainTx.
El propietario del contrato EthCrossChainData es el contrato EthCrossChainManager, que puede llamar a la función putCurEpochConPubKeyBytes del primero para modificar el keeper.
El atacante pasa datos meticulosamente construidos a la función verifyHeaderAndExecuteTx, lo que hace que la función _executeCrossChainTx llame a la función putCurEpochConPubKeyBytes del contrato EthCrossChainData, cambiando el rol de keeper a la dirección especificada por el atacante.
Después de completar el reemplazo de la dirección del keeper, el atacante puede construir transacciones a su antojo para extraer fondos del contrato.
Proceso de ataque
El atacante primero llama a la función putCurEpochConPubKeyBytes a través de la función verifyHeaderAndExecuteTx del contrato EthCrossChainManager para cambiar el keeper.
A continuación, el atacante realizó múltiples transacciones de ataque para extraer fondos del contrato.
Después del ataque, debido a que el keeper fue modificado, las transacciones normales de otros usuarios fueron revertidas.
El atacante también realizó operaciones similares en la red de Ethereum, cambiando el keeper e implementando el ataque.
Resumen
Este ataque aprovechó principalmente una vulnerabilidad en el contrato EthCrossChainData, donde el keeper puede ser modificado por el contrato EthCrossChainManager. El atacante utilizó la función verifyHeaderAndExecuteTx para introducir datos cuidadosamente elaborados, modificando el keeper del contrato EthCrossChainData a una dirección bajo su control, lo que le permitió obtener permisos para retirar fondos. Este evento resalta una vez más la importancia de la auditoría de seguridad de los contratos inteligentes y la necesidad de considerar con más cuidado los diversos riesgos potenciales al diseñar protocolos de cadena cruzada.