Unrestricted File Upload in Form Framework
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Code execution, Information disclosure
- Confidentiality · integrity · availability
- Low · High · Low
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-434 and CWE-552.
Summary
TYPO3 is an open source PHP based web content management system. In TYPO3 before versions 8.7.40, 9.5.25, 10.4.14, 11.1.1, due to the lack of ensuring file extensions belong to configured allowed mime-types, attackers can upload arbitrary data with arbitrary file extensions - however, default _fileDenyPattern_ successfully blocked files like _.htaccess_ or _malicious.php_. Besides that, _UploadedFileReferenceConverter_ transforming uploaded files into proper FileReference domain model objects handles possible file uploads for other extensions as well - given those extensions use the Extbase MVC framework, make use of FileReference items in their direct or inherited domain model definitions and did not implement their own type converter. In case this scenario applies, _UploadedFileReferenceConverter_ accepts any file mime-type and persists files in the default location. In any way, uploaded files are placed in the default location _/fileadmin/user_upload/_, in most scenarios keeping the submitted filename - which allows attackers to directly reference files, or even correctly guess filenames used by other individuals, disclosing this information. No authentication is required to exploit this vulnerability. This is fixed in versions 8.7.40, 9.5.25, 10.4.14, 11.1.1.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| TYPO3 | TYPO3.CMS | 8.0.0 – 8.7.39; 9.0.0 – 9.5.24; 10.0.0 – 10.4.13; 11.0.0 – 11.1.0 | — | No fix listed | CNA |
| — | typo3/cms-form (Packagist) | 8.0.0 to before 8.7.40 | 8.7.40 | Patch available | GHSA-2r6j-862c-m2v2 |
| — | typo3/cms-form (Packagist) | 9.0.0 to before 9.5.25 | 9.5.25 | Patch available | GHSA-2r6j-862c-m2v2 |
| — | typo3/cms-form (Packagist) | 10.0.0 to before 10.4.14 | 10.4.14 | Patch available | GHSA-2r6j-862c-m2v2 |
| — | typo3/cms-form (Packagist) | 11.0.0 to before 11.1.1 | 11.1.1 | Patch available | GHSA-2r6j-862c-m2v2 |
| — | typo3/cms-core (Packagist) | 10.0.0 to before 10.4.14 | 10.4.14 | Patch available | GHSA-2r6j-862c-m2v2 |
| — | typo3/cms-core (Packagist) | 11.0.0 to before 11.1.1 | 11.1.1 | Patch available | GHSA-2r6j-862c-m2v2 |
| — | typo3/cms-core (Packagist) | 9.0.0 to before 9.5.25 | 9.5.25 | Patch available | GHSA-2r6j-862c-m2v2 |
| — | typo3/cms (Packagist) | 10.0.0 to before 10.4.14 | 10.4.14 | Patch available | GHSA-2r6j-862c-m2v2 |
| — | typo3/cms (Packagist) | 11.0.0 to before 11.1.1 | 11.1.1 | Patch available | GHSA-2r6j-862c-m2v2 |
| — | typo3/cms (Packagist) | 9.0.0 to before 9.5.25 | 9.5.25 | Patch available | GHSA-2r6j-862c-m2v2 |
- TYPO3.CMS VendorTYPO3 Affected 8.0.0 – 8.7.39; 9.0.0 – 9.5.24; 10.0.0 – 10.4.13; 11.0.0 – 11.1.0 Fixed in — No fix listed CNA
- typo3/cms-form (Packagist) Vendor— Affected 8.0.0 to before 8.7.40 Fixed in 8.7.40 Patch available GHSA-2r6j-862c-m2v2
- typo3/cms-form (Packagist) Vendor— Affected 9.0.0 to before 9.5.25 Fixed in 9.5.25 Patch available GHSA-2r6j-862c-m2v2
- typo3/cms-form (Packagist) Vendor— Affected 10.0.0 to before 10.4.14 Fixed in 10.4.14 Patch available GHSA-2r6j-862c-m2v2
- typo3/cms-form (Packagist) Vendor— Affected 11.0.0 to before 11.1.1 Fixed in 11.1.1 Patch available GHSA-2r6j-862c-m2v2
- typo3/cms-core (Packagist) Vendor— Affected 10.0.0 to before 10.4.14 Fixed in 10.4.14 Patch available GHSA-2r6j-862c-m2v2
- typo3/cms-core (Packagist) Vendor— Affected 11.0.0 to before 11.1.1 Fixed in 11.1.1 Patch available GHSA-2r6j-862c-m2v2
- typo3/cms-core (Packagist) Vendor— Affected 9.0.0 to before 9.5.25 Fixed in 9.5.25 Patch available GHSA-2r6j-862c-m2v2
- typo3/cms (Packagist) Vendor— Affected 10.0.0 to before 10.4.14 Fixed in 10.4.14 Patch available GHSA-2r6j-862c-m2v2
- typo3/cms (Packagist) Vendor— Affected 11.0.0 to before 11.1.1 Fixed in 11.1.1 Patch available GHSA-2r6j-862c-m2v2
- typo3/cms (Packagist) Vendor— Affected 9.0.0 to before 9.5.25 Fixed in 9.5.25 Patch available GHSA-2r6j-862c-m2v2
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:typo3:typo3:*:*:*:*:*:*:*:* | 8.0.0 to before 8.7.40; 9.0.0 to before 9.5.25; 10.0.0 to before 10.4.14; 11.0.0 to before 11.1.1 | Vulnerable | TYPO3 |
- cpe:2.3:a:typo3:typo3:*:*:*:*:*:*:*:* Versions 8.0.0 to before 8.7.40; 9.0.0 to before 9.5.25; 10.0.0 to before 10.4.14; 11.0.0 to before 11.1.1 Vulnerable ·TYPO3
Remediation
- Fix · GHSA-2r6j-862c-m2v2 typo3/cms-form (Packagist) Fixed in 8.7.40 Advisory →
- Fix · GHSA-2r6j-862c-m2v2 typo3/cms-form (Packagist) Fixed in 9.5.25 Advisory →
- Fix · GHSA-2r6j-862c-m2v2 typo3/cms-form (Packagist) Fixed in 10.4.14 Advisory →
- Fix · GHSA-2r6j-862c-m2v2 typo3/cms-form (Packagist) Fixed in 11.1.1 Advisory →
- Fix · GHSA-2r6j-862c-m2v2 typo3/cms-core (Packagist) Fixed in 10.4.14 Advisory →
- Fix · GHSA-2r6j-862c-m2v2 typo3/cms-core (Packagist) Fixed in 11.1.1 Advisory →
- Fix · GHSA-2r6j-862c-m2v2 typo3/cms-core (Packagist) Fixed in 9.5.25 Advisory →
- Fix · GHSA-2r6j-862c-m2v2 typo3/cms (Packagist) Fixed in 10.4.14 Advisory →
- Fix · GHSA-2r6j-862c-m2v2 typo3/cms (Packagist) Fixed in 11.1.1 Advisory →
- Fix · GHSA-2r6j-862c-m2v2 typo3/cms (Packagist) Fixed in 9.5.25 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2021-21355
- 2026-10-03 Alias added: GHSA-2r6j-862c-m2v2
References
Advisory 4
More Typo3 vulnerabilities
- TI-2023-10314 Persisted Cross-Site Scripting in Frontend Rendering in typo3 CVSS 3.1HIGH 8.8
- TI-2010-03538 The jumpUrl (aka access tracking) implementation in tslib/class.tslib_fe.php in TYPO3… CVSS 2.0HIGH 7.1
- TI-2009-00775 The jumpUrl mechanism in class.tslib_fe.php in TYPO3 3.3.x through 3.8.x, 4.0 before… CVSS 2.0MEDIUM 5.0
- TI-2009-00241 The Indexed Search Engine (indexed_search) system extension in TYPO3 4.0.0 through 4.0.9… CVSS 2.0HIGH 10.0
- TI-2020-08940 Improperly Controlled Modification of Dynamically-Determined Object Attributes in TYPO3 CMS CVSS 3.1CRITICAL 10.0
- TI-2011-03994 Improper authentication in TYPO3 CVSS 3.1CRITICAL 9.8
Sources
- CVE-2021-21355 · CVE Program
- CVE-2021-21355 · NVD
- FIRST EPSS
- GHSA-2r6j-862c-m2v2 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences