
Table of Contents
Para remover o acesso de um DApp aos seus tokens, você precisa encontrar a aprovação que ele tem e revogá-la em uma transação on-chain separada - desconectar o DApp não remove a permissão, e seus tokens continuam expostos até que a allowance seja definida como 0.
Principais conclusões
- As aprovações vivem on-chain - fechar o app ou a sessão do WalletConnect não muda nada; a permissão de gasto continua ativa até você revogá-la.
- Aprovações ilimitadas aumentam o estrago - uma única permissão ilimitada deixa um contrato gastar todo o saldo atual e futuro do token.
- Revogar evita gastos futuros, não o roubo passado - redefinir uma allowance bloqueia novas transferências, mas não recupera os ativos que um drainer já moveu.
O que são as aprovações de tokens de DApps?
Uma aprovação de token de DApp é uma permissão que o dono de uma carteira concede a um contrato inteligente para gastar um token específico até um valor definido. Sem essa aprovação, uma exchange descentralizada, um mercado de empréstimos ou qualquer outro DApp não consegue mover seus tokens - a aprovação é o que permite que ele faça swap, staking ou transfira os tokens em seu nome quando você interage com ele.
Um contrato inteligente é um programa baseado em blockchain que executa ações automaticamente quando condições predefinidas são atendidas.
Como funcionam as aprovações de tokens de DApps
Uma aprovação de token segue uma sequência fixa: você conecta sua carteira a um DApp, o DApp solicita uma aprovação, ela é registrada on-chain e, a partir daí, o DApp executa a ação aprovada sem perguntar de novo. É assim que funcionam DApps conhecidos como a Aave e a Uniswap. Como a permissão vive na blockchain e não na sessão do app, ela continua valendo muito tempo depois de você parar de usar o DApp.
As aprovações vêm em algumas formas distintas:
- Aprovação limitada: o DApp só pode gastar o valor que você definiu, por exemplo 500 USDC, e precisa solicitar uma nova aprovação para gastar mais.
- Aprovação ilimitada: o DApp pode gastar qualquer quantidade do token escolhido, incluindo tokens que chegarem à sua carteira depois.
- Aprovação de token: o contrato inteligente recebe permissão para gerenciar um token fungível específico, como USDC ou USDT.
- Aprovação de NFT: a permissão pode abranger um único NFT ou uma coleção inteira, por exemplo através de
setApprovalForAll.
A aprovação de token não revela sua frase secreta nem dá a um DApp acesso irrestrito a toda a carteira. Ela se aplica apenas ao token, ao NFT, ao valor e ao contrato inteligente aprovados.
Quando os usuários de carteiras cripto concedem aprovações de tokens?
As aprovações de tokens aparecem em ações cotidianas do DeFi: fazer swap de tokens, emprestar, fazer staking e vender NFTs. Elas podem continuar ativas depois que a ação termina ou que o DApp é desconectado.
Fazer swap de tokens em uma DEX: digamos que você esteja fazendo swap de USDC por ETH na Uniswap - primeiro você aprova o contrato Permit2 (um gerenciador de permissões da Uniswap Labs) para usar USDC. Uma aprovação ilimitada pode continuar ativa depois que o swap é concluído ou cancelado.
Fornecer tokens a um protocolo de empréstimo: para emprestar USDT na Aave, você aprova o contrato Aave Pool para tirar tokens da carteira. Uma allowance não usada pode permanecer depois que o depósito é sacado ou que o DApp é desconectado.
Fazer staking de tokens por um DApp: ao fazer staking pela Aave Umbrella, você aprova o contrato de staking para mover os tokens escolhidos para o pool. Se a aprovação for maior que o depósito, a allowance restante pode continuar funcionando depois que você sai do staking.
Anunciar um NFT à venda: anuncie um NFT na OpenSea e o marketplace pode solicitar acesso a um único NFT ou à coleção inteira através de setApprovalForAll. Uma aprovação para a coleção toda continua valendo até que o usuário a revogue em uma transação separada.
Resgatar tokens de um airdrop: um site falso de airdrop pode esconder uma aprovação ilimitada ou uma assinatura Permit atrás de um botão Claim comum. Depois que você confirma, um wallet drainer pode mover os tokens ou NFTs aprovados sem nenhuma nova solicitação na carteira.
Quais são os riscos das aprovações de tokens?
O perigo não é a aprovação em si, mas aquilo em que ela pode se transformar com o tempo. Três riscos são os mais importantes:
- Allowance ilimitada: o contrato pode gastar todo o saldo atual e futuro do token aprovado, não apenas o valor que você pretendia usar.
- Aprovação remanescente: a permissão continua funcionando por meses ou anos depois da última vez que você mexeu no DApp, então uma aprovação esquecida segue explorável.
- Contrato comprometido: até um DApp legítimo pode ser hackeado depois de você conceder a aprovação, entregando a um invasor o acesso que você já autorizou.
O que são os crypto wallet drainers?
Um crypto wallet drainer é uma ferramenta maliciosa que usa um site de phishing ou um DApp falso para enganar você e fazer com que conceda permissão para transferir seus tokens ou NFTs. Em vez de adivinhar sua frase secreta, um drainer faz você assinar o acesso voluntariamente e depois o usa para tirar seus ativos mais valiosos. Os drainers são uma ameaça grande e ativa: eles roubaram US$ 494 milhões de cerca de 332.000 endereços de carteira em 2024, 67% a mais do que no ano anterior (Scam Sniffer, 2024).
Como os wallet drainers exploram as aprovações de tokens
Um ataque de drainer costuma seguir uma cadeia previsível de etapas:
- O usuário cai em um site falso de mint, airdrop ou investimento.
- O site pede que o usuário conecte a carteira.
- O usuário assina uma aprovação ou uma assinatura permit.
- O drainer varre a carteira e identifica os ativos mais valiosos.
- Os tokens ou NFTs aprovados são transferidos para fora sem nenhuma nova confirmação.
Só conectar uma carteira não permite que ninguém mova seus ativos - o perigo começa apenas depois que você assina uma aprovação ou uma transação maliciosa. Essa única assinatura é a linha entre uma conexão inofensiva e uma carteira drenada.
Por que desconectar um DApp não revoga a aprovação dele
Desconectar e revogar são duas ações diferentes, e apenas uma delas remove a permissão de gasto de um contrato. Desconectar fecha a interface entre sua carteira e o DApp; a aprovação continua vivendo on-chain.
| Ação | O que ela faz | O que continua ativo |
|---|---|---|
| Desconectar | Fecha a conexão entre a carteira e a interface do DApp | As aprovações on-chain concedidas antes |
| Revogar | Remove ou redefine a permissão de gasto do contrato inteligente | O DApp precisa solicitar uma nova aprovação para acessar o token de novo |
Para mostrar a diferença, conectamos a Gem Wallet ao DApp legítimo Uniswap e concedemos ao Permit2 uma aprovação ilimitada em USDC. Depois de desconectar a Uniswap, não sobrou nenhuma sessão ativa do WalletConnect, mas o Revoke.cash ainda mostrava a aprovação com todo o saldo de USDC como valor em risco. Desconectar apenas fecha a conexão com o DApp - a aprovação on-chain permanece até uma transação de revogação separada.
Aprove na Uniswap, desconecte o DApp - e a aprovação continua ativa on-chain na Gem Wallet.
Como revogar aprovações de tokens de DApps: passo a passo
Revogar uma aprovação leva alguns minutos. Veja todo o processo de forma resumida:
- Abra o verificador de aprovações.
- Informe o endereço da sua carteira.
- Selecione a blockchain.
- Revise as aprovações ativas.
- Revogue ou reduza a allowance.
- Confirme a transação.
- Verifique o resultado.
Vamos ver cada etapa em detalhes.
Etapa 1: abra um verificador de aprovações confiável
Abra um verificador de aprovações como o Revoke.cash ou o Etherscan Token Approval Checker e digite o endereço você mesmo, em vez de seguir um link. Existem cópias de phishing dessas ferramentas, então confira o domínio duas vezes antes de conectar qualquer coisa.
Etapa 2: informe o endereço da sua carteira cripto
Comece em modo somente leitura colando o endereço público da sua carteira - isso permite ver todas as aprovações ativas sem conectar nem assinar. Conectar pelo WalletConnect só é necessário quando você já estiver pronto para revogar.
Etapa 3: selecione a blockchain correta
Escolha a rede em que a aprovação foi concedida, porque cada chain guarda as próprias aprovações. Ethereum, BNB Chain, Polygon, Base e outras redes precisam ser verificadas separadamente - uma aprovação em uma chain é invisível em outra.
Etapa 4: revise o spender e a allowance
Em cada entrada, verifique o token, o contrato inteligente (spender), o valor aprovado, a data em que ela foi concedida e o valor em risco. Um spender desconhecido ou um valor ilimitado em um token que você tem é o sinal mais claro de que uma aprovação deve sair.
Etapa 5: revogue ou reduza a aprovação de token
Remova por completo uma aprovação de que você não precisa mais, ou reduza a allowance para o valor que você realmente pretende usar. Tocar em Revoke monta uma transação que redefine para 0 a allowance de gasto daquele contrato.
Etapa 6: confirme a transação na sua carteira
A solicitação abre na sua carteira, como a Gem Wallet, pelo WalletConnect. Antes de confirmar, verifique se:
- Valor: a allowance aprovada muda para 0 USDC.
- Contrato: USDC.
- Método: Approve.
- Spender: Permit2.
- Rede: Ethereum.
Confirmar exige uma taxa de rede (por exemplo, em ETH), já que essa é a transação on-chain que de fato remove a permissão. Aprove-a na Gem Wallet para enviá-la.
Etapa 7: verifique se a aprovação foi removida
Recarregue o Revoke.cash e confirme que a aprovação sumiu ou que o valor dela mudou. No nosso teste, o painel foi atualizado para 0 aprovações, US$ 0 de valor em risco e uma lista de aprovações vazia - prova de que o contrato não pode mais gastar USDC até pedir de novo.
Toque em Revoke, confirme a allowance de 0 USDC na Gem Wallet e verifique que a aprovação sumiu.
Quais aprovações de tokens você deve revogar?
Nem toda aprovação precisa ser removida, mas algumas são candidatas claras. Revogue uma aprovação quando:
- DApp sem uso: você não usa mais o DApp que a detém.
- Spender desconhecido: você não reconhece o contrato spender.
- Valor ilimitado: a aprovação foi concedida para um valor ilimitado.
- Anúncio de NFT antigo: a permissão está ligada a um anúncio de NFT que você já encerrou.
- Hack divulgado: o projeto revelou um hack ou exploit.
- Origem suspeita: a aprovação apareceu depois de um mint ou airdrop questionável.
- Motivo esquecido: você não lembra por que a concedeu em primeiro lugar.
O que fazer se sua carteira cripto já foi drenada
Revogue imediatamente todas as aprovações ativas: revogar interrompe novos gastos, mas não recupera os ativos que já foram roubados. Se sua frase secreta ou chave privada foi exposta, crie uma nova carteira em um dispositivo limpo e mova para lá os fundos restantes. Se um bot sweeper estiver vigiando o endereço, não envie gas para o endereço comprometido sem um plano separado de resgate dos ativos.
Como usar DApps sem ser drenado
Revogar limpa as permissões que você já concedeu - mas o hábito mais seguro é pegar uma aprovação arriscada antes mesmo de assiná-la. Algumas regras cobrem a maioria dos casos:
- Verifique o domínio: confira a URL exata do DApp antes de conectar.
- Ignore iscas de aprovação: não assine aprovações pouco claras só para resgatar um airdrop.
- Limite o valor: limite o valor aprovado em vez de conceder um valor ilimitado.
- Fique de olho no setApprovalForAll: trate as permissões de NFT para a coleção inteira com cuidado extra.
- Confira o spender: confirme que o endereço do spender pertence ao protocolo real.
- Faça limpezas regulares: remova aprovações antigas periodicamente.
- Isole o risco: use uma carteira separada para DApps novos e não confiáveis.
Use DApps em mais de 100 blockchains com a Gem Wallet - uma carteira de autocustódia e totalmente de código aberto que guarda as chaves privadas no seu dispositivo e não coleta dados pessoais. Baixe a Gem Wallet e conecte-se a apps compatíveis com WalletConnect mantendo o controle total das suas chaves.


