Flash loan exploit
Um exploit de flash loan é um ataque a um protocolo DeFi. O atacante pede temporariamente emprestada uma grande quantidade de criptoativos para explorar uma falha nesse protocolo.
O que é um exploit de flash loan?
Um flash loan é um empréstimo sem garantia. No entanto, o empréstimo, incluindo a comissão, tem de ser reembolsado na mesma transação. Neste contexto, uma transação é um conjunto de operações executadas em simultâneo.
E se o reembolso não for possível? A blockchain reverte todo o conjunto de operações. Num exploit, um atacante utiliza o empréstimo temporário, por exemplo, para alterar um preço. Depois, outro protocolo pode tomar uma decisão com base em dados incorretos.
A falha geralmente não está no próprio flash loan. O problema está muitas vezes nos dados de preços, nas regras ou nos contratos inteligentes do protocolo atacado.
Um exemplo de exploit de flash loan
Um atacante pede temporariamente emprestada uma grande quantidade de criptoativos e utiliza-a para trocar um token numa DEX. Uma troca tão grande pode provocar, por breves instantes, uma subida acentuada do preço nessa pool.
Um protocolo de empréstimos deteta esse preço elevado e atribui um valor excessivo às garantias do atacante. Por isso, o atacante pode conseguir pedir emprestados demasiados criptoativos. Em seguida, reembolsa o flash loan. Se todas as operações não forem concluídas na mesma transação, tudo é revertido.
Porque são importantes os exploits de flash loan no mundo dos criptoativos?
Os exploits de flash loan podem causar perdas de criptoativos a utilizadores, fornecedores de liquidez e a uma DAO. Por exemplo, o protocolo atacado pode ficar com garantias insuficientes ou um défice. As perdas recaem geralmente sobre esse protocolo, não sobre o prestador do flash loan.
Nas notícias sobre ataques a DeFi, é frequente ler que um ataque explorou um oráculo de preços, o preço de uma DEX ou a governação. Um oráculo informa um protocolo sobre o valor de um token. Se um protocolo confiar num único preço que pode ser manipulado temporariamente, isso pode ser perigoso.
Um flash loan não é automaticamente prejudicial. Também pode ser utilizado normalmente, por exemplo, para fazer arbitragem. Um alerta sobre um exploit de flash loan significa sobretudo que um atacante explorou um ponto fraco num protocolo.