Autor: INSIGHTFUL
Compilado por: Shenchao TechFlow
Isenção de responsabilidade
Nada neste guia é garantido e não foi escrito da perspectiva de um “especialista em criptografia ou segurança cibernética”, mas é baseado no aprendizado contínuo de diversas fontes e na experiência pessoal.
Por exemplo, eu mesmo fui enganado devido ao medo de perder (FOMO) e à ganância quando entrei no campo pela primeira vez (golpe de transmissão ao vivo falso e golpe de bot MEV falso), então reservei um tempo para aprender, configurar e entender cuidadosamente segurança.
Não seja aquela pessoa que é forçada a aprender segurança porque perdeu tudo ou muitos dos seus bens.
Hacking ou erro do usuário?
“Hacks” ou comprometimentos de todos os tipos de carteiras, tokens ou NFTs podem ser amplamente divididos em duas categorias:
Abuso de aprovação de token concedida anteriormente.
Vazamento de chave privada ou frase mnemônica (geralmente acontece com carteiras quentes).
Aprovação de token
A aprovação de token é essencialmente uma permissão para permitir que um contrato inteligente acesse e mova um tipo ou quantidade específica de tokens em sua carteira.
Por exemplo:
Dê permissão ao OpenSea para mover seu NFT para que você possa vendê-lo.
Dê permissão ao Uniswap para trocar com seus tokens.
Como informação básica, basicamente tudo na rede Ethereum, exceto ETH, é um token ERC-20.
Uma característica dos tokens ERC-20 é a capacidade de conceder permissões de aprovação a outros contratos inteligentes.
Se você deseja realizar interações DeFi básicas (como troca ou ponte de tokens), essas aprovações serão necessárias em algum momento.
Os NFTs são tokens ERC-721 e ERC-1155, respectivamente, e seu mecanismo de aprovação é semelhante ao ERC-20, mas para o mercado de NFT;
O prompt inicial de aprovação do token do MetaMask (MM) fornece várias informações, as mais relevantes das quais são:
Você está concedendo tokens aprovados
O site com o qual você está interagindo
O contrato inteligente com o qual você está interagindo
Capacidade de editar o número de permissões de token
No menu suspenso Detalhes completos, vemos uma informação adicional: Recursos de aprovação.
Todos os tokens ERC-20 devem ter certas características e propriedades descritas pelo padrão ERC-20.
Uma delas é a capacidade dos contratos inteligentes de movimentar tokens com base em um valor aprovado.
O perigo dessas aprovações é que, se você conceder permissões de token a um contrato inteligente malicioso, seus ativos poderão ser roubados ou esgotados.
Aprovações de limite ilimitado vs. personalizado (tokens ERC-20)
Muitos aplicativos DeFi solicitarão aprovação ilimitada de tokens ERC-20 por padrão.
Isso é feito para melhorar a experiência do usuário, pois é mais conveniente e não requer aprovações adicionais no futuro, economizando tempo e taxas de gás.
Por que isso é importante?
Permitir a aprovação de um número ilimitado de tokens pode colocar seus fundos em risco.
Definir manualmente uma aprovação de token para um valor específico limita o número máximo de tokens que o dApp pode mover sem assinar uma aprovação nova e maior.
Isso reduz o risco se o seu contrato inteligente for explorado. Se você conceder aprovação ilimitada a um dApp e esse dApp se tornar vulnerável, você poderá perder todos os tokens aprovados da carteira que contém esses ativos e concedeu essa aprovação.
Por exemplo, Multichain WETH (WETH é um wrapper de token ERC-20 para ETH) sofreu com tal vulnerabilidade.
Esta ponte comumente usada foi comprometida por abusar de direitos de token anteriormente ilimitados, resultando no roubo de fundos dos usuários.
Abaixo está um exemplo (usando a carteira Zerion) mostrando como alterar a aprovação ilimitada padrão para aprovação manual.
Aprovação NFT
"setApprovalForAll" para NFT
Esta é uma aprovação comumente usada, mas potencialmente perigosa, que geralmente é concedida a um mercado NFT confiável quando você deseja vender um NFT.
Isso permite que os contratos inteligentes do mercado transfiram seus NFTs. Portanto, quando você vende um NFT a um comprador, os contratos inteligentes do mercado podem mover automaticamente o NFT para o comprador.
Esta aprovação concede acesso a todos os tokens NFT em uma coleção específica ou endereço de contrato.
Isso também pode ser usado por sites ou contratos maliciosos para roubar seus NFTs.
Exemplos de atores maliciosos que abusam de "setApprovalForAll"
O clássico “encolhimento da conta da carteira” no caso da cunhagem gratuita do FOMO é assim:
Um usuário visita um site malicioso que acredita ser legítimo.
Quando conectam sua carteira a um site, o site só pode visualizar o conteúdo da carteira.
No entanto, o site malicioso verifica a carteira em busca do NFT de valor mais alto e solicita ao usuário “Definir todas as aprovações” da MetaMask (MM) para o endereço do contrato desse NFT.
Os usuários que pensam que estão cunhando NFTs estão, na verdade, concedendo a um contrato malicioso permissão para mover esses tokens.
Os golpistas então roubam os tokens e os liquidam em lances no OpenSea ou Blur antes que o item seja marcado como roubado.
Assinatura e Aprovação
As aprovações exigem taxas de gás, pois envolvem o processamento de transações.
A assinatura não requer gás e normalmente é usada para fazer login em um dApp para provar seu controle da carteira.
A assinatura geralmente é uma operação de baixo risco, mas ainda pode ser usada para explorar aprovações concedidas anteriormente para sites confiáveis como o OpenSea.
Para tokens ERC-20, você também pode modificar suas aprovações por meio de assinaturas sem gás, já que o recurso de permissão foi introduzido recentemente no Ethereum.
Você pode ver isso se usar uma exchange descentralizada (DEX) como 1 polegada.
Pontos de aprovação de token
Tenha cuidado ao conceder qualquer aprovação e certifique-se de saber quais tokens você está aprovando e para quais contratos inteligentes (utilize etherscan).
Limite o risco de aprovação:
Use várias carteiras (as aprovações são específicas da carteira) - não assine aprovações para seus cofres ou carteiras de alto valor.
O ideal é reduzir ou evitar completamente a concessão de aprovações ilimitadas para tokens ERC-20.
Verifique e revogue as aprovações periodicamente via etherscan ou revoke.cash.
Hardware/carteira fria
As carteiras quentes conectam-se à Internet através do seu computador ou telefone, e as chaves e credenciais da carteira são armazenadas online ou localmente no seu navegador.
Carteiras frias são dispositivos de hardware onde as chaves são geradas e armazenadas completamente offline e fisicamente perto de você.
Considerando que um Ledger custa cerca de US$ 120, se você tiver mais de US$ 1.000 em criptografia, provavelmente deveria comprar e configurar um Ledger. Você pode conectar sua carteira Ledger à MetaMask (MM) para desfrutar da mesma funcionalidade de outras carteiras quentes, mantendo um nível de segurança.
Ledger e Trezor são as escolhas mais populares. Gosto do Ledger porque tem a melhor compatibilidade com carteiras de navegador (semelhantes a Rabby e MM).
Melhores práticas ao comprar Ledger
Compre sempre no site oficial do fabricante, nunca no Ebay ou Amazon - ele pode estar adulterado ou ter malware pré-instalado.
Certifique-se de que a embalagem esteja lacrada ao receber o item.
Quando você configura um Ledger pela primeira vez, ele gera uma frase mnemônica.
Escreva sua frase mnemônica apenas em papel físico ou, no futuro, em uma placa de aço para garantir que sua frase mnemônica seja resistente ao fogo e à água.
Nunca fotografe ou digite a frase mnemônica em qualquer teclado (incluindo telefones celulares) - isso digitalizará a frase mnemônica e sua carteira fria se tornará uma carteira quente e insegura.
Os ativos criptográficos não são armazenados em uma carteira de hardware, mas “em” uma carteira gerada a partir de uma frase mnemônica.
A frase mnemônica (12 a 24 palavras) é tudo o que é necessário e deve ser protegida e segura a todo custo.
Ele fornece controle total e acesso a todas as carteiras geradas sob essa frase mnemônica.
A frase mnemônica não é específica do dispositivo e você pode “importá-la” para outra carteira de hardware como backup, se necessário.
Se a frase mnemônica for perdida ou danificada, e a carteira de hardware original também for perdida, danificada ou bloqueada, você perderá permanentemente o acesso a todos os ativos.
Existem vários métodos de armazenamento de mnemônicos, por exemplo, dividindo-os em partes, aumentando a distância física entre as partes, armazenando-os em um local discreto (por exemplo, uma lata de sopa no fundo da geladeira, em algum lugar subterrâneo de sua propriedade, etc.) .
Você deve ter pelo menos 2 a 3 cópias, uma das quais deve ser feita de aço para proteção contra água e fogo.
Uma “chave privada” é semelhante a uma frase mnemônica, mas específica apenas para uma carteira específica. Normalmente é usado para importar carteiras quentes para novas contas MetaMask (MM) ou para uso em ferramentas automatizadas, como bots de negociação.
Palavra 25 - Razão
Além da frase mnemônica original de 24 palavras, o Ledger oferece um recurso de segurança adicional opcional.
A frase secreta é um recurso avançado que adiciona uma 25ª palavra de sua escolha com até 100 caracteres à sua frase de recuperação.
O uso de uma senha gera um conjunto completamente diferente de endereços que não podem ser acessados com apenas uma frase de recuperação de 24 palavras.
Além de adicionar uma camada de segurança, as senhas fornecem uma negação razoável se você estiver comprometido.
Se você usar uma senha, certifique-se de armazená-la com segurança ou lembrá-la com precisão, caractere por caractere e diferenciando maiúsculas de minúsculas.
Esta é a única e última defesa contra uma situação fisicamente ameaçadora como o ataque de chave inglesa de $5.
Por que passar por todo esse trabalho para configurar uma carteira de hardware?
As carteiras quentes armazenam chaves privadas em um local conectado à internet.
É extremamente fácil ser enganado, enganado e manipulado para revelar essas credenciais pela Internet.
Ter uma carteira fria significa que os golpistas precisam encontrar e obter fisicamente seu livro-razão ou frase mnemônica para acessar essas carteiras e os ativos dentro delas.
Uma vez comprometida a frase mnemônica, todas as carteiras quentes e os ativos dentro delas estarão em risco, mesmo aqueles que não interagiram com sites ou contratos maliciosos.
Maneiras comuns de as pessoas serem “hackeadas” no passado
As formas comuns pelas quais as pessoas foram “hackeadas” (frases mnemônicas vazadas) por meio de carteiras quentes no passado incluem:
Enganado para baixar malware, como por meio de PDFs de ofertas de emprego, jogos beta, execução de macros por meio do Planilhas Google ou falsificação de identidade de sites e serviços legítimos.
Interagindo com contratos maliciosos: cunhagem de FOMO em sites de imitação ou interação com lançamentos aéreos desconhecidos ou contratos NFT.
Insira ou envie a chave e a frase mnemônica para o Suporte ao Cliente ou para um programa/formulário relacionado.