Nicegui · Nicegui · CVE-2026-25732
**Nome do Software Vulnerável e Versões Afetadas**
Versões do NiceGUI anteriores à 3.7.0
**Descrição**
A propriedade `FileUpload.name` do NiceGUI não sanitiza os metadados do nome do arquivo fornecidos pelo cliente, o que pode levar a um atravessamento de caminho quando os desenvolvedores usam o padrão `UPLOAD DIR / file.name`. Atacantes podem explorar isso criando nomes de arquivos maliciosos contendo sequências '../' para gravar arquivos fora dos diretórios pretendidos. Isso poderia resultar em execução remota de código através da sobrescrita de arquivos da aplicação, particularmente em implantações onde a aplicação segue padrões comuns da comunidade. A exploração requer que o código da aplicação incorpore `file.name` em caminhos do sistema de arquivos sem sanitização. O método `save()` em `nicegui/elements/upload files.py` não valida o parâmetro de caminho fornecido, aceitando caminhos relativos com sequências '../' e caminhos absolutos. Os métodos afetados são `SmallFileUpload.save()` e `LargeFileUpload.save()`. A vulnerabilidade permite que atacantes gravem arquivos em qualquer local gravável pelo processo da aplicação, sobrescrevam arquivos da aplicação Python para execução remota de código, alterem o comportamento da aplicação sobrescrevendo arquivos de configuração e potencialmente obtenham acesso persistente.
**Recomendações**
Versões anteriores à 3.7.0 devem ser atualizadas para a versão 3.7.0 ou posterior.
Como mitigação, remova os componentes de diretório do nome do arquivo antes de salvar o arquivo, por exemplo: `safe name = Path(e.file.name).name`.
Para os mantenedores, implementem validação de caminho para garantir que o caminho de destino não ultrapasse o diretório base.