Executive brief
TYPO3 CMS includes a form framework that allows website administrators to build forms with file upload capabilities. When administrators configure form fields to restrict uploads to certain file types (such as PDFs only), this restriction was not enforced on the server side, allowing attackers to upload files of any MIME type. This could enable uploading and execution of malicious files, compromising website integrity.
Technical details
The vulnerability exists in TYPO3 CMS's form framework, affecting FileUpload and ImageUpload elements. The root cause is a timing issue in form building: FileUpload::initializeFormElement() attempted to register the MimeTypeValidator based on the "allowedMimeTypes" property, but this method is called before concrete form definition properties are applied. Since the prototype type definition lacks "allowedMimeTypes", the property is always empty at validator registration time, so the validator never enters the processing pipeline. Attackers can bypass the client-side "accept" attribute in the browser to submit files with arbitrary MIME types, which pass validation and are processed by form finishers. The fix (patched in 14.3.5) moves MimeTypeValidator registration to runtime in PropertyMappingConfiguration::adjustPropertyMappingForFileUploadsAtRuntime(), where form properties are fully available and validation occurs before submission is processed. The attack requires network access and the ability to submit a form, but no authentication or user interaction beyond form submission is needed.
Affected products
- TYPO3 TYPO3 CMS (cms-form) 14.2.0 to 14.3.4
Timeline
- 2026-07-14: disclosed: TYPO3-CORE-SA-2026-020 published
- 2026-07-14: patched: Fix released in TYPO3 CMS 14.3.5
References
- https://typo3.org/security/advisory/typo3-core-sa-2026-020
- https://github.com/TYPO3/typo3/commit/817ad41cc9dd28aac0fc4d0fe16fc25d46dd554a
- https://github.com/TYPO3/typo3/commit/cfda21050398eb145211a4fa6f9988f10e43e10b
- https://github.com/FriendsOfPHP/security-advisories/blob/master/typo3/cms-form/CVE-2026-15305.yaml
- https://news.typo3.com/security/advisory/typo3-core-sa-2026-020