No serviço de integração contínua Travis CI, destinado a testar e construir projetos desenvolvidos no GitHub e Bitbucket, foi identificada uma vulnerabilidade de segurança (CVE-2021-41077), que permite o acesso ao conteúdo de variáveis de ambiente confidenciais em repositórios públicos que utilizam o Travis CI. A vulnerabilidade também permite a exposição de chaves usadas no Travis CI para a geração de assinaturas digitais, chaves de acesso e tokens para chamadas à API.
O problema esteve presente no Travis CI de 3 a 10 de setembro. É notável que as informações sobre a vulnerabilidade foram passadas aos desenvolvedores em 7 de setembro, mas a resposta foi apenas uma recomendação para usar a rotação de chaves. Sem receber um feedback apropriado, os pesquisadores entraram em contato com o GitHub e sugeriram colocar o Travis na lista negra. O problema foi corrigido apenas em 10 de setembro, após um grande número de reclamações de vários projetos. Após o incidente, um relatório bastante estranho sobre a questão foi publicado no site da empresa Travis CI, que, em vez de informar sobre a correção da vulnerabilidade, continha apenas uma recomendação fora de contexto para mudar as chaves de acesso periodicamente.
Após a indignação causada pelo ocultamento de informações, expressa por vários grandes projetos, um relatório mais detalhado foi publicado no fórum de suporte do Travis CI, alertando que o proprietário de um fork de qualquer repositório público poderia, através do envio de um pull request, iniciar o processo de construção e obter acesso não autorizado às variáveis de ambiente confidenciais do repositório original, expostas durante a construção com base em campos do arquivo “.travis.yml” ou definidas através da interface web do Travis CI. Essas variáveis são armazenadas em formato criptografado e só são descriptografadas durante a construção. O problema envolvia apenas repositórios publicamente acessíveis que têm forks (repositórios privados não estavam expostos ao ataque).
Fonte: opennet.ru
