Resumo: O ataque à Binance, no valor de 6,3 mil milhões de dólares, pode ter começado com o portátil de um engenheiro de DevOps que foi comprometido. A Binance afirmou, entretanto, que a sua investigação identificou outros pontos de violação, mas não revelou como é que o portátil foi comprometido. Teng afirma que o atacante utilizou uma funcionalidade conhecida da Ethereum, a EIP-7702, para obter autorização sobre uma carteira ativa que contornou os controlos de aprovação normais da Binance. Assistimos a ataques a dispositivos de programadores todos os dias — ainda na semana pass Aikido bloqueou quase 500 ataques de malware. Eis como um portátil comprometido pode levar a um serviço que movimenta dinheiro.
Como é que ocorreu o ataque à Binance? O que sabemos até agora
A Binance estima que o impacto total seja de cerca de 6,3 mil milhões de dólares e afirma que o incidente poderá ter tido início com o portátil de um engenheiro de DevOps que foi alvo de um ataque. A Binance afirma que esse acesso permitiu a um atacante aceder a um serviço container e efetuar transações de levantamento não autorizadas. Até ao momento, foram congelados cerca de 3 mil milhões de dólares na cadeia de blocos, e a Binance afirma que irá cobrir todas as perdas.
O co-CEO Richard Teng escreveu no X que o atacante não se limitou a utilizar as permissões de um único engenheiro e que o ataque envolveu mais do que um simples clique. Até ao momento, a Binance não encontrou quaisquer indícios de uma fuga da chave privada de uma carteira.
Numa atualização posterior sobre a investigação, a Binance afirmou que o trabalho realizado revelou outros pontos de violação para além do portátil. A atualização não forneceu detalhes sobre esses outros pontos. A Binance prometeu publicar uma análise técnica após a verificação de todos os factos, e atualizaremos esta publicação assim que essa análise for disponibilizada.
Teng afirmou posteriormente que o atacante utilizou uma funcionalidade conhecida da Ethereum, a EIP-7702, para obter aprovação na cadeia de blocos para agir numa carteira ativa, e que essa delegação não passou pelos controlos de aprovação normais da Binance.
A TRM Labs e a Chainalysis atribuíram o incidente ao TraderTraitor, um grupo de hackers norte-coreano. A Binance não confirmou essa atribuição.
As declarações públicas não referem nada sobre como o atacante conseguiu aceder ao portátil, para começar. Tudo o que se segue descreve como ataques como este se desenrolam normalmente.
O que vemos nos portáteis dos programadores
Ainda na semana passada, o Aikido bloqueou quase 500 ataques de malware em dispositivos de programadores, cerca de 70 por dia.
Os grupos ligados à Coreia do Norte são conhecidos por visarem diretamente os programadores, muitas vezes através de uma entrevista de emprego falsa que inclui um teste de programação para realizar em casa, em que a execução do projeto executa o código do atacante. Outra forma comum é o código que se executa assim que é instalado ou aberto. Um pacote malicioso pode incluir um script de instalação, que se executa automaticamente quando o pacote é instalado, e uma extensão maliciosa para o editor que se executa dentro das próprias ferramentas do programador. Em maio, uma extensão maliciosa do VS Code no dispositivo de um programador permitiu que um atacante invadisse os repositórios internos do GitHub.
Em março de 2025, o nosso sistema de deteção de malware identificou um pacote npm, o react-html2pdf.js, que se fazia passar por uma biblioteca popular. Em menos de duas horas, os atacantes lançaram quatro versões e depuraram o seu próprio código publicamente, sem nunca corrigirem uma importação em falta para a biblioteca HTTP da qual a sua carga maliciosa dependia, pelo que o pacote não podia ser executado tal como tinha sido publicado. Não utilizava um script de instalação e foi concebido para obter a sua carga útil a partir de um servidor remoto quando o código fosse executado. Uma vez descodificada, a carga útil estava programada para roubar carteiras de criptomoedas e dados do navegador da máquina, para depois descarregar mais código para executar. As marcas no código e na sua infraestrutura levaram-nos a atribuí-lo ao Grupo Lazarus da Coreia do Norte, tal como abordámos no artigo «A espiar os hackers norte-coreanos».
O PolinRider, uma campanha que os investigadores associam à Coreia do Norte e que temos vindo a observar com frequência, esconde código deliberadamente codificado em ficheiros de configuração de projetos comuns. Pode ser executado quando um programador abre um projeto no VS Code. Em seguida, utiliza o próprio acesso desse programador para reescrever o histórico de commits e sobrescrever a cópia partilhada de todos os repositórios para os quais ele possa enviar alterações.
O que um portátil de programador oferece a um atacante
Um portátil de programador contém credenciais ativas para todos os sistemas que o seu proprietário mantém. Normalmente, isso significa credenciais de nuvem, chaves SSH, credenciais do Git e configurações do Kubernetes, que muitas vezes se encontram no disco, onde qualquer processo executado com os direitos desse utilizador as pode ler.
Além disso, armazena tokens de sessão ativos das ferramentas nas quais o programador já está com sessão iniciada. Um token de sessão pode permanecer válido mesmo após uma redefinição de palavra-passe e pode contornar a autenticação multifator (MFA), uma vez que o início de sessão que exigia essa autenticação já ocorreu.
Um invasor que disponha desse material pode fazer-se passar pelo engenheiro. A sua atividade aparece nos registos sob o nome do engenheiro, pelo que parece ser trabalho normal.
Como um portátil infetado pode levar ao roubo de fundos
Uma sequência plausível de eventos, desde um portátil comprometido até a realização de um levantamento, seria a seguinte:
- O código malicioso é executado no portátil e recolhe credenciais e tokens de sessão.
- O atacante utiliza-as, a partir do seu próprio computador ou encaminhando o tráfego através do próprio portátil, para aceder a um sistema interno ao qual o engenheiro tem acesso, como um servidor de compilação ou uma conta na nuvem.
- A partir daí, passam para sistemas com um alcance mais alargado, recolhendo mais credenciais a cada passo.
- Recorrem a um serviço de confiança para efetuar levantamentos e enviar transações através dele.
Outros sistemas que foram alvo de ataques também podem ter ficado acessíveis a partir do exterior, sem que tenha estado envolvido qualquer computador portátil.
Isso também explicaria por que razão não foi necessário roubar quaisquer chaves. A EIP-7702 permite que uma carteira comum delegue as suas ações a outro código, e a configuração dessa delegação requer uma assinatura da chave da carteira. Isso parece indicar que a assinatura provém do próprio sistema de assinatura da Binance, pelo que as chaves permaneceram onde estavam. O CEO da Blockaid chegou a uma conclusão preliminar semelhante: uma infraestrutura de assinatura comprometida.
O roubo à Bybit em 2025 seguiu um padrão semelhante, ao longo de cerca de duas semanas e meia. De acordo com as conclusões preliminares da Safe, conforme noticiado pela heise, o portátil de um programador foi comprometido a 4 de fevereiro; os atacantes utilizaram um token de sessão da AWS roubado para aceder à nuvem da empresa e, a 17 de fevereiro, injetaram código malicioso que possibilitou o roubo a 21 de fevereiro. A atualização forense da Bybit, resumida pela Cointelegraph, indica que os signatários foram induzidos a aprovar uma transação maliciosa.
Como proteger os dispositivos dos programadores
Comece pelo dispositivo. Aikido O Device Protection é um agente leve instalado no computador do programador. Bloqueia pacotes maliciosos, extensões de editor e ferramentas de IA antes da sua instalação e, por predefinição, retém qualquer pacote ou extensão publicado nas últimas 48 horas. Além disso, assinala qualquer elemento já presente no computador que venha a revelar-se malicioso posteriormente.
O dispositivo é apenas o primeiro elo, pelo que as outras camadas também têm de se manter estáveis:
- Evite guardar credenciais de longa duração nos discos dos programadores e emita credenciais de curta duração que caduquem ao fim de algumas horas.
- Exigir aprovação fora do serviço para ações de elevado valor, incluindo alterações às funcionalidades permitidas a uma carteira, de modo a que um serviço comprometido não possa aprovar as suas próprias transações.
- Alerta sobre credenciais e sessões utilizadas em locais ou horários em que o engenheiro nunca trabalha.
- Incluir os equipamentos dos subcontratados e os equipamentos pessoais que entram na produção sob a gestão da empresa, de modo a que os mesmos controlos se apliquem a todos os computadores portáteis.
Perguntas frequentes sobre o ataque à Binance
O ataque à Binance terá sido causado pelo portátil de um funcionário?
As primeiras conclusões da Binance apontaram para o portátil de um engenheiro de DevOps que tinha sido comprometido. Uma atualização posterior revelou que investigações posteriores tinham identificado outros pontos de violação, pelo que o portátil não era a única causa do incidente.
As chaves privadas da Binance foram roubadas?
Teng afirma que o atacante utilizou a EIP-7702, uma funcionalidade conhecida da Ethereum, para obter aprovação sobre uma carteira ativa sem passar pelos controlos de aprovação normais da Binance.
Como é que um portátil pode causar prejuízos na ordem dos milhares de milhões?
As credenciais e as sessões no portátil permitem o acesso a sistemas internos e, a partir daí, um atacante pode avançar para um serviço autorizado a efetuar levantamentos. A secção acima descreve esse processo passo a passo.
Quem está por trás do ataque à Binance?
Os analistas da TRM Labs e da Chainalysis apontam para a TraderTraitor, uma unidade de hackers norte-coreana. A Binance ainda não confirmou esta informação.
