本页列出了 Spring 通告。
CVE-2020-5413:Kryo 配置允许使用未知“序列化 Gadget”执行代码
CVE-2020-5411:Jackson 配置允许使用未知“序列化 Gadget”执行代码
描述
当配置为启用默认类型时,Jackson 包含一个可能导致任意代码执行的反序列化漏洞 。Jackson 通过将已知的“反序列化 Gadget”列入黑名单来修复此漏洞。
Spring Batch 将 Jackson 配置为启用全局默认类型 ,这意味着通过先前的漏洞利用,如果满足以下所有条件,则可以执行任意代码
- Spring Batch 的 Jackson 支持被用于序列化作业的 ExecutionContext。
- 恶意用户获得了 JobRepository(存储待反序列化数据的位置)使用的数据存储的写入访问权限。
为了防范此类攻击,Jackson 会阻止反序列化一组不受信任的 Gadget 类。Spring Batch 在启用默认类型时应主动阻止未知的“反序列化 Gadget”。
受影响的 Spring 产品和版本
- Spring Batch
- 4.0.0 到 4.0.4
- 4.1.0 到 4.1.4
- 4.2.0 到 4.2.2
缓解措施
受影响版本的用户应升级到 4.2.3 或更高版本。 已修复此问题的版本包括
- Spring Batch
- 4.2.3
致谢
此问题由 Srikanth 发现并负责任地报告…
CVE-2020-5410:spring-cloud-config-server 中的目录遍历
CVE-2020-5407:spring-security-saml2-service-provider 中的签名包装漏洞
CVE-2020-5408:使用 Spring Security 可查询文本加密器的字典攻击
CVE-2020-5403:Reactor Netty HTTP 服务器中通过格式错误 URL 的 DoS 攻击
CVE-2020-5404:Reactor Netty HttpClient 在重定向时发生身份验证泄露
CVE-2020-5405:spring-cloud-config-server 中的目录遍历
CVE-2020-5397:通过 Spring MVC 或 Spring WebFlux 的 CORS Preflight 请求进行 CSRF 攻击
报告漏洞
要报告 Spring 项目组合中的安全漏洞,请参阅安全政策