Volver al blog

Nuestro Breve Análisis de la Vulnerabilidad de la Herramienta de Blasfemia

Code Auditing
21 de septiembre de 2022
5 min de lectura

Wintermute fue explotado con una pérdida de más de 160 millones de dólares. La causa raíz es que la clave privada del proyecto Wintermute fue comprometida debido a una vulnerabilidad en la herramienta Profanity, que fue utilizada por Wintermute para generar la clave privada y la cuenta de Ethereum.

En este blog, describiremos la causa raíz de la vulnerabilidad en Profanity y cómo puede ser explotada.

La Dirección de Ethereum

La dirección de Ethereum se genera a partir del hash Keccak-256 de la clave pública y se representa como números hexadecimales. La clave pública se genera a partir de la clave privada mediante multiplicación de curva elíptica, que es irreversible. Podemos obtener una clave pública a partir de una clave privada. Sin embargo, no podemos obtener la clave privada a partir de una clave pública, sin fuerza bruta. Tenga en cuenta que la longitud de la clave privada es de 256 bits. Dada una clave pública, se necesitan como máximo 2^256 cálculos para encontrar la clave privada correspondiente.

En resumen, la relación entre la clave privada/pública y la dirección de Ethereum se muestra en la siguiente figura.

La Causa Raíz de la Vulnerabilidad

El propósito de Profanity es encontrar una dirección de Ethereum especial, por ejemplo, que los cinco primeros números de la dirección sean cero. Para este propósito, Profanity utiliza el siguiente método.

La implementación detallada puede ser ligeramente diferente.

Tenga en cuenta que la longitud de private_key es de 256 bits (2^256 valores diferentes). Sin embargo, existe una vulnerabilidad en la generación de la clave privada. Específicamente, la semilla (en el paso 1) tiene solo 32 bits, y el proceso desde la semilla en el paso 1 hasta la private_key en el paso 2 es determinista.

¿Cuál es el impacto de seguridad aquí?

Cómo Explotar

Digamos que tenemos una dirección de Ethereum con muchos activos valiosos. Si podemos obtener su clave privada, entonces podemos apropiarnos de esta cuenta y transferir todos los activos. Sin embargo, como se discutió anteriormente, debemos aplicar fuerza bruta a todo el espacio 2^256 para encontrar la clave privada, lo cual es prácticamente imposible.

¿Pero qué pasa si la dirección de Ethereum fue generada con la herramienta Profanity? Podemos aplicar fuerza bruta para localizar la clave privada con una dificultad mucho menor. Solo necesitamos especificar la semilla desde 0 hasta 2^32-1 y repetir el mismo proceso hasta localizar la clave privada que puede generar la misma clave pública (y la dirección de Ethereum). Ya que solo necesitamos como máximo 2^32 * loop_threashold cálculos. Esto es factible en unas pocas horas o días/semanas si tenemos un potente clúster de GPU.

Sin embargo, este sigue siendo un algoritmo optimizado. Puede consultar el artículo de Slowmist para más detalles.

Conclusión

Hacer que un proyecto DeFi sea seguro no es una tarea fácil. Además de la auditoría de código, creemos que la comunidad debe 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 reconocimiento mundial. La empresa está comprometida a mejorar la seguridad y la usabilidad para el 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 constructores de web3 naveguen eficientemente en el mundo cripto.

Hasta la fecha, la empresa ha atendido 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 financiación de inversores preeminentes, incluyendo 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