IA Squad
EN
python · dulwichAtenção

dulwich: Sanitização de assunto de commit em format_patch para evitar path traversal

dulwich.porcelain.format_patch e a CLI format-patch agora sanitizam assuntos de commit para evitar path traversal e injeção de nomes de arquivo. Antes, get_summ

09 Jun 2026Leitura 1 minSeveridade: agende este mês

O que mudou

dulwich.porcelain.format_patch e a CLI format-patch agora sanitizam assuntos de commit para evitar path traversal e injeção de nomes de arquivo. Antes, get_summary apenas substituía espaços por traços, permitindo que assuntos maliciosos escrevessem arquivos de patch fora do outdir pretendido. Agora get_summary espelha o format_sanitized_subject do git: apenas [A-Za-z0-9._] são mantidos, sequências de outros caracteres são colapsadas em um único traço, pontos consecutivos colapsam em um único ponto, pontos/traços finais são removidos e o comprimento é limitado.

Quem isso afeta

Usuários de dulwich que chamam porcelain.format_patch ou a CLI format-patch com commits não confiáveis, por exemplo, serviços que executam format-patch em repositórios ou pull requests fornecidos pelo usuário.

O que fazer hoje

Atualize para Dulwich 1.2.5 ou aplique uma das soluções alternativas: use stdout=True e controle o destino, valide o caminho resolvido em relação ao outdir, ou pré-examine os assuntos dos commits em busca de caracteres inseguros.

A esteira
Coletado Auditado Redigido Publicado