GitHub Advisoryadvisory · Maven

GHSA-9hqh-fmhg-vq2j Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection') in AttachmentSelector.xml

CRITICAL Published 2022-11-21 Modified 2022-11-21 Official page ↗
Aliases
CVE-2022-41928
Ecosystem
Maven
Packages
org.xwiki.platform:xwiki-platform-attachment-ui
Severity
Critical
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Weaknesses
CWE-95
Reviewed
2022-11-21

Affected packages

• Maven org.xwiki.platform:xwiki-platform-attachment-ui: >= 5.0-milestone-1, < 13.10.7 → fixed in 13.10.7 • Maven org.xwiki.platform:xwiki-platform-attachment-ui: >= 14.0.0, < 14.4.2 → fixed in 14.4.2

Description

Impact Any user with the right to edit his personal page can follow one of the scenario below: Scenario 1: • Log in as a simple user with just edit rights on the user profile • Go to the user's profile • Upload an attachment in the attachment tab at the bottom of the page (any image is fine) • Click on "rename" in the attachment list and enter `{{async async="true" cached="false" context="doc.reference"}}{{groovy}}println("Hello from groovy!"){{/groovy}}{{/async}}.png` as new attachment name and submit the rename • Go back to the user profile • Click on the edit icon on the user avatar • `Hello from groovy!` is displayed as the title of the attachment Scenario 2: • Log in as a simple user with just edit rights on a page • Create a Page `MyPage.WebHome` • Create an XClass field of type String named `avatar` • Add an XObject of type `MyPage.WebHome` on the page • Insert an `attachmentSelector` macro in the document with the following values: • classname: `MyPage.WebHome` • property: `avatar` • savemode: `direct` • displayImage: `true` • width: `]] {{async async="true" cached="false" context="doc.reference"}}{{groovy}}println("Hello from groovy!"){{/groovy}}{{/async}}`. You'll find below a snippet of an `attachmentSelector` macro declaration. • Display the page • Use the attachment picker to select an image • `Hello from groovy` is displayed aside the image Example of an `attachmentSelector` macro declaration: ``` `{{attachmentSelector classname="MyPage.WebHome" property="avatar" savemode="direct" displayImage="true" width="]] {{async async=~"true~" cached=~"false~" context=~"doc.reference~"~}~}{{groovy~}~}println(~"Hello from groovy!~"){{/groovy~}~}{{/async~}~}"/}}` ``` Note: The issue can also be reproduced by inserting the dangerous payload in the `height` or `alt` macro properties. Patches The issue can be fixed on a running wiki by updating `XWiki.AttachmentSelector` with the versions below: • 14.5-rc-1+: https://github.com/xwiki/xwiki-platform/commit/eb15147adf94bddb92626f862c1710d45bcd64a7#diff-e1513599ab698991f6cbba55d38f3f464432ced8d137a668b1f7618c7e747e23 • 14.4.2+: https://github.com/xwiki/xwiki-platform/commit/c02f8eb1f3c953d124f2c097021536f8bc00fa8d#diff-e1513599ab698991f6cbba55d38f3f464432ced8d137a668b1f7618c7e747e23 • 13.10.7+: https://github.com/xwiki/xwiki-platform/commit/efd0df0468d46149ba68b66660b93f31b6318515#diff-e1513599ab698991f6cbba55d38f3f464432ced8d137a668b1f7618c7e747e23 Workarounds No known workaround. References • https://jira.xwiki.org/browse/XWIKI-19800 For more information If you have any questions or comments about this advisory: • Open an issue in Jira XWiki.org • Email us at Security Mailing List

Related

Alias · CVE (1)

  • CVE-2022-41928 XWiki Platform vulnerable to Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection') in… vulnerability

Weakness · CWE (1)

  • CWE-95 Improper Neutralization of Directives in Dynamically Evaluated Code weakness

References