El problema está en un contrato de 250 millones de dólares en THE DAO, al cual alguien le encontró la vulnerabilidad y comenzó a robar el dinero.
Hoy aproximadamente a las 6.00 am, hora del este en Estados Unidos, Vitalik Buterin, creador de Ethereum ha publicado un mensaje de alerta en reddit a las casas de cambio que intercambian ether, la moneda utilizada por Ethereum y por El DAO.
Como aclaratoria, ETHEREUM NO ESTA ROTO, al parecer el problema está en un contrato en El DAO ,el cual manejaba valores cercanos a los USD $250MM, alguien encontró una vulnerabilidad en el contrato y se está robando el dinero.
Es de esperar que esta persona empiece a vender los ethers en diferentes mercados y cause que el precio del ether se vaya al piso.
Todos los ethers robados están siendo depositados en la dirección 0x304a554a310C7e546dfe434669C62820b7D83490, para el momento en que se escribe esta nota el balance de la cuenta es de ETH 3,641,694.24, aproximadamente USD $58mm al precio actual de USD $16 por ether. Hace solo unas 7 horas el ether estaba rondando los USD $20.
Este anuncio ciertamente causará problemas para el precio del ether, habrá especuladores que intenten esparcir información inválida con el fin de crear un pánico, y el mensaje de Vitalik pidiendo detener el trading ciertamente hace que la gente quiera vender antes que sea demasiado tarde. Los exchanges, de seguir este consejo, en mi opinión harán las cosas peores porque los usuarios de ether se sentirán censurados al no tener la liquidez que esperaban.
Anuncio de George Hallam (Relaciones Públicas de Ethereum) horas más tarde: Resuman el intercambio de ether.
Un ataque ha sido encontrado y explotado en THE DAO, y el atacante está actualmente en el proceso de sacar el ether contenido en el DAO hacia un DAO hijo. El ataque es una vulnerabilidad de llamadas recursivas, donde un atacante llamó a la función “split” (picar), y luego llama la función “split” recursivamente dentro del “split”, por ende recolectando ether muchas veces bajo una misma transacción.
El ether que gotea está en un DAO hijo en la dirección Ethereum https://etherchain.org/account/0x304a554a310c7e546dfe434669c62820b7d83490; aun si no se toma acción alguna, el atacante no podrá hacer retiro de ether por al menos más o menos unos 27 días (la ventana de creación del DAO hijo). Este es un problema que afecta el DAO específicamente; Ethereum en sí mismo es perfectamente seguro.
Un fork del software ha sido propuesto, (sin rollbacks, ninguna transacción o bloque serán “revertidos”) lo cual hará que cualquier transacción que haga algún tipo de llamadas que ejecuten código con el hash 0x7278d050619a624f84f51987149ddb439cdaadfba5966f7cfaea7ad44340a4ba (el DAO y su hijo) hagan que la transacción (no solo la llamada, la transacción) sea inválida, empezando desde el bloque 1760000 (el número preciso de bloque sujeto a cambiar hasta que el código haya sido lanzado), previniendo que el ether sea retirado por el atacante pasada la ventana de 27 días. Esto probará suficiente tiempo para discutir pasos potenciales a seguir incluyendo darle a los dueños de tokens la habilidad de recuperar su ether.
Mineros y piscinas de minería deben resumir sus transacciones normalmente, esperar por el código del soft fork y permanecer listos para descargar y correr si están de acuerdo que éste es el camino a seguir para el ecosistema Ethereum. Los dueños de tokens DAO y usuarios Ethereum deben permanecer quietos y mantenerse calmados. Los exchanges deben sentirse seguros en resumir el intercambio de ETH.
Los autores de contratos deben:
- tener mucho cuidado con respecto a bugs de llamadas recursivas, y deben escuchar los consejos de la comunidad de programación de contratos Ethereum, la cual esta semana estará mitigando tales bugs.
- evitar crear contratos que contentan mas de USD ~$10.000 en valor, con la excepción de contratos de sub-token y otros sistemas cuyo valor esté definido por consenso social fuera de la plataforma Ethereum, y que puedan ser facilmente “hard forked” via consenso comunitario si emerge un bug (por ej, MKR), al menos hasta que la comunidad gane más experiencia en como mitigar bugs y/o mejores herramientas hayan sido desarrolladas.
Desarrolladores, criptógrafos y científicos de la computación deben tomar nota de que cualquier herramienta de alto nivel (incluyendo IDEs, verificación formal, debuggers, ejecución simbólica) que hacen que se haga fácil el escribir contratos en Ethereum, son candidatos primos para DevGrants, grants de Blockchain Labs, y grants financieros autónomos de String.
Artículo de Diario Bitcoin
Escrito por Gubatron
ADVERTENCIA: Este es un artículo de carácter informativo. DiarioBitcoin es un medio de comunicación, no promociona, respalda ni recomienda ninguna inversión en particular. Vale señalar que las inversiones en criptoactivos no están reguladas en algunos países. Pueden no ser apropiadas para inversores minoristas, pues se podría perder el monto total invertido. Consulte las leyes de su país antes de invertir.