PT-2026-3641 · Pypi · Ply
CVE-2025-56005
·
Publicado
2025-01-01
·
Atualizado
2026-07-20
CVSS v3.1
9.8
Crítica
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Nome do Software Vulnerável e Versões Afetadas
PLY (Python Lex-Yacc) versão 3.11
Descrição
Um recurso não documentado e inseguro na biblioteca PLY permite Execução Remota de Código (RCE) via o parâmetro
picklefile na função yacc(). Este parâmetro aceita um arquivo .pkl que é desserializado com pickle.load() sem validação. O módulo pickle permite a execução de código embutido via reduce (), permitindo que um atacante obtenha execução de código ao fornecer um arquivo pickle malicioso. O parâmetro não está documentado em fontes oficiais, mas permanece ativo. Isso introduz um potencial backdoor e risco de persistência, particularmente em cenários onde tabelas do parser são cacheadas ou compartilhadas, como em ambientes de CI/CD ou compartilhamentos de rede. A vulnerabilidade está relacionada à desserialização de dados não confiáveis, especificamente através do uso do módulo pickle. A exploração pode levar à execução arbitrária de código como o usuário do serviço Python, potencialmente resultando em roubo de credenciais, envenenamento da cadeia de suprimentos e implantação de software malicioso. A função yacc() é o ponto de entrada para este problema.Recomendações
Audite todos os locais de chamada
yacc.yacc() e garanta que o parâmetro picklefile não possa ser definido a partir de entrada do usuário, repositórios ou configuração controlada pelo tenant.
Desative o pickling/cache de tabelas do parser onde possível, ou force o caminho do cache para um local confiável e imutável.
Para endpoints de parsing voltados para a internet, bloqueie solicitações contendo picklefile= e padrões de injeção de parâmetros similares na borda ou no Firewall de Aplicação Web (WAF).
Monitore código e logs para uso de picklefile e monitore a criação/acesso de artefatos .pkl/pickle em diretórios de parser/cache.
Monitore serviços Python para execução suspeita de processos filhos, tráfego de saída inesperado e novos mecanismos de persistência.Exploit
Correção
RCE
Deserialization of Untrusted Data
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Ply