CVE-2026-49738
Received
Received - Intake
Path Traversal in TYPO3 CMS
Publication date: 2026-06-09
Last updated on: 2026-06-09
Assigner: TYPO3
Description
Description
The path allowance check in GeneralUtility::isAllowedAbsPath() performed a plain string prefix comparison without requiring a directory separator boundary, causing a path like /var/www/html-other/secret.yaml to be incorrectly accepted as valid when the project root was /var/www/html. Administrator users with access to the File Abstraction Layer were able to create new file storage definitions pointing to directories outside the project root, bypassing this path check. This issue affects TYPO3 CMS versions before 10.4.57, 11.0.0-11.5.51, 12.0.0-12.4.46, 13.0.0-13.4.31 and 14.0.0-14.3.3.
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| typo3 | typo3 | to 10.4.57 (exc) |
| typo3 | typo3 | From 11.0.0 (inc) to 11.5.51 (inc) |
| typo3 | typo3 | From 12.0.0 (inc) to 12.4.46 (inc) |
| typo3 | typo3 | From 13.0.0 (inc) to 13.4.31 (inc) |
| typo3 | typo3 | From 14.0.0 (inc) to 14.3.3 (inc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-22 | The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory. |