Futuros
Acesse centenas de contratos perpétuos
TradFi
Ouro
Plataforma única para ativos tradicionais globais
Opções
Hot
Negocie opções vanilla no estilo europeu
Conta unificada
Maximize sua eficiência de capital
Negociação demo
Introdução à negociação de futuros
Prepare-se para sua negociação de futuros
Eventos de futuros
Participe de eventos e ganhe recompensas
Negociação demo
Use fundos virtuais para experimentar negociações sem riscos
Lançamento
CandyDrop
Colete candies para ganhar airdrops
Launchpool
Staking rápido, ganhe novos tokens em potencial
HODLer Airdrop
Possua GT em hold e ganhe airdrops massivos de graça
Launchpad
Chegue cedo para o próximo grande projeto de token
Pontos Alpha
Negocie on-chain e receba airdrops
Pontos de futuros
Ganhe pontos de futuros e colete recompensas em airdrop
Investimento
Simple Earn
Ganhe juros com tokens ociosos
Autoinvestimento
Invista automaticamente regularmente
Investimento duplo
Lucre com a volatilidade do mercado
Soft Staking
Ganhe recompensas com stakings flexíveis
Empréstimo de criptomoedas
0 Fees
Penhore uma criptomoeda para pegar outra emprestado
Centro de empréstimos
Centro de empréstimos integrado
Centro de riqueza VIP
Planos premium de crescimento de patrimônio
Gestão privada de patrimônio
Alocação premium de ativos
Fundo Quantitativo
Estratégias quant de alto nível
Apostar
Faça staking de criptomoedas para ganhar em produtos PoS
Alavancagem Inteligente
Alavancagem sem liquidação
Cunhagem de GUSD
Cunhe GUSD para retornos em RWA
Análise profunda: Ataque de manipulação do NAV do empréstimo relâmpago do cofre Morpho após a desvinculação do USR
Escrevendo: Espinafre Espinafre
Em 22 de março de 2026, o protocolo Resolv sofreu uma fuga de chaves privadas, e um atacante criou do nada 80 milhões de USR sem garantia, fazendo o USR cair de $1 para $0,025.
As consequências desta catástrofe não ficaram apenas com os detentores de USR; um grupo mais inteligente executou um ataque de manipulação de NAV de cofres na Morpho.
Este artigo irá detalhar passo a passo a lógica por trás deste ataque.
Antes de falar do ataque, é essencial compreender o design da arquitetura da Morpho, caso contrário, tudo ficará incompreensível.
A Morpho é dividida em duas camadas:
Camada inferior:
Morpho Blue (também chamado Morpho Core). É um protocolo de empréstimo extremamente simples e não atualizável. Sua filosofia de design é “sem permissão” — qualquer pessoa pode criar mercados de empréstimo, depositar, emprestar e liquidar.
Cada mercado é definido por cinco parâmetros únicos: ativo de empréstimo, ativo de garantia, limite de liquidação (LLTV), endereço do oráculo, modelo de taxa de juros.
Os mercados são completamente isolados; um problema em um não afeta os outros.
Camada superior:
MetaMorpho Vault (cofre). É um cofre padrão ERC-4626, equivalente a um “produto de fundo”.
Os usuários depositam USDC no cofre, e o administrador do cofre (Curator) é responsável por alocar esses fundos em diferentes mercados Morpho Blue para emprestar e ganhar juros.
Os usuários possuem cotas do cofre (shares), cujo valor aumenta com os juros acumulados.
Fórmula principal — Valor líquido por ação (NAV / Preço por ação): Valor líquido por ação = totalAssets / totalSupply
totalAssets é a soma das posições de fornecimento em todos os mercados (incluindo as emprestadas, pois são “contas a receber”). totalSupply é o total de cotas emitidas pelo cofre. Com a acumulação de juros, totalAssets aumenta, mas totalSupply permanece o mesmo, elevando o NAV — assim você ganha dinheiro.
Este é o primeiro ponto-chave do ataque.
Na Morpho Blue, a função supply() possui um parâmetro onBehalf. Essa funcionalidade foi criada para facilitar pagamentos por terceiros — por exemplo, contratos de estratégias automatizadas podem depositar em nome do usuário.
Porém, ela é totalmente sem permissão: qualquer pessoa pode especificar qualquer endereço como onBehalf, incluindo o endereço do cofre.
A documentação oficial da Morpho alerta claramente: “Warning: Anyone can supply on behalf of the vault so the call to updateWithdrawQueue that expects a market to be empty can be griefed by a front-run.”
Ao depositar 10.000 USDC em nome do cofre, a posição de fornecimento do cofre nesse mercado aumenta em 10.000, e totalAssets também aumenta em 10.000. Mas o total de cotas (totalSupply) do cofre não muda — pois ninguém depositou novos fundos usando a função deposit() do cofre.
Resultado: o NAV é inflacionado.
Normalmente, isso equivale a “doar” dinheiro ao cofre — você aumenta os lucros de todos os cotistas às suas custas, o que é uma prática idiota. Mas, sob certas condições, isso pode ser explorado.
Após a desancoragem do USR, alguns administradores de cofres rapidamente definiram o Supply Cap do mercado USR/USDC para 0, significando que não podem mais depositar fundos nesse mercado. Parece que o problema foi resolvido?
O problema é que: o Supply Cap é uma limitação ao nível do cofre, não do Morpho Blue.
O administrador do cofre controla apenas a função interna _supplyMorpho().
Porém, supply(onBehalf=vault) interage diretamente com o contrato Morpho Blue, ignorando toda a lógica do nível do cofre: fila de fornecimento (supply queue), limite de fornecimento (supply cap), verificação de permissões do alocador, etc.
Para ilustrar: o administrador fecha a porta da frente (Cap=0), mas um atacante consegue colocar dinheiro diretamente pelo backdoor do Morpho Blue.
Este é o segundo ponto-chave.
O mercado USR/USDC usa um oráculo fixo de 1:1. Ou seja, independentemente de quanto o USR caia no mercado externo, no universo Morpho, 1 USR sempre equivale a 1 USDC.
Por que o administrador usaria um oráculo fixo? Porque o USR é uma “stablecoin”, com pouca volatilidade normal. Oráculos fixos evitam “liquidações falsas” causadas por falta de liquidez de curto prazo.
Porém, quando o USR realmente desancla, o oráculo fixo se torna uma catástrofe — os tomadores de empréstimo usam USR sem valor como garantia para pegar USDC, e o protocolo não percebe.
O mecanismo de tratamento de inadimplência do Morpho falha aqui — as versões V1.0 e V1.1 dependem de o protocolo detectar inadimplência para agir.
Com o oráculo fixo, nada é detectado.
Agora, todas as condições estão presentes. A seguir, as operações atômicas realizadas em uma única transação:
[Detalhes das etapas do ataque]
Este é um ponto frequentemente negligenciado. O lucro do ataque vem de “aumentar artificialmente o totalAssets e distribuir o valor por cotas”. Se o atacante não usar um flashloan, ele terá 0% de cotas — mesmo que ele aumente o totalAssets, o valor extra vai para os demais cotistas, e ele não lucra nada.
O USDC extra de 12.300 USDC obtido pelo atacante não surgiu do nada. Essa quantia veio da liquidez real de outros mercados saudáveis do cofre.
Quando o cofre faz resgates, ele retira USDC de vários mercados na ordem da fila de retirada (withdraw queue). Como o USR/USDC foi drenado, não há fundos disponíveis ali. Assim, o resgate vem de outros mercados — como wETH/USDC, cbBTC/USDC, etc., que estão operando normalmente.
Este ataque não é causado por uma única falha, mas pela combinação de três problemas de design:
[Detalhes das vulnerabilidades]
Conclusão
A filosofia de design minimalista da Morpho — sem permissão, não atualizável, governança mínima — geralmente é uma vantagem. Mas este incidente mostra que o custo do minimalismo é transferir maior responsabilidade para os participantes de camada superior.
Sem validação de oráculos, o administrador deve cuidar disso. Sem restrições ao supply(onBehalf), o nível do cofre precisa de proteções adicionais.
Para os depositantes, “escolher o Curator certo” é mais importante do que “escolher a Morpho”. O protocolo é uma ferramenta; sua segurança depende de quem a usa.