Uma stablecoin que estava a ser negociada a $1 caiu para frações de cêntimo em algumas pools. O mecanismo por trás disso vale a pena ser compreendido com precisão.
A Resolv Labs confirmou uma exploração de segurança direcionada à função de cunhagem do seu contrato de stablecoin USR. O ataque foi executado em duas fases. Na primeira, um atacante utilizou aproximadamente $100.000 em USDC para cunhar 50 milhões de tokens USR através das funções requestSwap e completeSwap do protocolo, uma proporção de aproximadamente 500 para 1 entre capital investido e tokens gerados. A empresa de segurança PeckShield identificou uma segunda transação pouco depois, na qual o atacante cunhou mais 30 milhões de USR, elevando a emissão não autorizada total para 80 milhões de tokens.
Analistas da D2 Finance identificaram três vetores potenciais para a violação: um oráculo comprometido que alimentava dados de preços incorretos na função de cunhagem, um signatário off-chain vazado cujas credenciais autorizaram a cunhagem sem suporte legítimo, ou uma ausência crítica de validação de quantidades durante o próprio processo de cunhagem. Qualquer um dos três teria permitido ao atacante contornar os controlos que deveriam ter impedido uma emissão sem garantia a essa escala. A investigação está em curso e nenhuma causa única foi confirmada publicamente.
As consequências da injeção de 80 milhões de tokens sem garantia na infraestrutura de liquidez do USR foram imediatas. O USR caiu da sua paridade de $1,00, sendo negociado a valores tão baixos como $0,257 em algumas plataformas. Na pool USR/USDC na Curve Finance, onde a liquidez concentrada amplifica o impacto no preço, o token caiu para aproximadamente $0,025 devido a um deslizamento severo enquanto o atacante trocava os tokens cunhados por stablecoins legítimas.
O atacante extraiu com sucesso pelo menos $25 milhões ao trocar o USR cunhado por USDC e USDT antes de converter isso em aproximadamente 11.422 ETH. Os $100.000 em USDC utilizados para iniciar a exploração geraram um retorno de pelo menos $25 milhões, um retorno de 250x sobre o capital investido para executar o ataque.
A Resolv Labs declarou que os ativos de garantia originais do protocolo permaneceram suficientes e não foram diretamente roubados na exploração. O dano não veio de levar o que estava lá, mas de criar o que não deveria estar lá e convertê-lo em valor real antes que o protocolo pudesse responder.
A Resolv Labs pausou todas as funções do protocolo imediatamente após confirmar a violação, interrompendo mais cunhagens e limitando danos adicionais. A equipa declarou que está a investigar a exploração e a tentar recuperar os fundos extraídos, embora a recuperação de fundos convertidos em ETH e movidos através da infraestrutura DeFi seja historicamente difícil.
As consequências estenderam-se para além do próprio protocolo da Resolv. A Euler Labs desativou a funcionalidade de garantia de USR e RLP em toda a sua plataforma. O Venus Protocol suspendeu completamente a negociação de USR para proteger os utilizadores da exposição a um ativo sem paridade. Essas respostas refletem a natureza interconectada da infraestrutura de garantia DeFi, onde uma exploração de stablecoin num protocolo cria risco imediato para todos os protocolos que aceitaram essa stablecoin como garantia ou par de negociação.
A exploração segue um padrão que tem aparecido repetidamente em incidentes de segurança DeFi. A vulnerabilidade não estava na garantia subjacente do ativo, mas na lógica do contrato que governa como novos tokens são emitidos. Quando as funções de cunhagem carecem de validação suficiente, o requisito de suporte que dá a uma stablecoin o seu valor pode ser completamente contornado sem tocar nas reservas subjacentes. O custo de entrada de $100.000 e a saída de $25 milhões confirmam quão assimétrica essa vulnerabilidade pode ser quando não é detetada.
O artigo Resolv Labs Confirmed a $25M Exploit That Minted 80 Million Unbacked USR Tokens and Broke the Dollar Peg apareceu primeiro no ETHNews.

