GHSA-8w3p-qh3x-6gjr BIT-typo3-2022-23504 CVE-2022-23504
TYPO3 CMS vulnerable to Sensitive Information Disclosure via YAML Placeholder Expressions in Site Configuration
- Severity
- 5.7 / 10
- Medium · CVSS 3.1
- Exploit chance (EPSS)
- 0.55%
- Chance of exploitation in the next 30 days. Higher than 45.92% of scored vulnerabilities.
- Known exploited
- No
- Not in CISA's catalog
- Weakness
- CWE-200 Exposure of Sensitive Information to an Unauthorized Actor
- CWE-917 Improper Neutralization of Special Elements used in an Expression Language Statement ('Expression Language Injection')
- Fix
- Available
- 2 packages have a fixed version
Description
CVSS:
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:L/A:L/E:F/RL:O/RC:C(5.3)
Problem
Due to the lack of handling user-submitted YAML placeholder expressions in the site configuration backend module, attackers could expose sensitive internal information, such as system configuration or HTTP request messages of other website visitors.
A valid backend user account having administrator privileges is needed to exploit this vulnerability.
Solution
Update to TYPO3 versions 9.5.38 ELTS, 10.4.33, 11.5.20, 12.1.1 that fix the problem described above.
Credits
Thanks to TYPO3 core & security team member Oliver Hader who reported and fixed the issue.
References
Affected versions
Packagist
| Package | Vulnerable | Fixed in |
|---|---|---|
| typo3/cms | >= 10.0.0, < 10.4.33 |
10.4.33 |
| typo3/cms | >= 11.0.0, < 11.5.20 |
11.5.20 |
| typo3/cms | >= 12.0.0, < 12.1.1 |
12.1.1 |
| typo3/cms-core | >= 9.0.0, < 9.5.38 |
9.5.38 |
| typo3/cms-core | >= 10.0.0, < 10.4.33 |
10.4.33 |
| typo3/cms-core | >= 11.0.0, < 11.5.20 |
11.5.20 |
| typo3/cms-core | >= 12.0.0, < 12.1.1 |
12.1.1 |
How to fix
Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.
typo3/cms Packagist → 10.4.33
- composer
composer require typo3/cms:^10.4.33
typo3/cms-core Packagist → 9.5.38
- composer
composer require typo3/cms-core:^9.5.38
Severity breakdown
CVSS 3.1 5.7
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:L/A:L
- Attack vector
- Network
- Attack complexity
- Low
- Privileges required
- High
- User interaction
- Required
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- Low
- Availability
- Low
Weakness
CWE-200: Exposure of Sensitive Information to an Unauthorized Actor
The product exposes sensitive information to an actor that is not explicitly authorized to have access to that information.
How to prevent it
- Architecture and Design: Compartmentalize the system to have "safe" areas where trust boundaries can be unambiguously drawn. Do not allow sensitive data to go outside of the trust boundary and always be careful when interfacing with a compartment outside of the safe area. Ensure that appropriate compartmentalization is built into the system design, and the compartmentalization allows for and reinforces privilege separation functionality. Architects and designers should rely on the principle of least privilege to decide the appropriate time to use privileges and the time to drop privileges.
CWE-917: Improper Neutralization of Special Elements used in an Expression Language Statement ('Expression Language Injection')
The product constructs all or part of an expression language (EL) statement in a framework such as a Java Server Page (JSP) using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended EL statement before it is executed.
How to prevent it
- Architecture and Design: Avoid adding user-controlled data into an expression interpreter when possible.
- Implementation: If user-controlled data must be added to an expression interpreter, one or more of the following should be performed: Validate that the user input will not evaluate as an expression Encode the user input in a way that ensures it is not evaluated as an expression
- System Configuration, Operation: The framework or tooling might allow the developer to disable or deactivate the processing of EL expressions, such as setting the isELIgnored attribute for a JSP page to "true".
References
Advisories
Packages
Other links
- github.com/TYPO3/typo3/security/advisories/GHSA-8w3p-qh3x-6gjr
- github.com/TYPO3/typo3/commit/d1e627ff7eef07bd94c53db861e85977b203900a
- github.com/FriendsOfPHP/security-advisories/blob/master/typo3/cms-core/CVE-2022…
- github.com/FriendsOfPHP/security-advisories/blob/master/typo3/cms/CVE-2022-2350…
- typo3.org/security/advisory/typo3-core-sa-2022-016
Timeline
- Published
- Last updated by the source
- Latest EPSS score
Related advisories
| Advisory | Severity | Why it's related |
|---|---|---|
| GHSA-68jx-f42c-7599 TYPO3 CMS - Broken Access Control in Backend and Install Tool | High | Also affects typo3/cms-core |
| GHSA-chm7-4vch-h8vr TYPO3 CMS has Broken Access Control in its Media Module | High | Also affects typo3/cms-core |
| GHSA-jh32-v29g-68pq TYPO3 CMS has Privilege Escalation & SQL Injection in its Form Framework | High | Also affects typo3/cms-core |
| GHSA-c78m-c52x-jgwp TYPO3 CMS has Insecure Deserialization via Core API | Medium | Also affects typo3/cms-core |
| GHSA-jf56-v8jc-jcc5 TYPO3 CMS has Broken Access Control in its File Abstraction Layer | Low | Also affects typo3/cms-core |
| GHSA-2j54-93q2-3hjq TYPO3 CMS has Broken Access Control in Backend API | Medium | Also affects typo3/cms-core |
| GHSA-q93m-25xv-94hh TYPO3 CMS: Broken Access Control in Media Module | Medium | Also affects typo3/cms-core |
| GHSA-qcmw-6rm2-5x78 TYPO3 CMS has Broken Access Control in its DataHandler | Medium | Also affects typo3/cms-core |
MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.
Check your repos with MergeHarbor