Quer apoiar meu projeto de divulgação de noticias? Agora é possivel

Uma vulnerabilidade na linguagem de programação Python que foi negligenciada por 15 anos agora está de volta aos holofotes, pois provavelmente afeta mais de 350.000 repositórios de código aberto e pode levar à execução de código.

Divulgado em 2007 e marcado como CVE-2007-4559, o problema de segurança nunca recebeu um patch, a única mitigação fornecida foi uma atualização de documentação alertando os desenvolvedores sobre o risco.

Sem patch desde 2007

A vulnerabilidade está no pacote tarfile do Python, em um código que usa a função tarfile.extract() não higienizada ou os padrões internos de tarfile.extractall(). É um bug de passagem de caminho que permite que um invasor sobrescreva arquivos arbitrários.

Os detalhes técnicos do CVE-2007-4559 estão disponíveis desde o relatório inicial em agosto de 2007. Embora não haja relatos sobre o bug sendo aproveitado em ataques, ele representa um risco na cadeia de fornecimento de software.

No início deste ano, enquanto investigava outro problema de segurança, o CVE-2007-4559 foi redescoberto por um pesquisador da Trellix, uma nova empresa que fornece soluções de detecção e resposta estendidas (XDR) resultantes da fusão da McAfee Enterprise e FireEye.

"A falha em escrever qualquer código de segurança para limpar os arquivos dos membros antes de chamar tarfile.extract() tarfile.extractall() resulta em uma vulnerabilidade de travessia de diretório, permitindo que um agente mal-intencionado acesse o sistema de arquivos" - Charles McFarland, pesquisador de vulnerabilidades no Equipe de Pesquisa Avançada de Ameaças Trellix

A falha decorre do fato de que o código na função extract no módulo tarfile do Python confia explicitamente nas informações no objeto TarInfo "e une o caminho que é passado para a função extract e o nome no objeto TarInfo"

CVE-2007-4559 - caminho que se junta ao nome do arquivosource: Trellix

Menos de uma semana após a divulgação, uma mensagem no rastreador de bugs do Python anunciou que o problema foi encerrado, com a correção atualizando a documentação com um aviso "que pode ser perigoso extrair arquivos de fontes não confiáveis".

Estimado 350.000 projetos impactados

Analisando o impacto, os pesquisadores da Trellix descobriram que a vulnerabilidade estava presente em milhares de projetos de software, tanto de código aberto quanto de código fechado.

Os pesquisadores rasparam um conjunto de 257 repositórios com maior probabilidade de incluir o código vulnerável e verificaram manualmente 175 deles para ver se foram afetados. Isso revelou que 61% deles eram vulneráveis.

A execução de uma verificação automatizada no restante dos repositórios aumentou o número de projetos afetados para 65%, indicando um problema generalizado.

No entanto, o pequeno conjunto de amostras serviu apenas como linha de base para obter uma estimativa de todos os repositórios afetados disponíveis no GitHub.

"Com a ajuda do GitHub, conseguimos obter um conjunto de dados muito maior para incluir 588.840 repositórios exclusivos que incluem 'import tarfile' em seu código python" - Charles McFarland

Usando a taxa de vulnerabilidade de 61% verificada manualmente, a Trellix estima que existam mais de 350.000 repositórios vulneráveis, muitos deles usados ​​por ferramentas de aprendizado de máquina (por exemplo, GitHub Copilot) que ajudam os desenvolvedores a concluir um projeto mais rapidamente.

Essas ferramentas automatizadas contam com o código de centenas de milhares de repositórios para fornecer opções de "completar automaticamente". Se eles fornecerem código inseguro, o problema se propagará para outros projetos sem que o desenvolvedor saiba.

GitHub Copilot sugerindo código de extração de tarfile vulnerável: Trellix

Analisando mais profundamente o problema, a Trellix descobriu que o código-fonte aberto vulnerável ao CVE-2007-4559 "abrange um grande número de indústrias".

Como esperado, o mais impactado é o setor de desenvolvimento, seguido pela tecnologia web e machine learning.

Código vulnerável ao CVE-2007-4559 presente em todos os setores fonte: Trellix

Explorando CVE-2007-4559

Em uma postagem técnica no blog de hoje, o pesquisador de vulnerabilidades do Trellix, Kasimir Schulz, que redescobriu o bug, descreveu as etapas simples para explorar o CVE-2007-4559 na versão Windows do Spyder IDE, um ambiente de desenvolvimento integrado de plataforma cruzada de código aberto para programação científica .

Os pesquisadores mostraram que a vulnerabilidade também pode ser aproveitada no Linux. Eles conseguiram escalar a gravação do arquivo e obter a execução do código em um teste no serviço de gerenciamento de infraestrutura de TI da Polemarch.

Além de chamar a atenção para a vulnerabilidade e o risco que ela representa, o Trellix também criou patches para pouco mais de 11.000 projetos. As correções estarão disponíveis em um fork do repositório afetado. Posteriormente, eles serão adicionados ao projeto principal por meio de solicitações pull.

Devido ao grande número de repositórios afetados, os pesquisadores esperam que mais de 70.000 projetos recebam uma correção nas próximas semanas. No entanto, atingir a marca de 100% é um desafio difícil, pois as solicitações de mesclagem também precisam ser aceitas pelos mantenedores.

A BleepingComputer entrou em contato com a Python Software Foundation para um comentário sobre CVE-2007-4559, mas não recebeu uma resposta no momento da publicação.

Veja a noticia completa em: https://www.bleepingcomputer.com/news/security/unpatched-15-year-old-python-bug-allows-code-execution-in-350k-projects/

Fonte: https://www.bleepingcomputer.com

 

Achou esse artigo interessante? Siga canalfsociety em Instagram, Facebook, Telegram, Twitter, App Boletim Tec e App Mr Robot Sticker para ler mais conteúdo exclusivo que postamos.

Post a Comment