
Como funcionam os drenos de carteira: aprovações que…
Os drenos de carteira funcionam colhendo autorizações reutilizáveis da carteira de uma vítima, e então usando essa permissão para mover tokens, NFTs e, às vezes, moedas nativas sem pedir novamente. A cadeia aplica essas aprovações assinadas e permissões de dados digitados como instruções válidas, então o roubo muitas vezes parece uma atividade normal de DeFi em vez de um "hack."
Principais Conclusões
- Um dreno de carteira geralmente tem sucesso sem uma frase-semente fazendo a vítima assinar uma aprovação ERC-20, um NFTaprovação do operador, ou uma assinatura de dados digitados no estilo de permissão.
- O golpe é tipicamente em duas etapas: captura de permissão primeiro, depois uma varredura automatizada imediatamente ou mais tarde usando funções como transferFrom ou setApprovalForAll.
- Phishing de assinatura é frequentemente mais perigoso do que parece porque assinaturas de dados digitados podem ser transformadas em aprovações on-chain depois do fato.
- Drenadores frequentemente passam por roteadores legítimos de DEXpara que o rastreamento on-chain se assemelhe a uma troca normal, o que atrasa a detecção e a resposta.
Noções básicas sobre drenadores de carteira e phishing de aprovação
O truque principal é simples: o atacante não precisa quebrar a criptografia da carteira se a vítima puder ser convencida a autorizar o atacante como um gastador. É por isso que um drenador de carteira está dentro da experiência normal do usuário DeFi, e não fora dela. A vítima conecta uma carteira, vê um prompt familiar e assina algo que parece rotineiro. A blockchain então faz o que foi projetada para fazer, que é impor a autorização exatamente como assinada.
É por isso que phishing de aprovaçãoé o modelo mental correto. O atacante não está “fazendo login” como a vítima. O atacante está obtendo uma permissão que o protocolo reconhece, e então a utiliza como uma linha de crédito permanente.
O relatório da campanha drainer da Trust Wallet da FinanceFeeds é explícito ao afirmar que esses fluxos podem esvaziar carteiras “no segundo em que um usuário clica em aprovar”, e que a mecânica espelha o uso legítimo de DeFi em vez de malware ou uma exploração.
Uma distinção útil para leitores que vêm da segurança Web2 é que uma carteira pode ser “comprometida” no sentido de ser drenável sem que a private key nunca saia do dispositivo. A CryptoAdventure a enquadra como consentimento: o usuário assina, a cadeia valida, o atacante transfere. É também por isso que “eu uso uma hardware wallet” não é uma defesa completa.
A FinanceFeeds observa que as hardware wallets reduzem o risco de roubo da chave privada, mas não impedem drenagens aprovadas pelo usuário se o usuário assinar a aprovação errada.
Esta explicação se insere no tópico mais amplo de golpes de carteiras de criptomoedas e como evitá-los, pois a defesa é principalmente higiene de permissões, não antivírus.
O fluxo de ataque de conectar e aprovar
O caminho de drainer com maior probabilidade é um problema de distribuição primeiro e um problema de smart contract segundo. FinanceFeeds descreve um manual de cinco etapas ligado ao conselho nacional de cibercrime da Índia TAU/ADV/013: DM de impersonação no Telegram, Discord ou X, um site clonado, um prompt de conexão de carteira via WalletConnect ou um navegador dentro da carteira, uma única aprovação, e então uma varredura automatizada.
A análise da Blockaid adiciona outro vetor de distribuição que importa para traders que se movem rapidamente: sequestro de front-end, onde a interface de um site legítimo é substituída por uma versão maliciosa.
De ponta a ponta, o fluxo geralmente é:
1. Atrair o usuário para um domínio semelhante ou front-end sequestrado. O atrativo é frequentemente “verifique”, “reivindique” ou “airdrop”, e é projetado para criar urgência. 2. Forçar a conexão da carteira cedo. A Blockaid observou uma página onde qualquer botão acionava o diálogo de conexão, que é um sinal comportamental comum. 3. Coletar o contexto da carteira.
A Blockaid mostra o drainer se comunicando com a infraestrutura de comando e controle e usando leituras JSON-RPC como eth_call para aprender quais ativos e estado de nonce pode atingir. 4. Colher a permissão. Este é o momento em que a vítima pensa que está fazendo algo inofensivo, como aprovar um token para uma troca, ou “assinando uma mensagem.” 5. Executar a varredura.
FinanceFeeds descreve “varre tudo em segundos,” e Coca enfatiza que a drenagem pode ser atrasada, que é como as vítimas ficam confusas sobre qual ação causou a perda.
A perspectiva de “drainer como serviço” é importante porque explica por que esses fluxos parecem ter um modelo. Coca descreve drainers como kits vendidos para golpistas, e essa embalagem é a razão pela qual os mesmos padrões de UX se repetem em diferentes cadeias e carteiras.
As permissões que os drainers abusam em cadeia
As permissões ERC-20 são o cavalo de batalha. Um dApp normal pede aprovação para que possa mover tokens em nome do usuário durante uma troca ou depósito. Um drainer de criptomoeda pede a mesma aprovação, mas direciona o gastador para um contrato ou endereço controlado pelo atacante e frequentemente empurra um limite ilimitado.
Uma vez que essa aprovação existe, o atacante pode voltar mais tarde e mover tokens usando transferFrom sem qualquer novo prompt para a vítima. FinanceFeeds e Coca ambos destacam aprovações ilimitadas como a alavanca que torna isso escalável.
O padrão de drenagem atrasada é onde as pessoas diagnosticam erroneamente o que aconteceu. Coca descreve a sequência onde um usuário aprova hoje, não vê movimento imediato, então recarrega a carteira mais tarde e é drenado em segundos porque a aprovação em pé já estava em vigor. É por isso que a maneira correta de ler uma aprovação não é “o dinheiro saiu agora,” mas “quem eu acabei de autorizar a retirar dinheiro depois.”
Os NFTs têm sua própria versão da mesma armadilha. FinanceFeeds e Coca ambos apontam para setApprovalForAll, que concede a um operador a capacidade de mover todos os NFTs em uma coleção para aquela carteira. Os usuários frequentemente tratam isso como um passo único para listar ou cunhar. Para um drainer, é uma chave mestra para aquela coleção.
Duas implicações práticas surgem disso:
1. A vantagem do atacante é a persistência. Uma única aprovação pode permanecer válida até ser revogada. 2. A vantagem da vítima é a reversibilidade das permissões. FinanceFeeds e Coca apontam para ferramentas como Revoke.cash e o verificador de aprovação de tokens do Etherscan para revisar e revogar permissões e aprovações de operadores.
É também aqui que o termo drainer de carteira explicado deve se encaixar: não é um contrato mágico que "quebra" carteiras. É uma automação que abusa das exatas permissões nas quais o DeFi se baseia.
Drainers baseados em assinatura e armadilhas de permissão
Os pop-ups mais caros são frequentemente aqueles que não parecem transações. A desmontagem do Blockaid de 2024-10-13 mostra um drainer usando eth_signTypedData_v4 para capturar uma assinatura de dados tipados EIP-712 que codifica uma permissão EIP-2612. O drainer primeiro coletou nonce e metadados do token via eth_call, depois pediu à vítima para assinar dados estruturados que autorizavam um gastador para um valor muito grande.
O ponto chave é que a assinatura está off-chain no momento em que a vítima a assina, mas pode ser submetida on-chain mais tarde através da função de permissão do token.
Isso é phishing de assinatura em sua forma mais limpa. A vítima pensa "Eu não enviei uma transação." O atacante pensa "Eu acabei de obter uma aprovação que posso executar quando quiser." Coca sinaliza riscos de assinatura de permissão e estilo Permit2 como parte de kits modernos de drainer, e CryptoAdventure agrupa esses como drainers baseados em assinatura distintos dos drainers clássicos de aprovação on-chain.
O Blockaid também observou wallet_switchEthereumChain no mesmo fluxo, forçando uma mudança para Arbitrum One mesmo que a página se apresentasse como um airdrop da BNB Chain. Esse pedido de troca de cadeia não é cosmético. É uma maneira de direcionar a rede onde a vítima realmente possui ativos.
Duas consequências são importantes para os usuários:
1. Assinaturas de dados tipados podem ser mais difíceis de raciocinar do que um prompt de aprovação on-chain porque se apresentam como "assinando uma mensagem." O Blockaid argumenta que a maioria das carteiras não pode simular essas assinaturas off-chain da maneira que podem simular transações on-chain. 2. O atacante pode separar a captura de permissão da execução.
Essa flexibilidade de tempo é a razão pela qual os drainers podem esperar por momentos de baixa taxa ou para que a carteira seja recarregada.
Isso também é o motivo pelo qual a assinatura cega é um modo de falha recorrente. Se a interface da carteira não mostrar claramente o que os dados tipados autorizam, o usuário está efetivamente assinando no escuro.
Por que os drenos parecem uma atividade normal
Um operador de dreno quer que a cadeia pareça entediante. O Blockaid mostra um dreno de ativo nativo roteado através de um contrato legítimo do SushiSwap Router, chamando swapETHForExactTokens, em vez de uma transferência direta de ETH para um endereço de atacante. O ponto não é que o SushiSwap está comprometido. O ponto é que o roteamento através de um roteador amplamente utilizado faz a transação parecer um comportamento de troca rotineiro.
A FinanceFeeds faz a mesma observação da perspectiva da vítima: a Darktrace rastreou uma variante que drenou $470.000 de uma única vítima em dois minutos, e a transação on-chain "não parece diferente de uma troca rotineira do Uniswap." Essa é a camada de camuflagem. Se o roubo se lê como uma troca, observadores casuais e até alguns heurísticos automatizados perdem tempo.
É aqui que a tese se torna relevante: a autorização é o produto. Uma vez que o atacante tenha uma autorização válida, aprovação do operador ou assinatura de permissão, a blockchain a executará fielmente mais tarde, de forma rápida e de uma maneira que pode ser roteada através de contratos legítimos.
Para traders e usuários avançados, a conclusão operacional é que "identificar o roubo on-chain" é uma defesa fraca. Quando um dreno semelhante a uma troca se torna visível, os ativos já foram movidos e muitas vezes já foram trocados por tokens mais líquidos.
O momento de maior sinalização é mais cedo, na fronteira de permissão: prompts inesperados de troca de cadeia, diálogos de conexão repetidos e um site que empurra aprovações antes de fazer qualquer coisa útil.
Como reduzir o risco de dreno
A defesa é principalmente sobre reduzir quanto de autoridade qualquer clique único pode conceder e reduzir quanto valor está por trás dessa autoridade. A FinanceFeeds recomenda começar com o próprio painel de "Sites Conectados" ou "Permissões" da carteira para revogar qualquer coisa que não esteja sendo usada ativamente, e depois verificar as aprovações de tokens com o Revoke.cash. Coca enquadra a revogação como uma rotina, não uma emergência, porque o dreno pode ser atrasado.
Um fluxo de trabalho limpo se parece com isto:
1. Separe funções entre carteiras. Mantenha uma carteira "cofre" que nunca se conecta a dApps, e uma carteira de gastos ou de queima para mintagens, airdrops e novos protocolos. Coca recomenda explicitamente essa estrutura para limitar o raio de explosão. 2. Trate cada aprovação ou assinatura como uma linha de crédito em aberto.
Se o prompt mostrar ilimitado, assuma que o gastador pode retirar o saldo total mais tarde, a menos que o dApp ofereça um limite mais restrito. 3. Fique atento a sinais de alerta de UX que se correlacionam com drenos. O exemplo do Blockaid inclui prompts de conexão incessantes e um pedido wallet_switchEthereumChain que contradiz a cadeia declarada do site. 4. Audite e revogue em uma programação.
A FinanceFeeds e Coca apontam para o Revoke.cash e o verificador de aprovações de token do Etherscan para revisar as permissões e revogá-las. 5. Se for alvo, atue primeiro nas permissões. Desconecte sites conectados, revogue aprovações e permissões de operador de NFT, e mova os fundos restantes para um novo endereço.
A FinanceFeeds enfatiza que o dreno não explora a Trust Wallet em si, e o mesmo risco se aplica a carteiras quentes como MetaMask e Phantom.
Esta é a parte dos golpes de carteiras de criptomoedas e como evitá-los que realmente se sustenta sob pressão: assuma que a carteira de gastos eventualmente assinará algo estúpido e projete o sistema para que esse erro seja sobrevivível.
A Opinião
Eu vi muitas pessoas enquadrarem um drainer como um "hack" e depois desperdiçarem a primeira hora caçando malware enquanto o verdadeiro problema está na blockchain como uma permissão que concederam. A mudança mental cara é tratar aprovações e assinaturas de dados digitados como abrir uma linha de crédito permanente. Uma vez que essa linha existe, o atacante não precisa perguntar novamente. Eles simplesmente aparecem depois com transferFrom ou uma transferência de operador e a cadeia a impõe.
O modo de falha que continua se repetindo é a assinatura cega disfarçada como um clique inofensivo. A desmontagem do Blockaid em 2024-10-13 é o exemplo limpo: eth_signTypedData_v4 colhe uma permissão, então o drainer pode ser roteado através de um roteador real, fazendo parecer uma troca normal. As carteiras de hardware mantêm as chaves seguras, mas não salvam o julgamento. A higiene de permissões faz.
Fontes
Perguntas frequentes
Os drenos de wallet precisam da minha seed phrase para roubar minha cripto?
Frequentemente, não. Muitas campanhas de dreno de wallet dependem que você assine uma aprovação ou uma assinatura em estilo de permissão que autoriza transferências. Uma vez que essa autorização existe, o atacante pode mover ativos sem possuir sua chave privada.
Como os drenos roubam cripto depois que cliquei em aprovar?
Uma aprovação ERC-20 cria uma permissão para um gastador específico, e esse gastador pode posteriormente mover tokens usando transferFrom sem pedir novamente. Se a aprovação foi ilimitada, o teto é efetivamente seu saldo total. Algumas campanhas atrasam a varredura até que você recarregue a wallet.
O que é phishing de assinatura e por que é perigoso?
O phishing de assinatura engana você para assinar dados estruturados, como uma mensagem de dados tipados EIP-712, que pode ser usada para autorizar ações posteriormente. A Blockaid mostra drenos capturando assinaturas eth_signTypedData_v4 para obter aprovações de permissão EIP-2612. As vítimas podem pensar que apenas "assinaram uma mensagem", mas a assinatura pode ser enviada na blockchain depois.
Por que uma transação de dreno de wallet parece uma troca normal na blockchain?
Os drenos podem direcionar o roubo através de contratos legítimos como roteadores DEX, então a transação se assemelha ao comportamento de troca rotineiro. A Blockaid mostra um dreno de ativo nativo roteado através do SushiSwap Router, e a FinanceFeeds observa casos onde o traço parece uma troca típica do Uniswap. Esse camuflagem pode atrasar a detecção.
Como posso verificar e revogar aprovações para parar um dreno?
Revise os sites conectados e permissões dentro da sua wallet, depois audite as permissões de tokens e aprovações de operadores de NFT com ferramentas como Revoke.cash ou o verificador de aprovações de tokens do Etherscan. Se você ver gastadores desconhecidos ou limites ilimitados, revogue-os. A revogação é mais eficaz antes que a wallet seja recarregada novamente.