Por que sua carteira mostra uma transferência que você nunca enviou: transações de valor zero e envenenamento de endereço
Uma transação de saída desconhecida não significa automaticamente que sua carteira foi invadida. Entenda o que registros de valor zero, endereços parecidos e movimentações reais de ativos de fato comprovam.
O que esse registro comprova sobre minha carteira?
Se o histórico mostrar de repente que você enviou 0 USDT para um endereço desconhecido, esse registro, por si só, não demonstra que alguém acessou sua chave privada. Um terceiro pode criar determinados registros de transferência de zero tokens que indicam seu endereço sem sua assinatura ou autorização para gastar um valor diferente de zero. O registro pode existir na blockchain mesmo que você nunca tenha iniciado a operação.
As perguntas úteis são mais específicas: Qual é o ativo? Quanto realmente foi movimentado? Quem enviou a transação? O que autorizou algum gasto real?
- Um evento de token com quantidade zero não prova que você assinou ou gastou algo. Para um token legítimo, uma quantidade exatamente igual a zero significa que aquela transferência não movimentou tokens.
- Uma transferência com o nome de um token conhecido não identifica o ativo. Um contrato não relacionado pode usar o mesmo nome e símbolo.
- Um pequeno pagamento recebido pode ser real e, ao mesmo tempo, inserir um endereço de remetente enganoso no seu histórico.
- Uma saída confirmada e inexplicada de ativos legítimos exige investigação. Não a descarte porque outro campo indica zero.
Este guia aborda Ethereum, BNB Smart Chain (BSC) e redes semelhantes que utilizam contratos de tokens no estilo Ethereum. Os exemplos são registros fictícios e deliberadamente simplificados, não capturas de tela nem constatações sobre uma carteira específica.
Primeiro, identifique qual campo indica zero
As pessoas usam transação de valor zero para se referir a coisas diferentes. Apenas uma destas indicações significa que a quantidade de tokens é zero:
- Quantidade de tokens: 0 USDC. No contrato legítimo do USDC, uma quantidade exatamente igual a zero significa que essa transferência não movimenta USDC.
- Valor da transação: 0 ETH. Nenhum ETH foi associado à transação principal. Tokens ainda podem ser movimentados e ações de contratos ainda podem ser executadas.
- Valor estimado: $0.00. A interface mostra uma avaliação em moeda fiduciária. Isso não determina a quantidade de tokens.
Na BSC, o campo de moeda nativa normalmente usa BNB em vez de ETH. Uma interação com contrato de valor nativo zero pode transferir tokens, alterar permissões de gasto ou acionar outras operações. O valor nativo é separado dos dados de entrada da transação.
Um valor positivo pequeno pode ser arredondado para $0.00. Um ativo sem preço confiável também pode apresentar uma avaliação fiduciária pouco útil. Expanda a quantidade de tokens para ver toda a precisão; mesmo uma quantidade exibida como 0.00 pode ocultar um valor positivo menor. A oscilação do valor da carteira não é um registro confiável das unidades que entraram ou saíram da conta.
Zero é uma quantidade de tokens permitida; portanto, zero por si só não caracteriza um ataque. Endereços parecidos e dados de pagamento copiados são indícios que merecem investigação.
Por que os dois campos From podem ser diferentes
O histórico de uma carteira pode combinar informações de diferentes camadas:
- A transação: a instrução assinada enviada à rede. Em uma transação convencional do Ethereum, o campo From principal identifica a conta que assinou.
- O evento de token: um registro emitido por um contrato durante a execução. Um evento Transfer possui seus próprios campos From, To e quantidade.
- A linha do histórico: a apresentação dessas informações pela carteira ou pelo explorador. Ela pode marcar um evento como OUT porque o evento identifica seu endereço como remetente.
Esses dois campos From não são intercambiáveis. A presença do seu endereço dentro de um evento não equivale a uma assinatura da sua carteira. Um contrato malicioso pode inserir seu endereço nos dados do evento, mas isso não faz com que seu log tenha origem no contrato do token legítimo. Portanto, o contrato emissor é uma parte essencial das evidências.
Da mesma forma, um hash de transação identifica uma transação; não comprova seu consentimento. Uma transação incluída com status Success indica que sua execução externa não foi revertida. Não representa um aval ao token, ao destinatário ou à finalidade.
Cinco exemplos comentados de históricos de transações
Exemplo 1: uma transferência de saída de zero tokens que você nunca assinou
Registro no histórico: OUT · 0 USDC · Seu endereço para um endereço desconhecido e parecido.
- From da transação: uma conta não relacionada enviou a transação.
- From do evento de token: o evento indica seu endereço.
- Contrato emissor do token: o contrato legítimo do USDC nessa rede.
- Quantidade exata de tokens: zero.
O que isso comprova: o contrato legítimo do token registrou uma transferência de zero tokens indicando seu endereço. Essa transferência específica não movimentou USDC. Isso não demonstra que sua carteira assinou a transação, que o solicitante tem permissão para gastar uma quantidade positiva ou que sua chave foi roubada.
Como isso acontece: o ERC-20, padrão comum de tokens, exige que transferências de valor zero emitam eventos Transfer. Em implementações comuns, a função delegada transferFrom verifica se a quantidade solicitada ultrapassa a autorização concedida ao solicitante. Zero não ultrapassa uma autorização igual a zero. Sujeita às outras regras do contrato, a chamada pode ter sucesso sem uma aprovação prévia.
Isso não é uma garantia universal para todos os tokens. Contratos específicos podem impor restrições adicionais.
O que verificar em seguida: examine o restante da transação. Uma linha com zero descreve apenas aquela linha; outra operação pode ter um efeito diferente. Se for um registro isolado de envenenamento, sem gastos suspeitos ou alterações de permissões, a resposta adequada é evitar o endereço plantado, não presumir que a carteira precisa ser substituída.
Exemplo 2: uma transação falsa que mostra uma grande quantidade de tokens
Registro no histórico: OUT · 2,500 USDC · Seu endereço para um endereço desconhecido.
- Símbolo do token exibido: USDC.
- Contrato emissor: um contrato não relacionado, não o USDC legítimo.
- Quantidade informada pelo evento: 2,500.
- Movimentação de USDC legítimo nesta transação: nenhuma.
O que isso comprova: outro contrato emitiu um registro apresentado com o rótulo USDC. Isso não prova que 2,500 USDC legítimos saíram da sua conta.
Uma transação falsa em uma carteira pode consistir em dados reais da blockchain interpretados de maneira enganosa. Golpistas podem copiar o nome e o símbolo de um token e emitir eventos semelhantes aos seus pagamentos anteriores, inclusive nos valores. Contratos fora do padrão também podem emitir registros de transferência que não correspondem a mudanças em seus próprios saldos.
O que verificar em seguida: identifique a rede e o contrato exato que emitiu o evento. Compare o endereço com as informações de contrato do emissor obtidas de forma independente para essa rede. Um símbolo, logotipo ou selo de verificação do código-fonte conhecido não basta para estabelecer a identidade do emissor.
Exemplo 3: um pagamento real minúsculo vindo de um endereço parecido
Registro no histórico: IN · 0.000001 USDC · Um endereço desconhecido para seu endereço.
Suponha que o contrato legítimo do token confirme a transferência e que seu saldo de tokens aumente nessa pequena quantidade. Nesse caso, tokens reais chegaram. Recebê-los não exigiu que você aprovasse o remetente e não concede a ele autorização para gastar.
A armadilha é o endereço. Considere estes exemplos fictícios, separados por espaços para que todos os caracteres fiquem visíveis. Endereços reais não contêm espaços; os grupos centrais em negrito são diferentes:
Destinatário verificado: 0x7a2f 1111 2222 3333 4444 5555 6666 7777 8888 9c4d
Endereço plantado: 0x7a2f aaaa bbbb cccc dddd eeee ffff 0000 1111 9c4d
Uma interface que mostra apenas o início e o fim poderia exibir ambos como 0x7a2f...9c4d.
O que isso comprova: alguém enviou a você uma pequena quantidade a partir daquele endereço. Não prova que o remetente é seu destinatário habitual ou uma conta sob seu controle. Os caracteres visíveis coincidentes não demonstram propriedade.
O que verificar em seguida: obtenha o destino pretendido de um contato verificado separadamente ou da página confiável da conta do destinatário. Compare o endereço completo. O envenenamento de endereço tenta transformar um registro plantado no histórico no endereço que você escolhe para um pagamento futuro. A perda pode ocorrer depois, quando você autoriza uma transferência perfeitamente válida para o destino errado.
Exemplo 4: zero ETH, mas 2,500 tokens legítimos saem
Cabeçalho da transação: Value · 0 ETH.
- Valor nativo associado à chamada: 0 ETH.
- Transferência de token legítimo: 2,500 USDC do seu endereço.
- Variação do saldo USDC causada por esta transação: redução de 2,500 USDC.
- Status de execução: Success.
O que isso comprova: USDC legítimos saíram neste exemplo. O zero descreve o ETH associado à chamada. Não descreve a transferência de USDC nem exclui os custos de gas.
O que permanece desconhecido: por que o pagamento ocorreu e se você o pretendia. Pode corresponder a um swap, depósito, operação agendada, pagamento para endereço errado ou gasto não autorizado. Compare com a ação que você realizou e com o destino pretendido antes de classificá-lo.
Exemplo 5: tokens legítimos saem, mas outra conta enviou a transação
Registro no histórico: OUT · 500 USDC legítimos · Um destino desconhecido.
Suponha que a transação bem-sucedida tenha reduzido seu saldo de USDC legítimos em 500, mas que o campo From principal identifique outra pessoa.
O que isso comprova: os tokens foram movimentados. O fato de o remetente da transação ser diferente não torna essa movimentação falsa.
Alguém previamente aprovado para gastar pode usar uma autorização de tokens sem pedir que você assine uma nova transação a cada retirada. Alguns tokens também aceitam assinaturas permit, que autorizam um limite por meio de uma mensagem assinada que outra parte pode enviar. Contas inteligentes e carteiras delegadas oferecem outras maneiras de terceiros enviarem operações autorizadas.
O que verificar em seguida: examine quem tem permissão para gastar, a autorização relevante ou permissão assinada e a operação da carteira. Se o débito continuar inexplicado, trate-o como um incidente de segurança. As evidências podem indicar uma aprovação prejudicial, uma assinatura enganosa ou controle comprometido da conta; a linha, sozinha, não distingue essas possibilidades.
Em uma transação comum assinada diretamente, seu endereço no campo From principal da transação é evidência de uma assinatura válida para essa conta. Ainda assim, não prova que você entendeu a ação, pretendia aquele destinatário ou a iniciou pessoalmente. O campo From de um evento de token oferece evidências muito mais fracas.
O que realmente mediram as 270 milhões de tentativas de envenenamento
Uma análise de dois anos da atividade no Ethereum e na BSC, de 1º de julho de 2022 a 30 de junho de 2024, identificou aproximadamente 270 milhões de registros de transferências de envenenamento direcionados a 17 milhões de endereços.
Os registros se dividiram em três categorias:
- 147.7 milhões de transferências de valor zero.
- 118.4 milhões de transferências de tokens falsificados.
- 4.0 milhões de transferências minúsculas.
Eram registros de transferência distribuídos por cerca de 18.2 milhões de transações, pois invasores podem agrupar registros. Endereços visados não equivalem a pessoas, carteiras comprometidas ou vítimas que perderam dinheiro.
A análise identificou 6,633 transferências de pagamento bem-sucedidas, totalizando pelo menos $83.8 milhões. Algumas vítimas pagaram mais de uma vez. A detecção se concentrou em stablecoins selecionadas; portanto, a estimativa de perdas é um limite inferior dentro desse escopo, não um total para todos os tokens ou redes.
A implicação prática é que verificar apenas quantidades iguais a zero deixa passar uma parte considerável do ataque. Registros falsificados podem imitar um pagamento significativo, e uma pequena transferência recebida pode movimentar tokens reais enquanto introduz um endereço perigoso.
Como examinar seu registro específico
- Abra a transação na rede correta. Use a opção de explorador da carteira ou um explorador conhecido, como Etherscan ou BscScan. Confira o status da transação. Ler detalhes públicos não exige conectar uma carteira, aprovar tokens, assinar uma mensagem nem informar uma frase de recuperação.
- Identifique o ativo real. Diferencie ETH ou BNB nativos de um token que usa esse nome. Para tokens, confira a rede exata e o contrato emissor com uma referência confiável do emissor.
- Leia a quantidade com precisão total. Separe a quantidade de tokens do valor nativo da transação e da estimativa em moeda fiduciária.
- Diferencie o remetente da transação do remetente do evento. No caso de uma conta inteligente, examine também a operação da carteira e suas permissões. Outra pessoa pagar o gas não prova que seus ativos não foram movimentados.
- Analise a transação inteira. Examine todas as movimentações de tokens, transferências de moedas nativas e alterações de permissões relevantes. Se o explorador fornecer mudanças de saldo por transação, use-as para conciliar o resultado. Um saldo inalterado hoje é evidência mais fraca: depósitos posteriores ou transferências compensatórias podem ocultar uma movimentação anterior.
- Verifique o destino de maneira independente. Use os dados de pagamento confiáveis do destinatário ou uma entrada da agenda de endereços que você verificou anteriormente. Uma linha recente do histórico é evidência a examinar, não prova do destino correto.
Se o explorador não esclarecer o resultado, forneça à equipe oficial de suporte da carteira a rede e o hash público da transação. Descreva a ação que você esperava, se houver. Esses dados ajudam a distinguir uma operação desconhecida, mas intencional, de gastos inexplicados sem revelar os segredos que controlam sua carteira.
O que fazer após a verificação
Se você encontrou apenas um registro isolado de envenenamento
Oculte ou denuncie o spam se sua carteira permitir e evite usar os endereços presentes nele. Ocultar uma linha altera a interface; não apaga o histórico da blockchain nem revoga permissões.
Uma transferência de zero pode ocorrer com autorização de gasto zero. Portanto, o registro sozinho não é motivo para revogar todas as aprovações ou movimentar todos os fundos. Pode não existir nenhuma permissão de gasto associada àquele registro para remover. Nunca use o site anunciado de um token nem um link de recuperação enviado por desconhecidos para “limpar” sua carteira.
Se você encontrou uma permissão de gasto suspeita
Use o caminho confiável de gerenciamento de aprovações da sua carteira para revisar e revogar a autorização relevante. Desconectar um site da carteira não revoga as aprovações de tokens já existentes na blockchain. Uma revogação resolve aquela permissão; não conserta uma chave privada roubada.
Se ativos legítimos foram movimentados sem sua intenção
Guarde o hash da transação, a rede, o ativo afetado e os endereços relevantes. Revise assinaturas, aprovações e operações recentes da carteira por meio dos canais oficiais de suporte.
Se houver evidência de exposição da sua frase de recuperação ou chave privada, crie uma nova carteira com uma nova frase de recuperação em um dispositivo confiável e siga um plano cuidadoso para transferir os ativos restantes. Outra conta derivada da frase comprometida não resolve a exposição. Se fundos desaparecerem automaticamente, não continue adicionando dinheiro para gas: um programa varredor pode capturá-lo.
Se você assinou conscientemente um pagamento, mas copiou um destino envenenado, registre essa distinção. O pagamento pode ter sido assinado e executado corretamente, mas enviado ao destinatário errado. Esse resultado, por si só, não demonstra que sua chave privada foi roubada.
Perguntas comuns sobre transações desconhecidas
O invasor me fez pagar gas?
No cenário comum de envenenamento, o invasor envia a transação e paga a taxa da rede. Apenas indicar seu endereço em um evento de token não gera cobrança na sua conta. No entanto, transações patrocinadas e contas inteligentes significam que o pagador da taxa, sozinho, não determina se uma operação foi inofensiva. Confira os efeitos reais.
E se a transação falhou?
Uma transferência de token revertida não concluiu essa transferência, embora ainda possa haver cobrança de gas. Se a carteira usa delegação de conta, verifique isso separadamente: o Ethereum pode manter uma delegação mesmo quando uma execução posterior falha. Uma delegação desconhecida merece análise.
Uma carteira de hardware impediria o envenenamento de endereço?
Ela oferece outra oportunidade de conferir o destino antes de assinar. Não pode tornar correto um destino controlado por um invasor se você o aprovar. Compare o endereço completo na tela confiável de assinatura com os dados do destinatário verificados independentemente.
Posso impedir que desconhecidos adicionem esses registros?
Em geral, não é possível impedir terceiros de enviar ativos ou gerar registros aplicáveis envolvendo um endereço público. Filtros de carteiras e exploradores podem reduzir o que você vê. Salve destinatários verificados e confira o destino completo antes de pagar; apenas ocultar registros de valor zero não identifica todas as variantes de falsificação ou de transferências minúsculas.
