XWiki平台是一个通用的维基平台,为在其上构建的应用程序提供运行时服务。在XWiki中,可以通过创建一个类型为"TextArea"和内容类型为"VelocityCode"或"VelocityWiki"的属性的XClass来执行Velocity代码,即使没有脚本权限。对于前者,需要设置文档的语法为`xwiki/1.0`(无需安装此语法)。在这两种情况下,向对象添加属性时,不考虑属性作者的权限,Velocity代码均会被执行(虽然仍然需要编辑权限)。在这两种情况下,代码都是使用正确的上下文作者执行的,因此无法访问特权API。然而,Velocity仍然允许访问本来无法访问的数据和API,这可能导致进一步的特权升级。至少对于"VelocityCode"来说,这种行为很可能是非常古老的,但只有在XWiki 7.2之后,脚本权限才是一个独立的权限,在此之前,所有用户都被允许执行Velocity,因此这是正常的,而不是安全问题。这个问题已经在XWiki 14.10.10和15.4 RC1中修复。建议用户升级。目前没有已知的解决方法。
"将组件 org.xwiki.platform:xwiki-platform-oldcore 升级至 15.4-rc-1 及以上版本"
"将组件 org.xwiki.platform:xwiki-platform-oldcore 升级至 14.10.10 及以上版本"