El proyecto Poolz fue atacado, con pérdidas de aproximadamente 66.5 mil dólares.
Recientemente, un incidente de seguridad que involucra múltiples blockchains ha llamado la atención de la industria. Según los datos de monitoreo en la cadena, en la madrugada del 15 de marzo, el proyecto Poolz en las redes Ethereum, Binance y Polygon fue atacado, lo que resultó en una pérdida significativa de tokens, con un valor total de aproximadamente 66.5 mil dólares.
Los atacantes aprovecharon una vulnerabilidad de desbordamiento aritmético en el contrato inteligente para extraer con éxito varios tokens del proyecto, incluidos MEE, ESNC, DON, ASW, KMON, POOLZ, entre otros. Actualmente, parte de los tokens robados ya se han cambiado por BNB, pero los fondos aún no se han transferido.
El ataque se dirigió principalmente a la función CreateMassPools del proyecto Poolz. Esta función fue diseñada originalmente para crear múltiples grupos de liquidez y proporcionar liquidez inicial. Sin embargo, debido a un problema de desbordamiento de enteros en la función getArraySum, los atacantes pudieron aprovechar esta vulnerabilidad. Al introducir parámetros específicos, el resultado de la suma acumulativa excedió el rango de uint256, lo que provocó que el valor de retorno de la función fuera 1. Esto permitió a los atacantes transferir solo 1 token y registrar en el sistema una liquidez muy superior a la cantidad real.
Luego, el atacante llamó a la función withdraw para extraer los tokens, completando así todo el proceso de ataque.
Para evitar que eventos similares ocurran nuevamente, los expertos de la industria sugieren a los desarrolladores que utilicen versiones más nuevas de Solidity para la compilación, ya que estas versiones realizan automáticamente verificaciones de desbordamiento. Para los proyectos que utilizan versiones más bajas de Solidity, se puede considerar la incorporación de la biblioteca SafeMath de OpenZeppelin para resolver problemas de desbordamiento de enteros.
Este incidente nos recuerda una vez más que la seguridad es crucial en el desarrollo de contratos inteligentes. Los desarrolladores deben prestar especial atención al riesgo potencial de desbordamiento aritmético y tomar las medidas preventivas necesarias. Al mismo tiempo, realizar auditorías de seguridad de manera regular es también una medida importante para garantizar la seguridad del proyecto.
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
El proyecto Poolz fue atacado, con pérdidas de 66.5 mil dólares en múltiples cadenas.
El proyecto Poolz fue atacado, con pérdidas de aproximadamente 66.5 mil dólares.
Recientemente, un incidente de seguridad que involucra múltiples blockchains ha llamado la atención de la industria. Según los datos de monitoreo en la cadena, en la madrugada del 15 de marzo, el proyecto Poolz en las redes Ethereum, Binance y Polygon fue atacado, lo que resultó en una pérdida significativa de tokens, con un valor total de aproximadamente 66.5 mil dólares.
Los atacantes aprovecharon una vulnerabilidad de desbordamiento aritmético en el contrato inteligente para extraer con éxito varios tokens del proyecto, incluidos MEE, ESNC, DON, ASW, KMON, POOLZ, entre otros. Actualmente, parte de los tokens robados ya se han cambiado por BNB, pero los fondos aún no se han transferido.
El ataque se dirigió principalmente a la función CreateMassPools del proyecto Poolz. Esta función fue diseñada originalmente para crear múltiples grupos de liquidez y proporcionar liquidez inicial. Sin embargo, debido a un problema de desbordamiento de enteros en la función getArraySum, los atacantes pudieron aprovechar esta vulnerabilidad. Al introducir parámetros específicos, el resultado de la suma acumulativa excedió el rango de uint256, lo que provocó que el valor de retorno de la función fuera 1. Esto permitió a los atacantes transferir solo 1 token y registrar en el sistema una liquidez muy superior a la cantidad real.
Luego, el atacante llamó a la función withdraw para extraer los tokens, completando así todo el proceso de ataque.
Para evitar que eventos similares ocurran nuevamente, los expertos de la industria sugieren a los desarrolladores que utilicen versiones más nuevas de Solidity para la compilación, ya que estas versiones realizan automáticamente verificaciones de desbordamiento. Para los proyectos que utilizan versiones más bajas de Solidity, se puede considerar la incorporación de la biblioteca SafeMath de OpenZeppelin para resolver problemas de desbordamiento de enteros.
Este incidente nos recuerda una vez más que la seguridad es crucial en el desarrollo de contratos inteligentes. Los desarrolladores deben prestar especial atención al riesgo potencial de desbordamiento aritmético y tomar las medidas preventivas necesarias. Al mismo tiempo, realizar auditorías de seguridad de manera regular es también una medida importante para garantizar la seguridad del proyecto.