TYPO3-CORE-SA-2019-017: Broken Access Control in Import Module

Categories: Development Created by Oliver Hader
It has been discovered, that TYPO3 CMS is susceptible to broken access control.
  • Component Type: TYPO3 CMS
  • Vulnerable subcomponent: Import/Export module (ext:impexp)
  • Release Date: June 25, 2019
  • Vulnerability Type: Broken Access Control
  • Affected Versions: 9.3.0-9.5.7
  • Severity: High
  • Suggested CVSS v3.0: AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H/E:F/RL:O/RC:C
  • CVE: not assigned yet

Problem Description

It has been discovered that the Import/Export module is susceptible to broken access control. Regular backend users have access to import functionality which usually only is available to admin users or users having User TSconfig setting options.impexp.enableImportForNonAdminUser explicitly enabled.

Database content to be imported however was correctly checked against users’ permissions and not affected. However it was possible to upload files by-passing restrictions of the file abstraction layer (FAL) - however this did not affect executable files which have been correctly secured by fileDenyPattern.

Currently the only known vulnerability is to directly inject *.form.yaml files which could be used to trigger the vulnerability of TYPO3-CORE-SA-2018-003 (privilege escalation & SQL injection) - which requires the Form Framework (ext:form) being available on an according website. CVSSv3 scoring is based on this scenario.

A valid backend user account is needed in order to exploit this vulnerability.

Solution

Update to TYPO3 version 9.5.8 that fixes the problem described.

Credits

Thanks to TYPO3 security team member Oliver Hader who reported this issue and to TYPO3 core team member Andreas Fernandez who fixed the issue.

General Advice

Follow the recommendations that are given in the TYPO3 Security Guide. Please subscribe to the typo3-announce mailing list.

General Note

All security related code changes are tagged so that you can easily look them up in our review system.