Compartir este artículo

Intercambios de Cripto suspenden sus servicios debido a errores en los contratos

Un par de errores publicados recientemente permiten a un atacante crear una cantidad excesiva de tokens ERC-20

Se ha descubierto que una docena o más de contratos inteligentes ERC-20 basados en Ethereum contienen errores que permiten a los atacantes crear tantos tokens como quieran.

Si bien los errores —identificados por primera vez el 22 de abril <a href="https://peckshield.com/2018/04/22/batchOverflow/">(https://peckshield.com/2018/04/22/batchOverflow/</a> ) y el 24 de abril <a href="https://peckshield.com/2018/04/25/proxyOverflow/">(https://peckshield.com/2018/04/25/proxyOverflow/)</a> , respectivamente, en dos publicaciones de la firma de seguridad blockchain PeckShield— no están vinculados al estándar ERC-20 en sí, los problemas llevaron a varias plataformas de intercambio a suspender los tokens ERC-20 mientras investigaban. Entre estas plataformas se encontraban OKEx.Poloniex,Changelly,Quoine y HitBTC.

CONTINÚA MÁS ABAJO
No te pierdas otra historia.Suscríbete al boletín de Crypto for Advisors hoy. Ver Todos Los Boletines

Huobi.Pro

El 25 de abril, Poloniex anunció por separado la suspensión de todas las monedas, pero desde entonces la ha limitado a los tokens basados en ERC-20. Al cierre de esta edición, Poloniex ha procedido a restablecer los servicios para tokens ERC-20.

En un ejemplo, un atacante transfirió la friolera de 57,9 * 10^57 tokens BeautyChain, como lo muestran los datos de la transacción. en Etherscan– el 22 de abril, un acontecimiento que motivó la investigación inicial sobre el asunto.

Nuestro estudio demuestra que dicha transferencia proviene de un ataque in situ que explota una vulnerabilidad previamente desconocida en el contrato. Para mayor claridad, llamamos a esta vulnerabilidad en particular "batchOverflow", explicó la publicación de PeckShield del día 22. "Señalamos que batchOverflow es esencialmente un problema clásico de desbordamiento de enteros".

Innumerables monedas

La publicación de batchOverflow describe cómo la función batchTransfer de un contrato tiene un número máximo de tokens que se pueden enviar en una transacción, y añade que el valor de los tokens transferidos debe ser menor que el número total de tokens generados. Sin embargo, el parámetro "_value" ( ONE de los dos que determinan el número total de tokens) puede manipularse, lo que a su vez modificaría otra variable, lo que permitiría a un atacante crear tantos tokens como desee.

Además, el atacante puede eludir las barreras del contrato que normalmente garantizarían que se transfiera una cantidad razonable de tokens.

"Con cantidad"Si se pone a cero, un atacante puede pasar las comprobaciones de cordura en las líneas 258-259 y hacer que la resta en la línea 261 sea irrelevante", explicó la publicación, señalando:

Finalmente, llega la parte interesante: como se muestra en las líneas 262-265, el saldo de los dos receptores se incrementaría con el altísimo valor _ sin que el atacante pierda un centavo.

Si bien los informes iniciales indicaron que todos los tokens ERC-20 podrían verse afectados, la función "batchTransfer" no es parte del estándar del token.

La publicación de Medium no enumeró los proyectos vulnerables, aunque sí indicó que BeautyChain fue el primer proyecto que descubrieron. Como muestra de la gravedad de este error, OKEx...dichoel 24 de abril que estaba revirtiendo las transacciones en el token BeautyChain.

El intercambio también anunció en ese momento que, a la luz de los errores, suspendería los depósitos y retiros de un proyecto llamadoMalla inteligentecomercio debido a "actividades comerciales anormales". PeckShield señaló que esto posiblemente se debió a laError de desbordamiento de proxy, que, al igual que el desbordamiento por lotes, es un problema clásico de desbordamiento de enteros. Ciertas variables pueden manipularse para generar espontáneamente grandes cantidades de tokens.

Un usuario de Twitter señaló que un atacante creó 5 octodecillones de dólares en tokens SmartMesh.

Como se señaló en una de las publicaciones, existe el peligro de que alguien pueda usar una Criptomonedas vulnerable para manipular los precios a su favor comerciando con Bitcoin, ether u otro par comercial.

Los representantes de los proyectos BeautyChain y SmartMesh no respondieron de inmediato a las solicitudes de comentarios. Sin embargo, un comunicado en el sitio web de BeautyChain...reconoce el errory afirma que las transacciones comerciales se reanudarán en un momento indeterminado en el futuro.

De manera similar, SmartMesh anunció que tomaría medidas para evitar la manipulación de precios, diciendo:

La Fundación SmartMesh tomará la cantidad de SMT equivalente a la falsificada y la destruirá para compensar las pérdidas causadas, y KEEP con el suministro total de SMT por un valor de 3.141.592.653.

Fabian Vogelsteller, el desarrollador que propuso por primera vez el estándar ERC-20, dijo a CoinDesk que los errores "simplemente muestran que necesitamos mejores prácticas y herramientas para detectar esos errores".

Nota:Este artículo se ha actualizado con un comentario del desarrollador y para aclarar el papel de PeckShield en el descubrimiento de los errores.

Imagen de canicasvía Shutterstock

Nikhilesh De

Nikhilesh De es el editor jefe de Regulación y regulación global de CoinDesk, y cubre temas sobre reguladores, legisladores e instituciones. Cuando no informa sobre activos digitales y Regulación, se le puede encontrar admirando Amtrak o construyendo trenes LEGO. Posee menos de $50 en BTC y menos de $20 en ETH. Fue nombrado Periodista del Año por la Asociación de Periodistas e Investigadores de Criptomonedas en 2020.

Nikhilesh De