La cadena de prueba de trabajo (PoW) posterior a la fusión de Ethereum ETHW se ha movido para sofocar las afirmaciones de que había sufrido un ataque de repetición en la cadena durante el fin de semana.
La firma de auditoría de contratos inteligentes BlockSec marcó lo que descrito como un ataque de repetición que tuvo lugar el 16 de septiembre, en el que los atacantes recolectaron tokens ETHW reproduciendo los datos de llamadas de la cadena de prueba de participación (PoS) de Ethereum en la cadena Ethereum PoW bifurcada.
Según BlockSec, la causa raíz del exploit se debió al hecho de que el puente de cadena cruzada Omni en la cadena ETHW usaba un ID de cadena antiguo y no estaba verificando correctamente el ID de cadena correcto del mensaje de cadena cruzada.
Las redes Mainnet y de prueba de Ethereum utilizan dos identificadores para diferentes usos, a saber, una ID de red y una ID de cadena (chainID). Los mensajes punto a punto entre nodos utilizan el ID de red, mientras que las firmas de transacciones utilizan el ID de cadena. EIP-155 introdujo chainID como un medio para evitar ataques de repetición entre las cadenas de bloques ETH y Ethereum Classic (ETC).
1/ Alerta | BlockSec detectó que los explotadores están reproduciendo el mensaje (datos de llamada) de la cadena PoS en @EthereumPow. La causa raíz de la explotación es que el puente no verifica correctamente el chainid real (que se mantiene por sí mismo) del mensaje de cadena cruzada.
- BlockSec (@BlockSecTeam) 18 de septiembre de 2022
BlockSec fue el primer servicio de análisis en marcar el ataque de repetición y notificó a ETHW, que a su vez rechazó rápidamente las afirmaciones iniciales de que se había llevado a cabo un ataque de repetición en la cadena. ETHW intentó notificar a Omni Bridge sobre el exploit a nivel de contrato:
Había intentado todas las formas de contactar a Omni Bridge ayer.
Los puentes deben verificar correctamente el ChainID real de los mensajes entre cadenas.
Nuevamente, esto no es una repetición de transacción en el nivel de la cadena, es una repetición de datos de llamada debido a la falla del contrato específico. https://t.co/bHbYR4b2AW pic.twitter.com/NZDn61cslJ
— EthereumPoW (ETHW) Oficial #ETHW #ETHPoW (@EthereumPoW) 18 de septiembre de 2022
El análisis del ataque reveló que el explotador comenzó transfiriendo 200 WETH a través del puente Omni de la cadena Gnosis antes de reproducir el mismo mensaje en la cadena PoW, obteniendo 200ETHW adicionales. Esto resultó en el agotamiento del saldo del contrato de cadena desplegado en la cadena PoW.
El análisis de BlockSec del código fuente del puente Omni mostró que la lógica para verificar chainID estaba presente, pero el chainID verificado utilizado en el contrato se extrajo de un valor almacenado en el almacenamiento llamado unitStorage.
El equipo explicó que este no era el chainID correcto recopilado a través del código de operación CHAINID, que fue propuesto por EIP-1344 y exacerbado por la bifurcación resultante después de la fusión de Ethereum:
“Esto probablemente se deba al hecho de que el código es bastante antiguo (usando Solidity 0.4.24). El código funciona bien todo el tiempo hasta la bifurcación de la cadena PoW”.
Esto permitió a los atacantes recolectar ETHW y potencialmente otros tokens propiedad del puente en la cadena PoW y luego intercambiarlos en los mercados que enumeran los tokens relevantes. Cointelegraph se comunicó con BlockSec para determinar el valor extraído durante el exploit.
Siguiendo Exitoso evento Merge de Ethereum que vio la transición de blockchain de contrato inteligente de PoW a PoS, un grupo de mineros decidió continuar la cadena de PoW a través de una bifurcación dura.
Fuente: https://cointelegraph.com/news/ethw-confirms-contract-vulnerability-exploit-dismisses-replay-attack-claims