Miggo Logo

CVE-2022-23503: TYPO3 CMS vulnerable to Arbitrary Code Execution via Form Framework

7.5

CVSS Score
3.1

Basic Information

EPSS Score
0.32492%
Published
12/13/2022
Updated
1/30/2023
KEV Status
No
Technology
TechnologyPHP

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
typo3/cms-corecomposer>= 8.0.0, < 8.7.498.7.49
typo3/cms-corecomposer>= 9.0.0, < 9.5.389.5.38
typo3/cms-corecomposer>= 10.0.0, < 10.4.3310.4.33
typo3/cms-corecomposer>= 11.0.0, < 11.5.2011.5.20
typo3/cms-corecomposer>= 12.0.0, < 12.1.112.1.1
typo3/cmscomposer>= 10.0.0, < 10.4.3310.4.33
typo3/cmscomposer>= 11.0.0, < 11.5.2011.5.20
typo3/cmscomposer>= 12.0.0, < 12.1.112.1.1

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability occurs in functions handling form configuration merging and TypoScript resolution. Both functions were vulnerable because they processed user-controlled YAML data (form definitions) as executable TypoScript before proper separation of user input from internal configuration. The commit fixes show they were modified to resolve TypoScript in the override arrays BEFORE merging, rather than processing the merged result. This indicates the original implementation allowed user-submitted YAML containing TypoScript instructions (like _typoScriptNodeValue) to be evaluated as PHP code through the TypoScriptService::resolvePossibleTypoScriptConfiguration method.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

### Pro*l*m *u* to t** l**k o* s*p*r*tin* us*r-su*mitt** **t* *rom t** int*rn*l *on*i*ur*tion in t** *orm **si*n*r ***k*n* mo*ul*, it w*s possi*l* to inj**t *o** instru*tions to ** pro**ss** *n* *x**ut** vi* TypoS*ript *s P*P *o**. T** *xist*n** o*

Reasoning

T** vuln*r**ility o**urs in *un*tions **n*lin* *orm *on*i*ur*tion m*r*in* *n* TypoS*ript r*solution. *ot* *un*tions w*r* vuln*r**l* ****us* t**y pro**ss** us*r-*ontroll** Y*ML **t* (*orm ***initions) *s *x**ut**l* TypoS*ript ***or* prop*r s*p*r*tion