Fundamentos
O Ataque
Esta seção descreve a classe de ataque de forma genérica. Nenhum protocolo, contrato, atacante ou vítima específico é identificado. O foco é o mecanismo, não o caso.
O incidente tratado por este recovery resultou de um ataque direcionado: um agente externo identificou e explorou uma função do Contrato-alvo que manipulava saldos internos, usando-a para corromper a contabilidade do Manager e drenar quase a totalidade da liquidez do LP Token.
Linha do tempo genérica. Antes do bloco T0: chamadas anômalas detectáveis em retrospecto. T0: execução do drain principal e queima da maior parte do LP. T0 + janela curta: detecção pública e início do freeze coordenado.
O que foi atingido
- LP afetado: quase a totalidade do supply foi destruída em uma sequência orquestrada de operações de remoção de liquidez pelo Manager comprometido.
- Saldos internos: a tabela de posições do Contrato-alvo ficou corrompida — não pode ser usada como fonte de verdade.
- Lastro na Custódia: intacto. Esse é o ponto verificável e o que torna o Path 1 viável.
O que NÃO foi atingido
- A Custódia manteve o lastro em stablecoin. O balanço seria público e auditável via chamada
balanceOfno contrato da Stablecoin. - A história de eventos antes de T0 é íntegra. É dela que o snapshot é reconstruído.
Por que reconstruir do histórico, não do estado atual
A função que reescrevia saldos pode ser usada para forjar qualquer estado. Confiar no estado atual do contrato seria confiar no atacante. A solução é reconstruir as posições a partir dos eventos emitidos antes de T0 — esses eventos foram emitidos por código que não conhecia o exploit e refletem o que cada carteira realmente tinha.