Em 17 de janeiro de 2024, de acordo com dados de monitoramento da plataforma de risco de segurança EagleEye da Beosin, o Socket Protocol sofreu um ataque de injeção de chamada, levando a um roubo significativo de fundos de usuários autorizados. Atualmente, o invasor converteu os fundos roubados em ETH e os armazenou no endereço do invasor.

Após o ataque, a confirmação oficial da Socket reconheceu a violação de segurança e suspendeu imediatamente os contratos afetados.

Simultaneamente, MetaMask postou na plataforma X, afirmando que os usuários do MetaMask Bridge não são afetados pela vulnerabilidade do Socket. MetaMask enfatizou sua arquitetura única ao projetar contratos de ponte entre cadeias para mitigar tais ataques.

Análise de Vulnerabilidade

A principal causa deste incidente é uma invocação de chamada insegura na função performAction do contrato Socket. Apesar da ausência de verificações nos parâmetros fromToken e toToken, a função restringe efetivamente os endereços de token ao WETH, excluindo outros endereços ERC20, evitando indiretamente a falsificação desses parâmetros.

No entanto, uma falha crítica na função reside na falta de restrições no parâmetro quantidade. Se o chamador fornecer um valor 0, a condição de verificação da função sempre passará sem a necessidade de chamar as funções de depósito e retirada do WETH. Isto permite injetar dados anormais através da chamada, levando à exploração da vulnerabilidade.

Processo de ataque

Compreendendo a vulnerabilidade, vamos explorar como o invasor executou o ataque:

  1. Criação de Contrato Malicioso:

  • O invasor inicialmente criou um contrato malicioso para iniciar o ataque.

    2. Consultas e verificações de autorização:

    • Posteriormente, o invasor realizou diversas consultas em saldos WETH de diferentes endereços.

    • Além disso, o invasor verificou a quantidade autorizada do contrato Socket: Gateway associado a cada endereço.

    • Em seguida, o invasor chamou o contrato Socket: Gateway.

      3. Chamada de função PerformAction com transferência de assinatura:

      • Na chamada para a função performAction, o invasor especificou o parâmetro swapExtraData como 0x23b872dd…

      • Esses dados correspondem à assinatura da função transferfrom, indicando uma invocação direta da função transferfrom do token.

4. Chamada de função PerformAction com transferência de assinatura:

  • Na chamada para a função performAction, o invasor especificou o parâmetro swapExtraData como 0x23b872dd…

  • Esses dados correspondem à assinatura da função transferfrom, indicando uma invocação direta da função transferfrom do token.

5. Transferência WETH pelo invasor:

  • Através de inúmeras operações, o invasor transferiu WETH de inúmeros usuários para seus próprios endereços.

6. Transferência de USDT autorizado de maneira semelhante:

  • O invasor empregou um método semelhante para transferir o USDT autorizado pelo contrato para seu próprio endereço.

7. Envolvimento de outros tokens:

  • O ataque se estendeu para incluir outros tokens como WBTC, DAI e MATIC.

No momento em que este artigo foi escrito, aproximadamente US$ 3,3 milhões foram roubados, com alguns fundos trocados por ETH e armazenados no endereço do hacker. Beosin Trace continua monitorando os fundos roubados.

A Socket, em atualização na plataforma X, afirma que as operações foram restauradas, os contratos afetados foram suspensos e a situação está sob total controle. A interoperabilidade com a ponte Bungee e a maioria das pontes front-end de parceiros foi restabelecida. Uma análise detalhada do evento e as etapas subsequentes serão anunciadas em breve.

O Socket emite um lembrete: “Tenha cuidado com contas falsas do Socket que tentam phishing em suas respostas. Por favor, verifique cuidadosamente a conta antes de tomar qualquer ação.”

Este incidente serve como um lembrete para priorizar a segurança. Ao entrarmos em 2024, vários eventos de segurança já ocorreram. Beosin, uma empresa líder global em segurança de blockchain, oferece uma gama abrangente de produtos e serviços de segurança de blockchain que abrange auditorias de segurança de código antes do lançamento do projeto, monitoramento de riscos de segurança em tempo real, alertas e prevenção, recuperação de ativos de criptomoeda, conformidade de segurança KYT/AML e muito mais . Estamos comprometidos com o desenvolvimento seguro do ecossistema Web3. Se necessário, não hesite em contactar-nos.

Contato

Se você precisar de algum serviço de segurança blockchain, entre em contato conosco:

Site Oficial Beosin EagleEye Twitter Telegrama Linkedin