Tech

Google corrige falha do GCP Composer que poderia levar à execução remota de código

Google corrige falha do GCP Composer

Uma falha crítica de segurança, agora corrigida, que afeta o Google Cloud Platform (GCP) Composer pode ter sido explorada para obter execução remota de código em servidores em nuvem por meio de uma técnica de ataque à cadeia de suprimentos chamada confusão de dependência.

A vulnerabilidade recebeu o codinome CloudImposer pela Tenable Analysis.

“A vulnerabilidade pode ter permitido que um invasor sequestrasse uma dependência interna de software program que o Google pré-instala em cada ferramenta de orquestração de pipeline do Google Cloud Composer”, disse a pesquisadora de segurança Liv Matan em um relatório compartilhado com o The Hacker Information.

Confusão de dependência (também conhecida como ataque de substituição), que foi documentada pela primeira vez pelo pesquisador de segurança Alex Birsan em fevereiro de 2021, refere-se a um tipo de comprometimento da cadeia de suprimentos de software program em que um gerenciador de pacotes é induzido a extrair um pacote malicioso de um repositório público em vez do arquivo pretendido de mesmo nome de um repositório interno.

Segurança cibernética

Assim, um agente de ameaça poderia realizar um ataque em larga escala à cadeia de suprimentos publicando um pacote falsificado em um repositório público de pacotes com o mesmo nome de um pacote desenvolvido internamente por empresas e com um número de versão maior.

Isso, por sua vez, faz com que o gerenciador de pacotes baixe, sem saber, o pacote malicioso do repositório público em vez do repositório privado, substituindo efetivamente a dependência do pacote existente por sua contraparte desonesta.

O problema identificado pela Tenable é semelhante, pois poderia ser usado para enviar um pacote malicioso ao repositório Python Package deal Index (PyPI) com o nome “google-cloud-datacatalog-lineage-producer-client”, que poderia então ser pré-instalado em todas as instâncias do Composer com permissões elevadas.

Embora o Cloud Composer exija que o pacote em questão tenha uma versão fixada (ou seja, versão 0.1.0), a Tenable descobriu que usar o argumento “–extra-index-url” durante um comando “pip set up” prioriza a busca do pacote no registro público, abrindo caminho para confusão de dependências.

Munidos desse privilégio, os invasores poderiam executar código, exfiltrar credenciais de contas de serviço e se mover lateralmente no ambiente da vítima para outros serviços do GCP.

Após a divulgação responsável em 18 de janeiro de 2024, o problema foi corrigido pelo Google em maio de 2024, garantindo que o pacote fosse instalado apenas de um repositório privado. Ele também adicionou a precaução further de verificar a soma de verificação do pacote para confirmar sua integridade e validar que ele não foi adulterado.

Diz-se que a Python Packaging Authority (PyPA) estava ciente dos riscos representados pelo argumento “–extra-index-url” desde pelo menos março de 2018, pedindo aos usuários que ignorassem o uso do PyPI em casos em que o pacote interno precisasse ser extraído.

Segurança cibernética

“Espera-se que os pacotes sejam únicos até o nome e a versão, então duas rodas com o mesmo nome de pacote e versão são tratadas como indistinguíveis pelo pip”, um membro do PyPA observou na época. “Este é um recurso deliberado dos metadados do pacote, e não é provável que mude.”

O Google, como parte de sua correção, agora também recomenda que os desenvolvedores usem o argumento “–index-url” em vez do argumento “–extra-index-url” e que os clientes do GCP usem um repositório digital do Artifact Registry quando precisarem de vários repositórios.

“O argumento '–index-url' reduz o risco de ataques de confusão de dependência ao procurar apenas por pacotes no registro que foram definidos como um determinado valor para esse argumento”, disse Matan.

Artigos relacionados

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button