Flysystem · Flysystem · CVE-2026-102601
**Nome do Software Vulnerável e Versões Afetadas**
Flysystem versões anteriores a 3.35.3
**Descrição**
Na classe `WhitespacePathNormalizer` dentro de `src/WhitespacePathNormalizer.php`, a função `normalizePath()` utiliza `preg match()` com o modificador `u` para detectar caracteres de controle. Quando um caminho contém caracteres UTF-8 malformados, o `preg match()` retorna `false` em vez de `0`. Como o código utiliza uma verificação de valor verdadeiro (truthy), ele não distingue entre a ausência de correspondência e um erro do motor de execução, permitindo que caminhos com UTF-8 malformado e caracteres de controle ignorem a exceção `CorruptedPathDetected::forPath()`.
Isso permite que o `Filesystem::write()` armazene arquivos com nomes maliciosos. Subsequentemente, o `Filesystem::listContents()` pode retornar sequências de escape ANSI brutas, o que pode levar a listagens de arquivos de terminal ocultas ou falsificadas quando visualizadas por um administrador.
**Recomendações**
Atualize o Flysystem para a versão 3.35.3 ou posterior.
Como mitigação temporária, restrinja o uso da função `normalizePath()` ou valide se os caminhos de entrada contêm apenas caracteres UTF-8 válidos antes que sejam processados pela biblioteca.