Hackers norte-coreanos usam projetos maliciosos no VS Code para alvos de desenvolvimento

Hackers norte-coreanos usam projetos maliciosos no VS Code para alvos de desenvolvimento: Um novo vetor de ameaça à cadeia de software

O avanço das técnicas de ataque cibernético vem se tornando cada vez mais sofisticado e estratégico, especialmente quando combinam engenharia social com exploração de ferramentas legítimas amplamente utilizadas pela comunidade de desenvolvedores de software. Nos últimos dias, pesquisadores de segurança observaram uma campanha conduzida por atores ligados à Coreia do Norte que utiliza projetos aparentemente legítimos no Microsoft Visual Studio Code (VS Code) como vetor de distribuição de malware. Essa abordagem representa um salto significativo no panorama atual de ameaças — não apenas pela sofisticação técnica, mas por explorar práticas comuns de desenvolvimento no dia a dia dos profissionais de tecnologia.

 

Visão geral do vetor de ataque

A campanha, denominada Contagious Interview, foi identificada pela Jamf Threat Labs. Nela, atacantes criam ofertas de emprego falsas e atraem desenvolvedores para participar de entrevistas técnicas aparentemente legítimas. Esses convites convencem a vítima a clonar um repositório hospedado em serviços populares como GitHub, GitLab ou Bitbucket.

O elemento crucial desse ataque não é apenas o repositório malicioso em si, mas a forma como ele explora uma funcionalidade legítima do VS Code: o arquivo de configuração de tarefas (tasks.json). Quando um desenvolvedor abre esse projeto no ambiente, o VS Code pergunta se ele confia no autor. Se o programador aceitar, o editor processa automaticamente o arquivo de tarefas, o que pode desencadear a execução de comandos maliciosos no sistema.

Esses comandos fazem com que o sistema baixe um payload JavaScript de um servidor remoto — muitas vezes hospedado em serviços como o Vercel — o qual instala um backdoor persistente no dispositivo da vítima. Esse malware é capaz de coletar informações do sistema, estabelecer comunicação com servidores de comando e controle (C2) e permitir execução remota de código, abrindo a porta para espionagem, roubo de credenciais ou comprometimento mais profundo da rede.

 

Por que esse vetor é importante?

O uso de Visual Studio Code para facilitar a execução de malware representa uma evolução tática dos agentes maliciosos. Historicamente, ataques técnicos sofisticados dependiam de vulnerabilidades em software ou de campanhas de phishing massivas. No entanto, explorar o fluxo natural de trabalho de um desenvolvedor — clonar e revisar código em uma IDE — eleva o nível de risco ao integrar a insegurança ao processo cotidiano de desenvolvimento de software.

Esse tipo de ataque é classificado como um comprometimento da cadeia de suprimento de software, pois atinge diretamente ferramentas e práticas amplamente utilizadas na indústria de TI. O que torna esse vetorial ainda mais perigoso é que muitos desenvolvedores confiam em repositórios populares ou em recomendações de código sem verificar integralmente sua origem ou integridade.

Além disso, a infraestrutura de backdoor obtida após a infecção pode permitir que os agentes espions ou realizem ataques adicionais, como movimentos laterais na rede corporativa, roubo de propriedade intelectual ou acessos a ambientes de produção que compartilham credenciais com o sistema infectado.

 

Perfis de atores e motivações

Campanhas como essa são frequentemente atribuídas a grupos com apoio estatal, como o Lazarus Group, um ator de ameaça persistente avançado (APT) associado ao governo da Coreia do Norte. Esse grupo tem um histórico extenso de operações visando ganhos financeiros, espionagem cibernética e coleta de dados sensíveis.

Ao longo dos anos, o Lazarus e atores vinculados como Hidden Cobra ou ZINC foram associados a ataques de grande impacto, incluindo roubos de criptomoedas de centenas de milhões de dólares, ataques à infraestrutura financeira e operações de comprometimento de dados.

O uso de campanhas de “entrevistas falsas” — como observado neste caso — se encaixa em uma longa lista de técnicas enganosas que incluem spear phishing, pacotes maliciosos em registries públicos e engenharia social sofisticada que explora a confiança natural entre desenvolvedores e ferramentas de código aberto.

 

Técnicas de execução e persistência

O vetor de execução se baseia principalmente em dois elementos:

  • Manipulação de configuração do VS Code:
    Quando um repositório malicioso contém um arquivo tasks.json que define comportamentos automatizados no VS Code, esse arquivo pode instruir o editor a executar comandos de shell ou Node.js assim que o projeto é aberto.

  • Malware javascript e backdoors persistentes:
    Após o disparo desses comandos legítimos, o código JavaScript malicioso — muitas vezes altamente ofuscado — é baixado e executado. Esse código pode estabelecer persistência no sistema da vítima, coletar dados e abrir canais de comunicação com servidores C2 para download de funcionalidades adicionais ou moduláveis.

A utilização dessa técnica é um exemplo claro de como a cadeia de desenvolvimento de software pode ser usada contra os próprios desenvolvedores, transformar ferramentas legítimas em vetores de ataque e contornar muitas das proteções tradicionais baseadas em assinaturas de malware.

 

Implicações para desenvolvedores e organizações

Esse tipo de ataque expõe vulnerabilidades não só em sistemas, mas na própria cultura de desenvolvimento. Alguns pontos críticos que merecem atenção:

  • Confiabilidade de repositórios externos:
    Desenvolvedores frequentemente dependem de código de terceiros ou forks populares sem verificar sua origem, historico de commits ou autor. Isso oferece um canal natural para propagação de softwares maliciosos.

  • Ferramentas de desenvolvimento sem barreiras:
    IDEs modernas como o VS Code simplificam o cotidiano de desenvolvimento ao permitir que arquivos de configuração executem scripts automaticamente. Isso representa um risco quando a origem desses arquivos não é cuidadosamente validada.

  • Engenharia social direcionada:
    A tática de se passar por recrutadores com propostas tentadoras reduz a cautela natural do desenvolvedor, levando à execução de código malicioso sob a premissa de uma tarefa legítima.

 

Boas práticas de segurança para desenvolvedores

Para mitigar o risco de ataques desse tipo, algumas práticas essenciais podem ser adotadas:

  • Verificar a origem dos repositórios e autores antes de clonar ou abrir códigos desconhecidos.

  • Rejeitar automaticamente configurações que executem scripts não auditados sem revisão manual.

  • Utilizar ferramentas de análise de código e sandboxing antes de executar projetos potencialmente suspeitos.

  • Implementar políticas rígidas de uso de ferramentas de desenvolvimento em ambientes corporativos com validação de integridade de arquivos de configuração.

  • Educar desenvolvedores sobre engenharia social e sinais de risco ao interagir com ofertas de emprego ou tarefas técnicas enviadas por terceiros.

Essas práticas não apenas ajudam a defender contra campanhas sofisticadas como a Contagious Interview, mas também fortalecem a postura de segurança geral da organização.

 

Conclusão

A campanha recente que explora o Visual Studio Code como vetor de distribuição de malware é um alerta contundente para toda a indústria de tecnologia: a cadeia de desenvolvimento de software e as ferramentas que a suportam são alvos tão valiosos quanto qualquer sistema corporativo tradicional. A confiança inerente que desenvolvedores depositam em repositórios Git públicos e na automação de ferramentas como VS Code pode ser manipulada para comprometer sistemas de forma silenciosa e persistente. Essa evolução das táticas de ataque, especialmente quando atribuída a atores com suporte estatal, exige um novo nível de vigilância, educação e políticas de segurança robustas que permeiem desde a máquina do desenvolvedor até a infraestrutura corporativa.

 

Referências Bibliográficas