CVE Catalog

CVE-2026-102601

LowCVSS 3.5
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.34%

25th percentile - higher than 25% of all known CVEs

Summary

Flysystem prior to 3.35.3 has a vulnerability in the default WhitespacePathNormalizer that calls preg_match with the u modifier and treats both false and 0 as falsy. A path containing malformed UTF-8 causes PCRE to return false, allowing paths with control characters to bypass validation. This can lead to hidden or spoofed terminal file listings when an administrator displays them.

Risk Assessment

The vulnerability may allow an attacker to hide malicious files or manipulate file listings, potentially misleading administrators and leading to further attacks.

Recommendation

It is recommended to upgrade Flysystem to version 3.35.3 or later to fix the vulnerability.

Related vulnerabilities

Original NVD description (English source)

Flysystem is an open source file storage library for PHP. Prior to 3.35.3, the default WhitespacePathNormalizer in src/WhitespacePathNormalizer.php used by Filesystem across adapters calls preg_match with the u modifier and treats both false and 0 as falsy. A path containing malformed UTF-8 causes PCRE to return false, so paths that also contain control characters bypass CorruptedPathDetected::forPath() in normalizePath(). Filesystem::write() can store such names and Filesystem::listContents() can return the raw ANSI escape sequences, allowing hidden or spoofed terminal file listings when an administrator displays them. This issue is fixed in version 3.35.3.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS