Pular para o conteúdo
Dicas de segurança · · 4 min de leitura · 756 palavras · Atualizado

Como verificar o que sua carteira já aprovou

Uma aprovação de token é uma autorização permanente que sobrevive à transação que a criou. Veja como enxergar o que as suas autorizaram, usando ferramentas em que você já confia.

Compartilhar
Ilustração de guia da Conisec: ler, verificar, decidir, agir.
Conisec guide illustration: read, verify, decide, act.

A maioria das pessoas que perde tokens para um contrato malicioso não foi hackeada em nenhum sentido técnico. Elas aprovaram algo, e a aprovação continuou funcionando muito depois de terem esquecido dela. Este guia explica o que é uma aprovação, como olhar as suas e — igualmente importante — do que essa verificação não protege você.

O que é, de fato, uma aprovação

Os tokens fungíveis padrão não permitem que um contrato retire tokens de você. Em vez disso, você concede um limite autorizado: uma permissão permanente para que um endereço gastador designado movimente até determinada quantia de determinado token a partir do seu endereço, quando quiser.

Três propriedades dessa permissão importam, e as três surpreendem as pessoas:

  • Ela persiste. O limite autorizado não é consumido pela transação para a qual você o concedeu. Ele permanece até ser esgotado ou alterado.
  • Costuma ser ilimitado. As interfaces normalmente solicitam o maior valor possível, porque isso evita novas solicitações e economiza gás. Ou seja, a permissão cobre todo o seu saldo daquele token — inclusive os tokens que você adquirir depois.
  • Ela é específica de um endereço, não de um aplicativo. Você está confiando em um endereço de contrato. Se um front-end for comprometido e pedir que você aprove um endereço diferente, nada no site parecerá errado.

O incidente da BadgerDAO é a ilustração mais clara do nosso rastreador. Os contratos do protocolo nunca foram explorados. Os atacantes injetaram script no site pedindo aos usuários aprovações para um endereço que controlavam, e as aprovações fizeram o resto.

Como olhar suas aprovações

As aprovações são dados públicos on-chain. Você não precisa de um serviço especial para vê-las, e nós deliberadamente não indicamos nenhum.

Todo explorador de blocos relevante oferece uma visão de aprovações, ou de aprovações de token, para um endereço. Cole o seu próprio endereço público — aquele que começa com 0x e que você compartilha para receber fundos — e você verá a lista de endereços gastadores que a sua conta autorizou, por token, com o valor do limite autorizado.

Essa é uma consulta somente leitura. Não exige conexão de carteira, nem assinatura, nem chave. Se algo que se propõe a mostrar suas aprovações quiser que você conecte uma carteira antes de exibi-las, feche.

Lendo a lista

Você está procurando três coisas:

  1. Gastadores que você não reconhece. Um endereço que você não consegue associar a um protocolo que usou deliberadamente.
  2. Protocolos que você não usa mais. Um limite autorizado concedido a um serviço que você parou de usar há dois anos continua ativo hoje.
  3. Limites ilimitados sobre saldos grandes. A exposição é o saldo, não o valor que você transacionou originalmente.

O que a Conisec não vai mandar você fazer

Não vamos dizer para você revogar nada, e não colocamos links para ferramentas de revogação. Essa é uma posição editorial deliberada, não cautela pela cautela.

Depois de qualquer incidente público, sites fraudulentos de “revogação”, “recuperação” e “verificação” aparecem rapidamente, são anunciados de forma agressiva e muitas vezes se posicionam bem justamente nas buscas que uma pessoa preocupada faz. Uma publicação que rotineiramente envia leitores a interfaces de gerenciamento de aprovações treina exatamente o hábito de que esses atacantes dependem. O que fazer com uma aprovação que você não gostou é uma decisão sua, tomada por meio de uma interface em que você já confia e alcançada por um caminho que você já conhece.

Do que isso não protege você

Revisar aprovações vale a pena, e não é uma estratégia de segurança por si só. Não resolve nada quanto a:

  • Uma frase de recuperação comprometida. Se alguém tem a sua frase de recuperação, os limites autorizados são irrelevantes — essa pessoa tem a conta.
  • Assinar uma transação maliciosa. As aprovações regem transferências de tokens por terceiros; elas não impedem que você mesmo autorize uma transferência.
  • Assinaturas off-chain. Alguns esquemas de permissão e ordens de marketplace se apoiam em mensagens assinadas em vez de limites autorizados on-chain, e essas não aparecem em uma visão de aprovações padrão.
  • Ativos em uma corretora. Tokens mantidos em uma plataforma custodial não estão na sua carteira e não têm aprovações associadas.

O hábito que vale a pena criar

Olhe suas aprovações de vez em quando, a partir do seu próprio favorito para um explorador de blocos que você já usa, quando nada deu errado. A pior hora para aprender essa interface são os vinte minutos depois de você ler que um protocolo que você usa foi explorado — que é exatamente o momento em que uma versão falsa dela estará esperando por você.

Não é aconselhamento. A Conisec publica apenas para fins informativos. Nada neste artigo é orientação financeira, jurídica, tributária ou de segurança. Confira nas fontes primárias linkadas acima antes de agir com base em qualquer coisa.

Continue explorando