Análisis de vulnerabilidades de seguridad del protocolo cross-chain: análisis del ataque a Poly Network
Recientemente, un ataque de hackers contra el protocolo de interoperabilidad cross-chain Poly Network ha generado una amplia atención en la industria. Según el análisis del equipo de seguridad, este ataque no fue causado por la filtración de la clave privada del keeper, sino que los atacantes aprovecharon hábilmente una vulnerabilidad en el contrato inteligente.
Núcleo de ataque
La clave del ataque radica en la función verifyHeaderAndExecuteTx del contrato EthCrossChainManager. Esta función puede ejecutar transacciones específicas de cross-chain a través de la función _executeCrossChainTx. Dado que el propietario del contrato EthCrossChainData es el contrato EthCrossChainManager, este último puede invocar la función putCurEpochConPubKeyBytes del primero para modificar el keeper del contrato.
Proceso de ataque
El atacante envía datos cuidadosamente diseñados a través de la función verifyHeaderAndExecuteTx.
Estos datos hacen que la función _executeCrossChainTx llame a la función putCurEpochConPubKeyBytes del contrato EthCrossChainData.
A través de la operación anterior, el atacante logró cambiar el rol de keeper a la dirección especificada.
Una vez que se completa el reemplazo del keeper, el atacante puede construir transacciones a su antojo y extraer cualquier cantidad de fondos del contrato.
Impacto del ataque
Después del ataque, debido a que el keeper fue modificado, las transacciones normales de otros usuarios fueron rechazadas. Esta situación ha ocurrido en múltiples redes de blockchain, incluyendo la cadena inteligente de Binance y Ethereum.
Revelación de seguridad
La gestión de permisos en los contratos inteligentes es crucial, especialmente en lo que respecta a los permisos de modificación de roles clave (como el keeper).
La seguridad de las operaciones cross-chain necesita atención especial, ya que generalmente implican interacciones complejas y activos de alto valor.
El diseño de las funciones del contrato debe restringir estrictamente el ámbito de las operaciones ejecutables, evitando la aparición de vulnerabilidades que puedan ser explotadas por atacantes.
Realizar auditorías de seguridad y detección de vulnerabilidades de manera regular es crucial para identificar y corregir problemas potenciales.
Este incidente nos recuerda una vez más que, en un ecosistema de blockchain en rápida evolución, la seguridad siempre debe ser la principal preocupación. Para los desarrolladores y las partes del proyecto, mejorar continuamente las medidas de seguridad y aumentar la calidad del código son claves para proteger los activos de los usuarios.
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.
19 me gusta
Recompensa
19
5
Republicar
Compartir
Comentar
0/400
DefiSecurityGuard
· 07-29 04:55
mmm típico exploit de dirección de keeper... lo vi venir, la verdad. cross-chain siempre = honeypot a la espera de suceder
Ver originalesResponder0
BlockchainBouncer
· 07-26 16:18
Otra vez los tontos están en problemas.
Ver originalesResponder0
WenAirdrop
· 07-26 16:12
Es malo en la cocina y le gusta aparentar.
Ver originalesResponder0
BearMarketMonk
· 07-26 16:08
Otra vez golpeado, voy a ver el espectáculo.
Ver originalesResponder0
DAOdreamer
· 07-26 16:08
La auditoría de seguridad se hace de manera perezosa, los permisos de gestión se manejan de forma tranquilita.
Poly Network fue atacado: un fallo en los contratos inteligentes provocó un evento de seguridad cross-chain
Análisis de vulnerabilidades de seguridad del protocolo cross-chain: análisis del ataque a Poly Network
Recientemente, un ataque de hackers contra el protocolo de interoperabilidad cross-chain Poly Network ha generado una amplia atención en la industria. Según el análisis del equipo de seguridad, este ataque no fue causado por la filtración de la clave privada del keeper, sino que los atacantes aprovecharon hábilmente una vulnerabilidad en el contrato inteligente.
Núcleo de ataque
La clave del ataque radica en la función verifyHeaderAndExecuteTx del contrato EthCrossChainManager. Esta función puede ejecutar transacciones específicas de cross-chain a través de la función _executeCrossChainTx. Dado que el propietario del contrato EthCrossChainData es el contrato EthCrossChainManager, este último puede invocar la función putCurEpochConPubKeyBytes del primero para modificar el keeper del contrato.
Proceso de ataque
El atacante envía datos cuidadosamente diseñados a través de la función verifyHeaderAndExecuteTx.
Estos datos hacen que la función _executeCrossChainTx llame a la función putCurEpochConPubKeyBytes del contrato EthCrossChainData.
A través de la operación anterior, el atacante logró cambiar el rol de keeper a la dirección especificada.
Una vez que se completa el reemplazo del keeper, el atacante puede construir transacciones a su antojo y extraer cualquier cantidad de fondos del contrato.
Impacto del ataque
Después del ataque, debido a que el keeper fue modificado, las transacciones normales de otros usuarios fueron rechazadas. Esta situación ha ocurrido en múltiples redes de blockchain, incluyendo la cadena inteligente de Binance y Ethereum.
Revelación de seguridad
La gestión de permisos en los contratos inteligentes es crucial, especialmente en lo que respecta a los permisos de modificación de roles clave (como el keeper).
La seguridad de las operaciones cross-chain necesita atención especial, ya que generalmente implican interacciones complejas y activos de alto valor.
El diseño de las funciones del contrato debe restringir estrictamente el ámbito de las operaciones ejecutables, evitando la aparición de vulnerabilidades que puedan ser explotadas por atacantes.
Realizar auditorías de seguridad y detección de vulnerabilidades de manera regular es crucial para identificar y corregir problemas potenciales.
Este incidente nos recuerda una vez más que, en un ecosistema de blockchain en rápida evolución, la seguridad siempre debe ser la principal preocupación. Para los desarrolladores y las partes del proyecto, mejorar continuamente las medidas de seguridad y aumentar la calidad del código son claves para proteger los activos de los usuarios.