Skip to content

Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection') in display method used in user profiles

Critical
tmortagne published GHSA-x764-ff8r-9hpx Apr 18, 2023

Package

maven org.xwiki.platform:xwiki-platform-oldcore (Maven)

Affected versions

>= 3.3-milestone-1, < 13.10.11
>= 14.0-rc-1, < 14.4.8
>= 14.5, < 14.10.1

Patched versions

13.10.11
14.4.8
14.10.2, 15.0-rc-1

Description

Impact

Any user who can edit their own user profile can execute arbitrary script macros including Groovy and Python macros that allow remote code execution including unrestricted read and write access to all wiki contents. The following syntax, to be put, e.g., in the about section of the user profile, demonstrates a proof of concept:

{{html wiki="true"}}~{~{~/~h~t~m~l~}~}~ ~{~{~c~a~c~h~e~}~}~{~{~g~r~o~o~v~y~}~}~p~r~i~n~t~l~n~(~1~)~{~{~/~g~r~o~o~v~y~}~}~{~{~/~c~a~c~h~e~}~}~{{/html}}

While it would be expected that the above code is displayed just without the ~, in fact just "1" is displayed, followed by a lot of raw HTML code. The same vulnerability can also be exploited in other contexts where the display method on a document is used to display a field with wiki syntax, for example in applications created using App Within Minutes.

Patches

This has been patched in XWiki 13.10.11, 14.4.8, 14.10.2 and 15.0RC1.

Workarounds

There is no workaround apart from upgrading.

References

For more information

If you have any questions or comments about this advisory:

Severity

Critical
9.9
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
Low
User interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H

CVE ID

CVE-2023-29523

Weaknesses