Durante el período de 6.18, me preocupaba que "Avalokitesvara" no fuera suficiente. Si me despertaba, de repente descubrí que la cuenta de mis padres se puede usar a voluntad, y el dinero de mi ex novio está abierto para usted y todos sus ex. -novias debido a la configuración de permisos incorrecta. No es que no haya pastel en el cielo, sino que puede haber un agujero en el cielo.
Lo que es mío es mío, y lo que es tuyo es mío.
Esta vulnerabilidad le sucedió al contrato inteligente implementado por Bancor el 18 de junio.
Bancor implementó su contrato inteligente BancorNetwork v0.6 el 16 de junio, y dos días después se descubrió que el contrato tenía vulnerabilidades de seguridad graves. Los atacantes pueden usar esta vulnerabilidad para transferir dinero en el contrato.
Hay muchos tipos de vulnerabilidades que pueden generar los contratos inteligentes, y las vulnerabilidades generadas por los contratos inteligentes de Bancor esta vez están relacionadas con las funciones.
En primer lugar, en un contrato inteligente, las funciones tienen 4 derechos de acceso:
Público - puede ser llamado por todos
Externo: solo se puede llamar externamente
Interno: solo puede ser llamado por el propio contrato y los contratos heredados.
Privado - solo puede ser llamado por el propio contrato
Se enfatiza aquí que cuando el permiso de la función se establece en público, cualquiera puede llamar a esta función para transferir el dinero en el contrato. En otras palabras, cuando su exnovio establece accidentalmente los permisos de su billetera en público, cualquier persona en el mundo, incluidos su actual, ex y ex-ex, puede transferir fácilmente su dinero. Debe estar muy molesto en este momento.
Echemos un vistazo al código de la vulnerabilidad de Bancor:
En la línea 45 del contrato vulnerable, vemos la función safeTransferFrom. La función de esta función es transferir dinero de una dirección a otra. Tenga en cuenta que el permiso de esta función está configurado como público.
Hay 117 820 transacciones no confirmadas en Ethereum: Jinse Finance News, según los datos de OKLink, hay 117 820 transacciones no confirmadas en Ethereum, la potencia informática actual de la red es 298,41TH/s, la dificultad de la red es 3,95P y la dirección actual de tenencia de la moneda es 52.919.647, un aumento de 154.222 año tras año, el volumen de transacciones en cadena de 24 horas es de 5.069.695,56 ETH y el tiempo medio actual de generación de bloques es de 13 s. [2021/1/12 15:55:18]
Curiosamente, el equipo de CertiK descubrió a través de una investigación adicional que dos días después de que se implementó el contrato con la vulnerabilidad, el equipo de Bancor usó las siguientes dos direcciones de billetera para retirar los fondos del contrato a través de la vulnerabilidad para borrar los fondos del contrato y evitar que los piratas informáticos Robar también es un movimiento astuto para compensar el vacío legal:
0xc8021b971e69e60c5deede19528b33dcd52cdbd8,
0x14fa61fd261ab950b9ce07685180a9555ab5d665
Casi al mismo tiempo, dos empleados de terceros también comenzaron a utilizar esta vulnerabilidad para retirar fondos. Uno de ellos utilizó la vulnerabilidad para realizar 16 transacciones de retiro, con un retiro total de 131.889,34 dólares estadounidenses. La dirección ETH y la dirección de correo electrónico de este tercero son:
0x052ede4c2a04670be329db369c4563283391a3ea
arden43y@gmail.com
La persona afirmó que detrás de esta dirección hay un sistema de transacciones automatizado, que puede usar involuntariamente errores humanos y lagunas en los contratos para obtener fondos. Si se puede probar que esta dirección consiguió el dinero a través de la escapatoria, puede devolver el dinero.
Y la dirección de la otra son las dos siguientes:
0x854B21385544c44121f912AEdF4419335004F8ec,
0x1ad1099487b11879e6116ca1ceee486d1efa7b00
En total, realizó cuatro transacciones de retiro, retirando un total de $3340. (Equivalente a unos 23.000 RMB, puedes comer más de 2.000 toneladas de cangrejos de río).
Bancor respondió oficialmente a este incidente (para más detalles, consulte el primer artículo de "Otros enlaces de referencia" al final del artículo):
Uno de los párrafos mencionó que usaron esta laguna para transferir el saldo de $455,349 en el contrato a otra billetera.
Otro párrafo decía que se había puesto en contacto con dos miembros del personal de terceros y les había pedido que devolvieran los fondos transferidos aprovechando las lagunas en el contrato.
Posteriormente, Bancor actualizó el contrato vulnerable.
Se puede ver claramente que público ha sido cambiado a interno.
Esta vulnerabilidad crítica se debe a un error del desarrollador al configurar los permisos de las funciones. En un contrato inteligente, solo un parámetro incorrecto puede poner en riesgo el dinero de todos en el contrato.
Afortunadamente, esta vulnerabilidad no fue aprovechada por piratas informáticos, de lo contrario, el dinero de los usuarios nunca se rastrearía.
Las vulnerabilidades similares a los errores de llamada de función en los contratos inteligentes incluyen, entre otras, miles de posibilidades, como DOS, errores lógicos, acceso no autorizado, reingreso y desbordamiento de enteros. Cualquiera de estas mil posibilidades traerá enormes pérdidas de propiedad para la empresa y los usuarios, y el contrato tiene la propiedad de que no se puede cambiar una vez que se implementa.
Por lo tanto, es muy importante asegurarse de que los contratos inteligentes no tengan lagunas. Antes de implementar el contrato, es un enlace indispensable para enviarlo a una empresa de seguridad profesional para una auditoría de seguridad.
CertiK utilizará la formalización para probar la corrección de los contratos inteligentes a través de la verificación matemática. Lo anterior es parte de la auditoría de seguridad de CertiK.
Las pruebas de programas pueden probar la existencia de vulnerabilidades, pero nunca pueden probar la ausencia de vulnerabilidades.
La existencia de CertiK es hacer que las lagunas no existan.
No solo buscamos lagunas, sino eliminar hasta el 0,00000001% de la posibilidad de ser atacado.
Los contratos inteligentes y los enlaces de direcciones mencionados en el artículo son los siguientes:
Contratos inteligentes vulnerables:
https://github.com/bancorprotocol/contracts-solidity/blob/4394c0e1d1785a71044101b1d6df57e332b73ba9/solidity/contracts/utility/TokenHandler.sol
Dirección de implementación del contrato de vulnerabilidad:
0x8dFEB86C7C962577deD19AB2050AC78654feA9F7
0x5f58058C0eC971492166763c8C22632B583F667f
0x923cAb01E6a4639664aa64B76396Eec0ea7d3a5f
Contrato inteligente modificado:
https://github.com/bancorprotocol/contracts-solidity/blob/master/solidity/contracts/utility/TokenHandler.sol
Enlaces de referencia adicionales:
https://blog.bancor.network/bancors-response-to-today-s-smart-contract-vulnerability-dc888c589fe4
https://github.com/bancorprotocol/contracts-solidity/blob/4394c0e1d1785a71044101b1d6df57e332b73ba9/solidity/contracts/utility/TokenHandler.sol#L45
https://explore.duneanalytics.com/public/dashboards/mEUEd9rQCPjeMkryEIgbtC0YUZwOXESQPTkkqdPX
Tags:
Conclusiones clave La volatilidad del mercado disminuye en medio de los temores de un cambio en los planes para Mt. Gox anunciado el 1 de julioLa compensación de liquidación de Mt. Gox se retrasó otros 3.
Golden Weekly es una columna de resumen semanal de la industria de blockchain lanzada por Golden Finance, que cubre noticias clave, datos de mercado y contratos, información minera, dinámica de proyectos.
En 2020, el mayor punto crítico no es más que la moneda digital del banco central. "El nuevo tipo de coronavirus ha barrido el mundo y ha tenido un gran impacto. La transmisión por contacto tiene un efecto de vinculac.
Durante el período de 6.18, me preocupaba que "Avalokitesvara" no fuera suficiente. Si me despertaba, de repente descubrí que la cuenta de mis padres se puede usar a voluntad.
Si observa los datos de existencias de Bitcoin, puede ver una tendencia preocupante de cuentas anónimas que muestran una creciente sindicación entre los grandes jugadores. Las ballenas generalmente se refieren a inver.
En los más de 10 años desde que salió Bitcoin, con la finalización de la tercera "reducción a la mitad", el término inflación ha aparecido con frecuencia en la comunidad de activos digitales. Más bien.
El 30 de junio, la Oficina General del Gobierno Popular Municipal de Beijing emitió un aviso sobre el "Plan de Acción de Desarrollo e Innovación de Blockchain de Beijing (2020-2022)" (en adelante.