HighGHSA-c5wx-6c2c-f7rmBIT-typo3-2022-23503CVE-2022-23503

TYPO3 CMS vulnerable to Arbitrary Code Execution via Form Framework

Published 13 Dec 2022 · Updated 6 Dec 2023

Affected packages

Affected
>=8.0.0 <8.7.49
Fixed in
8.7.49
Update to the fixed version for your release line, for example:composer require typo3/cms-core:^8.7.49
Affected
>=9.0.0 <9.5.38
Fixed in
9.5.38
Update to the fixed version for your release line, for example:composer require typo3/cms-core:^9.5.38
Affected
>=10.0.0 <10.4.33
Fixed in
10.4.33
Update to the fixed version for your release line, for example:composer require typo3/cms-core:^10.4.33
Affected
>=11.0.0 <11.5.20
Fixed in
11.5.20
Update to the fixed version for your release line, for example:composer require typo3/cms-core:^11.5.20
Affected
>=12.0.0 <12.1.1
Fixed in
12.1.1
Update to the fixed version for your release line, for example:composer require typo3/cms-core:^12.1.1
typo3/cmsComposer
Affected
>=10.0.0 <10.4.33
Fixed in
10.4.33
Update to the fixed version for your release line, for example:composer require typo3/cms:^10.4.33
typo3/cmsComposer
Affected
>=11.0.0 <11.5.20
Fixed in
11.5.20
Update to the fixed version for your release line, for example:composer require typo3/cms:^11.5.20
typo3/cmsComposer
Affected
>=12.0.0 <12.1.1
Fixed in
12.1.1
Update to the fixed version for your release line, for example:composer require typo3/cms:^12.1.1

Details

Problem

Due to the lack of separating user-submitted data from the internal configuration in the Form Designer backend module, it was possible to inject code instructions to be processed and executed via TypoScript as PHP code.

The existence of individual TypoScript instructions for a particular form item (known as `formDefinitionOverrides`) and a valid backend user account with access to the form module are needed to exploit this vulnerability.

Solution

Update to TYPO3 versions 8.7.49 ELTS, 9.5.38 ELTS, 10.4.33, 11.5.20, 12.1.1 that fix the problem described above.

References

Is GHSA-c5wx-6c2c-f7rm in any of your client repos?

Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected typo3/cms-core, and gives you the command that fixes it.

References

Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.