Hack Alerta

Scripts legados do Python abrem PyPI a ataque por domínio

Pesquisadores da Reversinglabs identificaram que scripts de bootstrap legados (zc.buildout) em vários projetos Python fazem download direto de python-distribute[.]org — domínio abandonado desde 2014 — e executam o conteúdo com exec(), abrindo um vetor de supply chain que afeta pacotes como slapos.core, pypiserver e tornado. A falha exige execução manual ou via build e não é acionada por pip install padrão.

Scripts de bootstrap legados no ecossistema Python contêm chamadas a um domínio abandonado que, se adquirido por um atacante, pode fornecer código arbitrário executado com privilégios do usuário.

Descoberta e panorama

Pesquisadores da Reversinglabs identificaram que arquivos de bootstrap associados ao zc.buildout ainda presentes em alguns projetos fazem requisições diretas ao domínio python-distribute[.]org — um domínio abandonado desde 2014 e atualmente estacionado. Esses scripts tentam baixar o pacote distribute quando não o encontram localmente, criando uma janela de oportunidade para um domínio malicioso servir payloads.

Vetor de exploração e detalhes técnicos

O comportamento vulnerável ocorre em bootstrap scripts que, ao detectar ausência do pacote esperado, iniciam uma rotina de download usando bibliotecas padrão do Python (urllib). O conteúdo retornado pelo servidor é então passado diretamente para exec(), sem qualquer verificação de integridade ou assinatura.

Segundo a análise, a falha não é acionada por um pip install padrão; normalmente exige execução manual do script ou sua invocação por um processo de build (por exemplo, um Makefile). Para validar o risco, os pesquisadores construíram um proof-of-concept que força o caminho vulnerável em slapos.core e confirmou conexão ao domínio externo, provando que qualquer código hospedado ali seria executado com os privilégios do usuário que rodou o bootstrap.

Pacotes afetados e escopo

  • A análise aponta que várias bibliotecas conhecidas contêm esses arquivos legados, incluindo slapos.core, pypiserver e tornado.
  • O problema deriva de arquivos antigos que persistem em repositórios, mesmo após migração de muitos desenvolvedores para padrões modernos de empacotamento.
  • As fontes não apresentam um inventário completo de projetos afetados nem um CVE associado até o momento.

Impacto e riscos práticos

Se um ator malicioso adquirir o domínio python-distribute[.]org, ele poderia hospedar código que seria baixado e executado automaticamente por desenvolvedores que rodem os scripts vulneráveis, criando um vetor de supply chain com potencial de execução remota de código em ambientes de desenvolvimento ou build.

Os pesquisadores comparam o risco a incidentes anteriores de supply chain (por exemplo, o caso fsevents no registro npm), na medida em que a confiança na origem do código é quebrada por dependências indiretas em domínios externos desatualizados.

Limites das informações

As matérias consultadas (Cyber Security News com base na análise da Reversinglabs) não divulgam contagens precisas de repositórios afetados, identificadores CVE ou vetores de exploração observados em ataques ativos. Também não há informação pública, até a publicação das fontes, de domínios já adquiridos por terceiros com intenção maliciosa neste caso específico.

Mitigações recomendadas

  • Evitar a execução de scripts de bootstrap legados sem revisão; tratar arquivos bootstrap.py como código não confiável até que sejam auditados.
  • Procurar em repositórios internos e dependências por referências a python-distribute e substituir fluxos de build obsoletos por ferramentas atuais (pip, setuptools, build-backends modernos).
  • Adotar verificações de integridade e assinaturas para artefatos baixados em processos de build; desabilitar rotinas automáticas que executem código obtido de domínios externos.
  • Isolar ambientes de build e executar processos de compilação com privilégios mínimos para reduzir impacto caso código não confiável seja executado.

O que acompanhar

Organizações que ainda mantêm infraestruturas legadas ou pipelines de CI/CD baseados em arquivos históricos devem priorizar varreduras por estes padrões e avaliar riscos de supply chain. As fontes consultadas são explícitas sobre o vetor (requisições a python-distribute[.]org e execução via exec()) e sobre os pacotes citados, mas não fornecem uma lista exaustiva de projetos afetados nem alertas formais de órgãos como CERTs ou fabricantes até a data do relatório.

Fonte primária da descoberta: Reversinglabs, cobertura: Cyber Security News.


Baseado em publicação original de Cyber Security News
Publicado pela Redação Hack Alerta com base em fontes externas citadas e monitoramento editorial do Hack Alerta. Para decisões técnicas, operacionais ou jurídicas, confirme sempre os detalhes na fonte original.