Back to Blog

El Análisis del Ataque Zerogoki

Code Auditing
August 9, 2021
3 min read

El 08 de agosto de 2021 (hora de Beijing, altura de bloque 12982491), Zerogoki fue atacado, lo que causó una pérdida de 670K USD. Tras la investigación, descubrimos que está relacionado con el oráculo de precios comprometido. El atacante proporciona un oráculo de precios firmado por claves privadas legítimas, que contienen un número manipulado de tokens a intercambiar. Sin embargo, la razón por la que el atacante puede construir una firma válida aún se desconoce.

Análisis de Código

Primero realizamos un análisis del contrato atacado (0x80ecdb90).

La función swap llama a decode_op para obtener la información en el oráculo. Después de realizar la validación, el contrato quema los ns[0] x.token, acuña ns[1] y.token y paga la comisión de intercambio al contrato GOV.

De la implementación de decode_op, existen tres firmas en el parámetro. Estas firmas deben ser verificadas (y autorizadas) antes de realizar el intercambio de tokens (quema y acuñación).

En resumen, el primer parámetro ns de la función swap define el número de tokens a intercambiar. El segundo parámetro contiene las firmas que deben validarse. Cuando la validación es exitosa, el número de tokens intercambiados se define en el primer parámetro (ns).

Análisis del Ataque

En la transacción del ataque, 0x81e5f715,el atacante construye un mensaje que contiene firmas válidas y pasó un parámetro ns manipulado (que contiene una gran cantidad de zUSD). Como resultado, el atacante utilizó 300 REI para intercambiar 700k zUSD.

Las tres direcciones que están relacionadas con las firmas son:

0x0d93A21b4A971dF713CfC057e43F5D230E76261C
0x3054e19707447800f0666ba274a249fc9a67aa4a
0x4448993f493b1d8d9ed51f22f1d30b9b4377dfd2

Sin embargo, en esta etapa no tenemos información sobre por qué las claves privadas de estas direcciones han sido filtradas.

Conclusiones

Hacer que un proyecto DeFi sea seguro no es una tarea sencilla. Además de la auditoría de código, creemos que la comunidad debería adoptar un método proactivo para monitorear el estado del proyecto y bloquear el ataque antes de que ocurra.

Acerca de BlockSec

BlockSec es una empresa pionera en seguridad blockchain establecida en 2021 por un grupo de expertos en seguridad de renombre mundial. La empresa está comprometida con mejorar la seguridad y la usabilidad del emergente mundo Web3 para facilitar su adopción masiva. Con este fin, BlockSec ofrece servicios de auditoría de seguridad de contratos inteligentes y cadenas EVM, la plataforma Phalcon para el desarrollo de seguridad y el bloqueo proactivo de amenazas, la plataforma MetaSleuth para el rastreo e investigación de fondos, y la extensión MetaSuites para que los desarrolladores de web3 naveguen eficientemente en el mundo cripto.

Hasta la fecha, la empresa ha prestado servicios a más de 300 prestigiosos clientes como MetaMask, Uniswap Foundation, Compound, Forta y PancakeSwap, y ha recibido decenas de millones de dólares en dos rondas de financiamiento de inversores prominentes, incluyendo Matrix Partners, Vitalbridge Capital y Fenbushi Capital.

Sitio web oficial: https://blocksec.com/

Cuenta oficial de Twitter: https://twitter.com/BlockSecTeam

Best Security Auditor for Web3

Validate design, code, and business logic before launch. Aligned with the highest industry security standards.

BlockSec Audit