Poolz sofre ataque de estouro aritmético, com perdas de cerca de 66,5 mil dólares
Recentemente, vários projetos Poolz em redes blockchain foram alvo de ataques de hackers, resultando no roubo de uma grande quantidade de tokens, com um valor total de cerca de 66,5 mil dólares. Este ataque ocorreu principalmente nas redes Ethereum, BNB Chain e Polygon.
Os atacantes exploraram uma vulnerabilidade de estouro aritmético no contrato inteligente Poolz. Especificamente, o problema reside na função getArraySum dentro da função CreateMassPools. Esta função realiza a soma percorrendo o array _StartAmount, mas não trata adequadamente os estouros. Os atacantes montaram habilmente um array contendo valores extremamente altos, resultando em um resultado de soma que excede o limite do uint256, fazendo com que o valor retornado se tornasse 1.
O processo de ataque é o seguinte:
O atacante primeiro trocou alguns tokens MNZ em um DEX.
Em seguida, chame a função CreateMassPools, passando os parâmetros cuidadosamente projetados. Embora na prática apenas 1 token seja transferido, _StartAmount registra um valor enorme.
Finalmente, retire os fundos através da função withdraw, completando o ataque.
Este incidente envolve vários tokens, incluindo MEE, ESNC, DON, ASW, KMON, POOLZ, entre outros. O token que mais perdeu foi o ASW, com mais de 2 mil milhões de unidades.
Para evitar que esses problemas ocorram novamente, recomenda-se que os desenvolvedores usem uma versão mais recente do compilador Solidity, que possui uma função de verificação de estouro embutida. Para projetos que utilizam versões mais antigas do Solidity, é possível considerar a introdução da biblioteca SafeMath da OpenZeppelin para lidar com problemas de estouro de inteiros.
Este ataque lembrou mais uma vez a importância da segurança dos contratos inteligentes para projetos DeFi. Mesmo operações aritméticas que parecem simples, se mal geridas, podem resultar em sérias vulnerabilidades de segurança. As equipes de projeto devem dar mais atenção à auditoria de código e tomar as medidas de segurança necessárias para proteger os ativos dos usuários.
Ver original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
17 gostos
Recompensa
17
4
Partilhar
Comentar
0/400
FarmHopper
· 07-06 08:17
Mais um projeto caiu.
Ver originalResponder0
GasFeeWhisperer
· 07-06 08:12
Uma vulnerabilidade de estouro pode causar tanto impacto assim.
Poolz sofre ataque de overflow aritmético, perdas de 66,5 mil dólares em múltiplas cadeias.
Poolz sofre ataque de estouro aritmético, com perdas de cerca de 66,5 mil dólares
Recentemente, vários projetos Poolz em redes blockchain foram alvo de ataques de hackers, resultando no roubo de uma grande quantidade de tokens, com um valor total de cerca de 66,5 mil dólares. Este ataque ocorreu principalmente nas redes Ethereum, BNB Chain e Polygon.
Os atacantes exploraram uma vulnerabilidade de estouro aritmético no contrato inteligente Poolz. Especificamente, o problema reside na função getArraySum dentro da função CreateMassPools. Esta função realiza a soma percorrendo o array _StartAmount, mas não trata adequadamente os estouros. Os atacantes montaram habilmente um array contendo valores extremamente altos, resultando em um resultado de soma que excede o limite do uint256, fazendo com que o valor retornado se tornasse 1.
O processo de ataque é o seguinte:
O atacante primeiro trocou alguns tokens MNZ em um DEX.
Em seguida, chame a função CreateMassPools, passando os parâmetros cuidadosamente projetados. Embora na prática apenas 1 token seja transferido, _StartAmount registra um valor enorme.
Finalmente, retire os fundos através da função withdraw, completando o ataque.
Este incidente envolve vários tokens, incluindo MEE, ESNC, DON, ASW, KMON, POOLZ, entre outros. O token que mais perdeu foi o ASW, com mais de 2 mil milhões de unidades.
Para evitar que esses problemas ocorram novamente, recomenda-se que os desenvolvedores usem uma versão mais recente do compilador Solidity, que possui uma função de verificação de estouro embutida. Para projetos que utilizam versões mais antigas do Solidity, é possível considerar a introdução da biblioteca SafeMath da OpenZeppelin para lidar com problemas de estouro de inteiros.
Este ataque lembrou mais uma vez a importância da segurança dos contratos inteligentes para projetos DeFi. Mesmo operações aritméticas que parecem simples, se mal geridas, podem resultar em sérias vulnerabilidades de segurança. As equipes de projeto devem dar mais atenção à auditoria de código e tomar as medidas de segurança necessárias para proteger os ativos dos usuários.