CVE-2026-44827 in diffusersinformação

Sumário

de VulDB • 14/05/2026

Diffusers é uma biblioteca para modelos de difusão pré-treinados. Antes da versão 0.38.0, o diffusers 0.37.0 permite a execução remota de código sem a salvaguarda trust_remote_code=True ao carregar pipelines de repositórios do Hugging Face Hub. A função _resolve_custom_pipeline_and_cls em pipeline_loading_utils.py realiza interpolação de strings no parâmetro custom_pipeline usando f"{custom_pipeline}.py". Quando custom_pipeline não é fornecido pelo usuário, ele assume o valor padrão None, que o Python interpola como a string literal "None.py". Se um atacante publicar um repositório no Hub contendo um arquivo chamado None.py com uma classe que herda de DiffusionPipeline, o arquivo será baixado e executado automaticamente durante uma chamada padrão DiffusionPipeline.from_pretrained() sem argumentos de palavra-chave adicionais. A verificação trust_remote_code em DiffusionPipeline.download() é contornada porque avalia custom_pipeline is not None como False (já que o argumento de palavra-chave nunca foi fornecido), enquanto o caminho de código subsequente que realmente carrega o módulo resolve o valor None para um nome de arquivo válido. Um atacante pode obter execução silenciosa de código arbitrário publicando um repositório de modelo malicioso com um arquivo None.py e um model_index.json com aparência padrão que referencia um nome de classe de pipeline legítimo, exigindo apenas que a vítima chame from_pretrained no repositório. Esta vulnerabilidade foi corrigida na versão 0.38.0.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Responsável

GitHub M

Reservar

07/05/2026

Divulgação

14/05/2026

Moderação

aceite

Entrada

VDB-363930

CPE

pronto

EPSS

0.00120

KEV

não

Atividades

muito baixo

Fontes

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!