O recente hack @ResupplyFi mostra como uma simples divisão inteira pode levar a uma manipulação catastrófica do cofre. Um exploit de US$ 9,56 milhões executado poucas horas após a implantação. Vamos detalhar essa vulnerabilidade crítica ERC4626 ↓
2/ Vetor de ataque: ERC4626 manipulação da "primeira doação": • Cofre vazio na implantação • O atacante deposita 1 wei • Faz grandes doações de ativos • O preço das ações infla astronomicamente • Quebras de cálculo da taxa de câmbio do protocolo
3/ A vulnerabilidade em uma linha: _exchangeRate = 1e36 / IOracle(_exchangeRateInfo.oracle).getPrices(address(collateral)); Divisão de inteiros sem proteção de arredondamento → arredondamento da taxa de câmbio para zero quando o preço do oráculo é muito grande.
4/ A cadeia de exploração: 1. Deposite 1 wei no cofre vazio 2. Doe para inflar o preço das ações 3. Oracle relata preço inflado 4. Taxa de câmbio = 0 devido à divisão 5. Verificação de LTV: 0 <= maxLTV (sempre verdadeiro!) 6. Empréstimos ilimitados desbloqueados
5/ A prevenção é simples: _exchangeRate = 1e36 / preço; require(_exchangeRate 0, "Taxa inválida"); Também: • Impor depósitos mínimos • Adicionar verificações de proporção de ações • Monitorar a liquidez do cofre
6/ Lição principal: ERC4626 cofres precisam de proteção extra na implantação. O problema do "primeiro depositante" não é novo, mas o ResupplyFi mostra como ele pode se transformar em uma vulnerabilidade crítica. Leia a análise técnica completa em nosso blog:
3,72K