【发布时间】:2018-09-02 04:10:33
【问题描述】:
当使用带有 Spring Batch 的 XStreamMarshaller 时,我收到以下消息:
Security framework of XStream not initialized, XStream is probably vulnerable.
第一次尝试:根据文档,我已尝试重置所有权限,但仍然收到相同的消息。此外,我在解析 XML 文件时没有安全错误……所以我认为这段代码是行不通的。这是一个代码示例:
XStreamMarshaller marshaller = new XStreamMarshaller();
marshaller.getXStream().addPermission(NoTypePermission.NONE);
第二次尝试:我也尝试了setSupportedClasses 方法,但它也不起作用(我仍然收到漏洞消息并且不支持的类仍然被正确解组):
XStreamMarshaller marshaller = new XStreamMarshaller();
marshaller.setSupportedClasses(FooBar.class);
如何使用 XStreamMarshaller 设置安全权限?
注意:根据this thread,Security Framework 是在 1.4.7 中引入的,它仍然不是强制性的....但是 XStream 1.5.0 将是强制性的!
使用的 XStream 版本:1.4.10
使用的 Spring Batch 版本:4.0.1
有关信息,我正在使用 Spring Boot(但我不确定它是否与此处相关)
【问题讨论】:
-
您使用的是哪个版本的 XStream?
-
XStream 版本:1.4.10
-
真的!此检查是在 1.4.10 中添加的
标签: spring spring-boot spring-batch xstream spring-oxm