Hackers podem usar GitHub Codespaces para hospedar e distribuir malware

Não é a primeira vez que cibercriminosos usam a plataforma para cometer atos ilícitos.

Claylson Martins
6 minutos de leitura

Os pesquisadores demonstraram como hackers podem abusar do recurso de encaminhamento de porta do GitHub Codespaces para hospedar e distribuir malware e scripts maliciosos.

O GitHub Codespaces permite que os desenvolvedores implantem plataformas IDE hospedadas na nuvem em contêineres virtualizados para escrever, editar e testar/executar código diretamente em um navegador da web.

Desde que se tornou amplamente disponível em novembro de 2022, o GitHub Codespaces se tornou uma escolha popular entre os desenvolvedores que o preferem por seu ambiente baseado em contêiner pré-configurado, equipado com todas as ferramentas e dependências necessárias para seus projetos.

Usando GitHub Codespaces como um servidor de malware

Em um novo relatório da Trend Micro, os pesquisadores demonstram como GitHub Codespaces podem ser facilmente configurados para atuar como um servidor web para distribuição de conteúdo malicioso, evitando potencialmente a detecção quando o tráfego vem da Microsoft.

O GitHub Codespaces permite que os desenvolvedores encaminhem portas TCP ao público para que usuários externos possam testar ou visualizar os aplicativos.

Ao encaminhar portas em uma VM do Codespace, o recurso GitHub gerará uma URL para acessar o aplicativo em execução nessa porta, que pode ser configurada como privada ou pública.

Um encaminhamento de porta privada requer autenticação na forma de um token ou cookies para acessar a URL. No entanto, uma porta pública pode ser acessada por qualquer pessoa que conheça a URL sem exigir autenticação.

Configuração de visibilidade de porta em Codespaces
Fonte: Trend Micro

Esse recurso do GitHub oferece aos desenvolvedores flexibilidade nas demonstrações de código, mas a Trend Micro diz que os invasores hoje podem facilmente abusar dele para hospedar malware na plataforma.

Teoricamente, um invasor pode executar um servidor da Web Python simples, fazer upload de scripts maliciosos ou malware em seu Codespace, abrir uma porta de servidor da Web em sua VM e atribuir visibilidade “pública”.

A URL gerada pode então ser usada para acessar os arquivos hospedados, seja para campanhas de phishing ou para hospedar executáveis maliciosos baixados por outro malware.

Hackers podem usar GitHub Codespaces para hospedar e entregar malware

É exatamente assim que os agentes de ameaças abusam de outros serviços confiáveis, como Google Cloud, Amazon AWS e Microsoft Azure, para campanhas de distribuição de malware.

“Para validar nossa hipótese de cenário de abuso de modelagem de ameaças, executamos um servidor HTTP baseado em Python na porta 8080, encaminhamos e expusemos a porta publicamente”, diz o  relatório da Trend Micro .

“No processo, encontramos facilmente o URL e a ausência de cookies para autenticação.”

Os analistas dizem que, embora o HTTP seja usado por padrão no sistema de encaminhamento de porta do Codespaces, os desenvolvedores podem configurá-lo para HTTPS, aumentando a ilusão de segurança para o URL.

Como o GitHub é um espaço confiável, as ferramentas antivírus são menos propensas a disparar alarmes para que os agentes de ameaças possam evitar a detecção a um custo mínimo.

Diagrama de ataque de abuso de codespaces (Trend Micro)

Promovendo o ataque

Os analistas da Trend Micro também exploram o abuso de Dev Containers em GitHub Codespaces para tornar suas operações de distribuição de malware mais eficientes.

Um “dev container” no GitHub Codespaces é um container pré-configurado que contém todas as dependências e ferramentas necessárias para um projeto específico. Os desenvolvedores podem usá-lo para implantação rápida, compartilhá-lo com outras pessoas ou conectar-se via VCS.

Um invasor pode usar um script para encaminhar uma porta, executar um servidor HTTP Python e baixar arquivos maliciosos dentro de seu Codespace.

Em seguida, a visibilidade da porta é definida como pública, o que cria um servidor da Web com um diretório aberto que fornece arquivos maliciosos aos alvos.

A Trend Micro criou uma prova de conceito (PoC) para isso, usando um atraso de 100 segundos após o URL ser acessado antes que o servidor web seja excluído.

O BleepingComputer conseguiu replicar a criação de um servidor web “malicioso” usando Codespaces em menos de 10 minutos, sem experiência com o recurso.

Executando um servidor da Web em uma VM GitHub Codespaces
Origem: BleepingComputer

“Usando esses scripts, os invasores podem facilmente abusar dos codespaces do GitHub para fornecer conteúdo malicioso rapidamente, expondo as portas publicamente em seus ambientes de codespace. Como cada codespace criado possui um identificador exclusivo, o subdomínio associado também é exclusivo”, explica a Trend Micro em o relatório.

“Isso dá ao invasor terreno suficiente para criar diferentes instâncias de diretórios abertos.”

A política do GitHub é que os espaços de código inativos sejam excluídos automaticamente após 30 dias, para que os invasores possam usar o mesmo URL por um mês inteiro.

Embora não haja abuso conhecido de GitHub Codespaces no momento, o relatório destaca uma possibilidade realista, já que os agentes de ameaças geralmente preferem segmentar plataformas “gratuitas para uso” que também são confiáveis para produtos de segurança.

Share This Article
Follow:
Jornalista com pós graduações em Economia, Jornalismo Digital e Radiodifusão. Nas horas não muito vagas, professor, fotógrafo, apaixonado por rádio e natureza.