Compromisso da chave privada: o que significa e o que pode fazer a esse respeito?

Compromisso da chave privada: o que significa e o que pode fazer a esse respeito?

O que é uma chave privada comprometida (private key compromise)?

Uma chave privada comprometida significa que outra pessoa tem a sua chave secreta, pode utilizá-la ou que já não tem a certeza de que esta continua secreta. Com uma chave privada, pode provar que tem controlo sobre um determinado endereço de criptomoeda e assinar transações a partir desse endereço. Quem tiver a chave em mãos pode, por norma, também mover a criptomoeda que pode ser movimentada através desse endereço.

Pode ver uma chave privada como a chave com a qual prova o controlo sobre a sua crypto wallet e os seus endereços. A palavra-passe da aplicação da sua wallet é algo diferente: muitas vezes protege apenas a aplicação ou o ficheiro encriptado da wallet no seu dispositivo. A chave privada é, no fim, a chave criptográfica com a qual as transações na blockchain são assinadas.

Muitas wallets também funcionam com uma seed phrase, por vezes chamada Secret Recovery Phrase ou SRP. Trata-se de uma sequência de palavras de recuperação a partir da qual uma wallet pode derivar várias chaves privadas e endereços. Essa frase de recuperação foi exposta? Então não só um endereço pode estar em risco, como possivelmente todas as wallets e endereços derivados dessa seed phrase.

Na self-custody, gere as chaves privadas por si próprio. Isso dá-lhe controlo total, mas também a responsabilidade de as guardar em segurança. Se utilizar uma crypto exchange que gere as chaves privadas em seu nome, então uma conta da exchange comprometida é algo diferente de uma chave privada roubada. Ambas são sérias, mas os riscos e os passos de recuperação diferem.


Pontos principais

  • Uma chave privada é a chave secreta com a qual as transações a partir de um endereço de criptomoeda são assinadas.
  • Quem tiver a sua chave privada pode, por norma, mover a criptomoeda no endereço associado.
  • Uma seed phrase pode dar acesso a várias contas dentro da mesma crypto wallet.
  • A palavra-passe da wallet não é o mesmo que uma chave privada.
  • Na self-custody, gere as chaves por si próprio, enquanto uma crypto exchange normalmente as gere numa conta custodial.

Como pode uma chave privada ser comprometida?

Uma chave privada fica normalmente comprometida porque alguém o engana, o seu dispositivo é infetado ou uma cópia de segurança cai nas mãos erradas. O phishing é, nesse contexto, um método conhecido. Por exemplo, pode acabar numa página falsa de uma wallet, de uma exchange ou de suporte através de uma ligação e introduzir aí a sua seed phrase ou chave privada.

Atenção: O suporte legítimo nunca pede a sua seed phrase, chave privada, palavra-passe ou código 2FA. Nem sequer quando alguém se faz passar por funcionário de uma empresa de criptomoedas, uma crypto exchange, um influencer ou outra parte de confiança.

O malware é outro risco. Pense em software que lê as teclas premidas, extrai dados do seu navegador, verifica a sua área de transferência ou instala uma extensão falsa. Uma extensão de navegador infetada ou uma wallet falsa pode, por exemplo, enviar seed phrases, chaves privadas ou outros dados sensíveis diretamente para um atacante.

Uma cópia de segurança online também pode causar problemas. Uma captura de ecrã da sua frase de recuperação pode parecer útil, mas pode acabar automaticamente em armazenamento na cloud. O mesmo se aplica a palavras de recuperação em e-mail, mensagens de chat ou ficheiros não protegidos. Também o acesso físico a um papel visível, a um dispositivo não protegido ou a uma cópia de segurança sem proteção pode ser suficiente para colocar a sua wallet em risco.

Distinção importante: uma autorização maliciosa a smart contracts não é automaticamente o mesmo que uma chave privada comprometida. Com esse approval, dá a uma dApp permissão para mover determinados tokens em seu nome. Isso pode causar muitos danos, mas a sua chave privada não precisa de ser roubada.

Num approval malicioso, revogar essa autorização pode ser suficiente para evitar danos adicionais. Numa chave privada exposta, a situação é diferente: deve assumir que o atacante pode ter controlo total sobre essa chave e mover a sua criptomoeda restante para uma nova wallet com novas chaves privadas o mais rapidamente possível.

Que sinais indicam uma chave privada comprometida?

Transações de saída desconhecidas a partir de um endereço de self-custody são um sinal de alerta importante. Nesse caso, aconteceu algo que não executou conscientemente. Isso pode indicar uma chave privada ou seed phrase exposta, mas um token também pode ter sido movido através de um approval dado anteriormente.

Por isso, verifique primeiro o que aconteceu exatamente na blockchain. Consulte a atividade da wallet e os detalhes da transação num blockchain explorer. Preste atenção a transações desconhecidas, approvals e interações com smart contracts.

Um sinal forte de uma chave privada comprometida é que transações sejam assinadas diretamente a partir do seu endereço sem que as tenha executado. Nesse caso, um atacante pode usar a chave ou a seed phrase para enviar transações em seu nome.

Outro sinal evidente é o chamado ‘’sweeper bot’’. Imagine que envia nova criptomoeda para um endereço antigo e o saldo é removido quase de imediato. Nesse caso, um bot pode estar a monitorizar ativamente o endereço e a enviar automaticamente novos fundos assim que estes entram. Isso pode indicar que um atacante tem controlo sobre a chave privada ou a seed phrase.

Outros sinais de aviso são, por exemplo:

  • Introduziu a sua seed phrase ou chave privada num website ou partilhou-a com outra pessoa.
  • Descobre approvals de tokens ou interações com smart contracts desconhecidos.
  • O seu dispositivo ou extensão da wallet parece estar infetado ou ter sido substituído por malware.
  • Vê transações a partir da sua wallet que não assinou.

Um approval desconhecido, portanto, não significa automaticamente que a sua chave privada foi roubada. Um approval apenas concede a um smart contract determinados direitos sobre tokens específicos. Se apenas o approval for o problema, a sua revogação pode limitar danos adicionais.

Se, pelo contrário, vir transações desconhecidas assinadas diretamente com a sua conta, ou se novos depósitos desaparecerem automaticamente através de um sweeper bot, então é mais provável que a própria chave privada ou seed phrase tenha sido comprometida.

Numa crypto exchange, a situação é diferente. Um login desconhecido, definições de segurança alteradas ou um levantamento podem indicar uma conta da exchange comprometida, mas isso não significa automaticamente que a sua chave privada foi roubada. Numa custodial exchange, a exchange gere essas chaves em seu nome.

Quais são as consequências de um compromisso da chave privada?

Num compromisso da chave privada, um atacante pode assinar transações em nome do seu endereço. Isso pode permitir, por exemplo, mover coins, tokens e NFT's ou executar outras ações associadas a esse endereço.

A sua seed phrase foi exposta? Então o risco é muitas vezes maior. Um atacante pode, possivelmente, aceder a várias contas e endereços derivados dessa mesma frase de recuperação. Criar uma nova conta dentro da mesma seed phrase não ajuda, porque essa conta continua a depender do mesmo segredo exposto.

A maioria das transações executadas em blockchains públicas não pode ser simplesmente revertida. Uma wallet de self-custody não pode anular uma transação enviada de forma simples. Se recupera a sua criptomoeda roubada ou não, depende, por exemplo, da cooperação voluntária do destinatário ou, em casos excecionais, da intervenção de plataformas envolvidas, emissores de tokens ou autoridades competentes.

Alguns ativos exigem atenção adicional. Muitas vezes, pode enviar um token diretamente para uma nova wallet, mas uma posição DeFi, uma posição de staking ou uma função dentro de um smart contract nem sempre se transfere automaticamente. Por isso, verifique, para cada blockchain e protocolo, quais os ativos e direitos que continuam ligados ao endereço antigo.

Uma consequência menos visível é que um atacante também pode assinar mensagens como se fossem suas. Pense, por exemplo, num login assinado, numa ação de governance ou noutra autorização criptográfica. Assim que uma chave privada é comprometida, já não pode confiar automaticamente em novas assinaturas feitas com essa chave.

O que deve fazer perante uma chave privada comprometida?

Trate imediatamente uma chave privada ou seed phrase possivelmente exposta como permanentemente insegura. Mudar apenas a palavra-passe, reinstalar a wallet ou criar uma nova conta dentro da mesma seed phrase não resolve o problema. Uma chave copiada não volta a ficar secreta.

Trabalhe com cuidado, mas aja rapidamente. Estes são os passos mais importantes:

  1. Pare de usar o endereço antigo. Não deposite mais criptomoeda na wallet antiga e não crie novas contas com a mesma seed phrase.

  2. Use um ambiente limpo. Trabalhe a partir de um dispositivo atualizado que tenha sido verificado quanto a malware, ou use um dispositivo ou perfil de navegador separado que não tenha sido exposto ao alegado ataque.

  3. Crie uma nova crypto wallet completa. Use uma nova seed phrase ou novas chaves privadas que não estejam ligadas à frase de recuperação antiga.

  4. Mapeie tudo. Verifique quais tokens, NFT's, posições DeFi, approvals e eventuais funções de smart contract continuam ligados ao endereço antigo.

  5. Guarde provas. Anote endereços, hashes de transação, montantes, data e hora. Guarde também capturas de ecrã e comunicações com o alegado burlão.

  6. Proteja as contas ligadas. Verifique o seu dispositivo e proteja também o seu e-mail, telefone e contas numa crypto exchange. Altere as palavras-passe relevantes e renove a 2FA quando necessário.

Como transferir criptomoeda para uma wallet segura?

Transfira a sua criptomoeda restante apenas para uma wallet totalmente nova com uma nova seed phrase ou novas chaves privadas. Não importe a sua seed phrase ou chave privada antiga para a nova wallet, porque assim estará apenas a levar o problema consigo.

Proceda passo a passo:

  1. Crie uma nova wallet num ambiente seguro. A nova seed phrase ou chave privada deve estar totalmente separada da wallet antiga.

  2. Verifique o endereço de receção. Confirme cuidadosamente se está a usar o endereço correto da nova wallet e se está na blockchain certa.

  3. Inventarie os seus ativos. Numa EVM-wallet, podem ser, por exemplo, criptomoeda nativa, tokens ERC-20, NFT's, posições de liquidez e funções em smart contracts.

  4. Envie os ativos que podem ser transferidos diretamente. Leia todos os detalhes da transação antes de assinar e tenha em conta os custos de rede suficientes.

  5. Verifique separadamente as posições especiais. Para algumas posições de staking, DeFi ou de propriedade de contratos aplicam-se passos diferentes. Enviar apenas um token não transfere automaticamente esses direitos.

  6. Não volte a usar o endereço antigo. Evite todas as contas e endereços ligados à seed phrase comprometida.

Exemplo: Se tiver ETH e alguns tokens num endereço exposto, envie-os para a sua nova wallet na mesma chain. Se, além disso, tiver uma posição DeFi, terá de verificar separadamente como fechar ou migrar essa posição.

Acha que existe um sweeper bot ativo? Então não deposite simplesmente mais ETH ou outra criptomoeda nativa no endereço antigo para pagar gas fees. Um sweeper bot pode enviar esse depósito imediatamente antes de ter a oportunidade de mover outros ativos.

Quando deve avisar uma exchange ou outra parte?

Avise imediatamente uma crypto exchange se a sua conta da exchange puder ter sido tomada. Pense em logins desconhecidos, definições de segurança alteradas ou pedidos de levantamento que não tenha feito. Utilize apenas o canal oficial de suporte que procurar por si próprio, não um número de telefone ou ligação de uma mensagem inesperada.

Avisar uma exchange ou outro serviço custodial também pode ser útil quando consegue ver que a criptomoeda roubada foi enviada para um endereço de depósito desse serviço. Nesse caso, forneça o máximo de informação útil possível:

  • a blockchain utilizada;
  • o hash da transação;
  • o endereço de origem e o de destino;
  • o montante e o tipo de criptomoeda;
  • a data e a hora da transação.

Denuncie também o roubo à polícia competente ou à entidade nacional de cibercrime ou fraude no seu país. Guarde bem todos os dados e comunicações. Comunicar rapidamente pode ajudar na investigação e no tracing, mas não garante que uma plataforma consiga bloquear os ativos ou que o seu dinheiro seja recuperado.

Numa wallet de self-custody, o prestador da wallet normalmente não pode reverter uma transação executada, porque não gere a sua chave privada. Contactar esse prestador pode, no entanto, ser útil para denunciar phishing ou obter ajuda para utilizar a wallet em segurança.

Como evitar um compromisso da chave privada?

Evita um compromisso da chave privada sobretudo mantendo a sua seed phrase e as suas chaves privadas secretas e, tanto quanto possível, offline. Veja estes dados como a chave de um cofre: quem os obtiver pode, possivelmente, aceder à sua criptomoeda.

Alguns hábitos fazem uma grande diferença:

  • Nunca partilhe a sua chave privada ou seed phrase com ninguém. Nenhum funcionário de suporte, website, dApp ou pessoa num chat precisa desses dados.
  • Não guarde palavras de recuperação como captura de ecrã, em e-mail, chat ou num ficheiro na cloud sem proteção.
  • Para montantes maiores que queira guardar durante mais tempo, use uma hardware wallet ou outra forma de assinatura offline. Assim, a chave privada permanece normalmente no dispositivo protegido.
  • Descarregue software de wallet e extensões de navegador apenas através de canais oficiais verificados.
  • Leia as transações antes de assinar. Não dê a smart contracts autorização ilimitada quando um approval mais restrito for suficiente.
  • Para uso diário, mantenha apenas um montante limitado numa hot wallet.
  • Use palavras-passe únicas e fortes e autenticação multifator forte para o seu e-mail, telefone e contas em crypto exchanges.

Uma hardware wallet reduz sobretudo o risco de a sua chave privada ficar exposta a um dispositivo online. Não o protege se for o próprio a partilhar a sua seed phrase, a assinar uma transação maliciosa ou a enviar criptomoeda para o endereço errado.

Também as cópias de segurança offline exigem atenção. Reduzem o risco online, mas podem continuar a perder-se, a arder, a ser roubadas ou a ser lidas por outra pessoa. Por isso, escolha um método de cópia de segurança que limite tanto os riscos digitais como os físicos.

Conclusão

Um compromisso da chave privada é um dos riscos mais graves na self-custody. Se a sua chave privada ou seed phrase puder ter sido exposta, deve tratar a wallet antiga como permanentemente insegura. Crie uma wallet totalmente nova num ambiente limpo e transfira os ativos restantes, sempre que possível, para novos endereços.

Além disso, distinga sempre entre uma chave privada exposta, um approval malicioso de tokens e uma conta tomada numa crypto exchange. As três situações podem levar a perdas, mas exigem passos de recuperação diferentes.

A proteção mais importante continua a ser simples: mantenha a sua seed phrase e as suas chaves privadas secretas, verifique o que assina e tenha especial cuidado com ligações, mensagens e software inesperados.

Sobre a Finst

A Finst é uma plataforma de criptomoedas líder nos Países Baixos que oferece taxas de transação bastante reduzidas, segurança de nível institucional e um conjunto abrangente de serviços de criptomoedas, como negociação, custódia, staking e rampas de entrada e saída de moeda fiduciária. Fundada pelo antigo núcleo da equipa da DEGIRO, a Finst está autorizada como prestador de serviços de criptoativos pela Autoridade Holandesa para os Mercados Financeiros (AFM) e serve clientes privados e institucionais em 30 países europeus.

A plataforma de criptomoedas para todos os investidores

Quer seja um investidor ativo ou de longo prazo, a Finst permite-lhe aumentar o seu património de criptomoedas com confiança e tranquilidade.

Criar conta gratuita