Poolz sufre un ataque de desbordamiento aritmético, con pérdidas de aproximadamente 66.5 mil dólares.
Recientemente, varios proyectos de Poolz en diferentes redes de blockchain fueron atacados, lo que resultó en el robo de una gran cantidad de tokens, con un valor total de aproximadamente 66.5 mil dólares. Este ataque ocurrió el 15 de marzo de 2023 y afectó a los contratos de Poolz en múltiples redes, incluyendo Ethereum, la cadena BNB y Polygon.
Los atacantes explotaron una vulnerabilidad de desbordamiento aritmético en el contrato inteligente de Poolz. En concreto, el problema se encuentra en la función getArraySum dentro de la función CreateMassPools. Esta función, al calcular la liquidez inicial del pool, permite que los atacantes creen una gran apariencia de liquidez solo transfiriendo una cantidad mínima de tokens debido al desbordamiento de enteros.
El proceso de ataque es el siguiente:
El atacante primero intercambió una pequeña cantidad de tokens MNZ en un DEX.
Luego se llamó a la función CreateMassPools con vulnerabilidades. Esta función permite a los usuarios crear múltiples grupos de liquidez y proporcionar liquidez inicial.
Al calcular la cantidad de liquidez inicial, la función getArraySum experimenta un desbordamiento de enteros. La suma del arreglo proporcionado por el atacante supera el valor máximo que puede representar uint256, lo que provoca que el valor de retorno de la función sea 1.
Sin embargo, el contrato aún utilizó el valor original del array _StartAmount al registrar las propiedades del pool. Esto provocó que un atacante realmente solo transfiriera 1 token, pero se registrara como si tuviera una gran liquidez.
Por último, el atacante llama a la función withdraw para retirar fondos, completando el ataque.
Este incidente expuso el peligro de desbordamiento aritmético en los contratos inteligentes. Para prevenir problemas similares, los desarrolladores deberían considerar el uso de versiones más recientes del compilador Solidity, que realizan automáticamente la verificación de desbordamiento. Para los proyectos que utilizan versiones más antiguas de Solidity, se puede implementar la biblioteca SafeMath de OpenZeppelin para manejar operaciones con enteros y evitar el riesgo de desbordamiento.
Este ataque subraya nuevamente la necesidad de prestar especial atención a la seguridad de las operaciones aritméticas al desarrollar y auditar contratos inteligentes. Al mismo tiempo, el equipo del proyecto también debe realizar auditorías de seguridad de manera regular para detectar y reparar a tiempo posibles vulnerabilidades, con el fin de proteger la seguridad de los activos de los usuarios.
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.
17 me gusta
Recompensa
17
6
Compartir
Comentar
0/400
OnChainDetective
· hace21h
he visto este patrón de ataque antes... error de desbordamiento de entero de novato. ¿cuándo aprenderán los desarrolladores a usar safeMath? smh
Ver originalesResponder0
AirdropGrandpa
· hace21h
Otra vez desbordamiento de pila, realmente es una broma.
Ver originalesResponder0
CryptoSurvivor
· hace21h
Este tipo de pequeñas fallas pueden ser descubiertas, realmente es una lucha por la supervivencia.
Ver originalesResponder0
FrogInTheWell
· hace21h
Otra vez desbordamiento... ¿sabes algo sobre auditoría de seguridad?
Ver originalesResponder0
AlwaysAnon
· hace21h
Otro proyecto ha fracasado.
Ver originalesResponder0
HodlTheDoor
· hace22h
¿Y no se fue a la quiebra después de no haber conseguido suficientes cosas gratis?
Poolz sufre un ataque de desbordamiento aritmético con una pérdida de 665,000 dólares. Proyectos multichain afectados.
Poolz sufre un ataque de desbordamiento aritmético, con pérdidas de aproximadamente 66.5 mil dólares.
Recientemente, varios proyectos de Poolz en diferentes redes de blockchain fueron atacados, lo que resultó en el robo de una gran cantidad de tokens, con un valor total de aproximadamente 66.5 mil dólares. Este ataque ocurrió el 15 de marzo de 2023 y afectó a los contratos de Poolz en múltiples redes, incluyendo Ethereum, la cadena BNB y Polygon.
Los atacantes explotaron una vulnerabilidad de desbordamiento aritmético en el contrato inteligente de Poolz. En concreto, el problema se encuentra en la función getArraySum dentro de la función CreateMassPools. Esta función, al calcular la liquidez inicial del pool, permite que los atacantes creen una gran apariencia de liquidez solo transfiriendo una cantidad mínima de tokens debido al desbordamiento de enteros.
El proceso de ataque es el siguiente:
El atacante primero intercambió una pequeña cantidad de tokens MNZ en un DEX.
Luego se llamó a la función CreateMassPools con vulnerabilidades. Esta función permite a los usuarios crear múltiples grupos de liquidez y proporcionar liquidez inicial.
Al calcular la cantidad de liquidez inicial, la función getArraySum experimenta un desbordamiento de enteros. La suma del arreglo proporcionado por el atacante supera el valor máximo que puede representar uint256, lo que provoca que el valor de retorno de la función sea 1.
Sin embargo, el contrato aún utilizó el valor original del array _StartAmount al registrar las propiedades del pool. Esto provocó que un atacante realmente solo transfiriera 1 token, pero se registrara como si tuviera una gran liquidez.
Por último, el atacante llama a la función withdraw para retirar fondos, completando el ataque.
Este incidente expuso el peligro de desbordamiento aritmético en los contratos inteligentes. Para prevenir problemas similares, los desarrolladores deberían considerar el uso de versiones más recientes del compilador Solidity, que realizan automáticamente la verificación de desbordamiento. Para los proyectos que utilizan versiones más antiguas de Solidity, se puede implementar la biblioteca SafeMath de OpenZeppelin para manejar operaciones con enteros y evitar el riesgo de desbordamiento.
Este ataque subraya nuevamente la necesidad de prestar especial atención a la seguridad de las operaciones aritméticas al desarrollar y auditar contratos inteligentes. Al mismo tiempo, el equipo del proyecto también debe realizar auditorías de seguridad de manera regular para detectar y reparar a tiempo posibles vulnerabilidades, con el fin de proteger la seguridad de los activos de los usuarios.