🧵1/ ⚠️ Análise de Exploração: Perda de $80M no Ataque à Resolv Labs Hoje mais cedo, @ResolvLabs foi explorado devido a uma falha no seu mecanismo de validação de parâmetros centralizado. Com apenas ~$200K em capital, o atacante cunhou 50M e 30M USR usando $100K USDC cada, resultando em uma perda total de cerca de $80M. Após o incidente, a stablecoin $USR desvalorizou brevemente para $0.051.
🧵2/ Mecanismo de Ataque A função completeSwap no contrato #TheCounter da Resolv Labs permite que a quantidade de $USR cunhada seja determinada através do parâmetro _targetAmount.
🧵3/ A função completeSwap verifica que o endereço do chamador (msg.sender) deve possuir o SERVICE_ROLE. Isso significa que, após um usuário submeter uma transação de troca, a equipe do projeto precisa realizar uma validação centralizada dos parâmetros, como _targetAmount, e somente após confirmar a correção, eles chamarão esta função para completar a transação. Com base nas duas transações de ataque, $100K USDC corresponderam a valores de _targetAmount de 50M e 30M USR, respetivamente. É evidente que o mecanismo de validação de _targetAmount do projeto falhou. Uma vez que a validação de _targetAmount é centralizada e não é de código aberto, a causa raiz não pode ser determinada neste estágio. Possibilidades como envolvimento de insiders, comprometimento do sistema centralizado ou vazamento da chave privada do SERVICE_ROLE não podem ser descartadas.
2/ Mecanismo de Ataque A função completeSwap no contrato #TheCounter da Resolv Labs permite que a quantidade de $USR cunhada seja determinada através do parâmetro _targetAmount.
2,32K