Volver al blog

Cómo Coin98 corrigió silenciosamente una vulnerabilidad

Code Auditing
16 de enero de 2022
3 min de lectura

El pasado viernes, nuestro sistema de monitoreo detectó un ataque al contrato inteligente de coin98 (0x8aaf408e06feed6a6a6182ea3c464035748b9b31 — el contrato víctima) en BSC. De inmediato enviamos un mensaje directo al propietario del proyecto a través de Twitter, pero no obtuvimos respuesta. Dado que la vulnerabilidad aún existía en ese momento, decidimos no hacerla pública. Luego, después de un par de horas, descubrimos que el propietario del proyecto había creado un nuevo contrato que corregía la vulnerabilidad. Por lo tanto, es seguro para nosotros resumir aquí la vulnerabilidad y su corrección.

Transacción del ataque y causa raíz

La transacción detectada por nuestro sistema de monitoreo interno llamó nuestra atención. Tras una investigación detallada, confirmamos que se debe al control de acceso del parámetro route (que representa al enrutador) en la función swapExactTokensForTokens, como se muestra a continuación:

Este contrato confiaba ciegamente en el route e invocaba la función swapExactTokensForTokens del enrutador. Antes de esto, aprobaba todos los tokens en posesión del contrato víctima hacia el route. Sin embargo, el route podía ser proporcionado por el atacante. En este caso, el atacante podía transferir todos los tokens de la víctima hacia sí mismo y luego intercambiarlos por WBNB para obtener ganancias.

A continuación se muestra una de las transacciones del ataque.

La corrección silenciosa de la vulnerabilidad

El pasado viernes enviamos un mensaje directo al propietario del proyecto en Twitter, pero no obtuvimos respuesta. Luego verificamos nuevamente el contrato hoy y encontramos que se ha desplegado un nuevo contrato inteligente (0x83f25d16bdf91f51120032f264dad0e1ab1c8227). Este nuevo contrato cuenta con una lista blanca para el route:

Conclusión

Hemos visto muchos casos en los que el contrato inteligente confía ciegamente en el parámetro proporcionado. Esto SÍ genera una grave brecha de seguridad.

¡NO CONFÍES EN NINGÚN PARÁMETRO QUE ESTÉ FUERA DE TU CONTROL!

Acerca de BlockSec

BlockSec es una empresa pionera en seguridad blockchain fundada 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 con el fin de 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 distinguidos 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, entre ellos Matrix Partners, Vitalbridge Capital y Fenbushi Capital.

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

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

Apúntate para recibir las novedades
Pérdidas de ~5,57 millones USD: exploits de X100 Freezer y NEM | Resumen semanal de BlockSec
Security Insights

Pérdidas de ~5,57 millones USD: exploits de X100 Freezer y NEM | Resumen semanal de BlockSec

Este informe semanal cubre dos incidentes de seguridad ocurridos en Ethereum y BNB Chain durante el período 19/10/2026–25/10/2026. Examina una toma de control de la gobernanza de X100 Freezer financiada mediante un préstamo flash y un fallo en la liquidación de impuestos que afectó a un pool de liquidez de un token NEM en BNB Chain. Las pérdidas estimadas dentro del alcance del informe suman aproximadamente 5,57 millones USD: ~4,75 millones USD de la transacción representativa de X100 y ~820 mil USD del incidente del pool de NEM. El total excluye las extracciones posteriores de X100 reportadas por separado.

Pérdidas de aproximadamente 3,87 millones USD: hackeos de Autheo Network y UNCX | Resumen semanal de BlockSec
Security Insights

Pérdidas de aproximadamente 3,87 millones USD: hackeos de Autheo Network y UNCX | Resumen semanal de BlockSec

Este informe semanal cubre 3 incidentes de seguridad correspondientes al período 12/10/2026–18/10/2026, con pérdidas totales estimadas en aproximadamente 3,87 millones USD. Autheo Network sufrió una vulneración de clave privada con pérdidas de aproximadamente 1,76 millones USD; Qubic Wallet perdió aproximadamente 1,30 millones USD debido a la generación de una semilla débil; y los contratos Smart Token Vesting V2 de UNCX Network sufrieron un error contable con pérdidas de aproximadamente 807 mil USD en Ethereum, BNB Chain, Base y Robinhood Chain. El análisis destacado de UNCX explica cómo un cálculo agregado de participaciones defectuoso mezcló tramos de adquisición de derechos creados con distintas proporciones entre tokens y participaciones, lo que permitió retiros excesivos de pools compartidos.

Pérdidas de ~542.000 dólares: explotación de MakerDaoBot | Resumen semanal de BlockSec
Security Insights

Pérdidas de ~542.000 dólares: explotación de MakerDaoBot | Resumen semanal de BlockSec

Ethereum (05–11/10/2026): 1 incidente; pérdida estimada de $542 mil. MakerDaoBot, sin control de acceso, dio a un adaptador malicioso acceso a sus saldos MakerDAO. Este cerró 4 subastas ETH-A y convirtió 200 ETH-A en WETH; el atacante los cambió por 200 ETH y se los envió.

El mejor auditor de seguridad para Web3

Valida el diseño, el código y la lógica de negocio antes del lanzamiento, siguiendo los estándares de seguridad más exigentes del sector.

Auditoría de BlockSec
Cómo Coin98 corrigió silenciosamente una vulnerabilidad