设为首页收藏本站
红客联盟 首页 情报 查看内容

CVE-2020-26258/26259: XStream 反序列化漏洞

2020-12-14 14:30| 发布者: wjd| 查看: 644| 评论: 0|原作者: 360CERT|来自: 360CERT

摘要: 报告编号:B6-2020-121401报告来源:360CERT报告作者:360CERT更新日期:2020-12-140x01 漏洞简述2020年12月14日,360CERT监测发现XStream发布了XStream 反序列化漏洞的风险通告,漏洞编号为CVE-2020-26259,CVE-2020 ...

报告编号:B6-2020-121401

报告来源:360CERT

报告作者:360CERT

更新日期:2020-12-14

0x01 漏洞简述

2020年12月14日,360CERT监测发现 XStream 发布了 XStream 反序列化漏洞 的风险通告,漏洞编号为 CVE-2020-26259,CVE-2020-26258 ,漏洞等级: 高危 ,漏洞评分: 8.9 。

在运行 XSteam 的服务上,未授权的远程攻击者通过 构造特定的序列化数据 ,可造成 任意文件删除 / 服务端请求伪造 。

目前该漏洞的POC已经公开

对此,360CERT建议广大用户及时将 XStream 升级到最新版本。与此同时,请做好资产自查以及预防工作,以免遭受黑客攻击。

0x02 风险等级

360CERT对该漏洞的评定结果如下

评定方式等级
威胁等级高危
影响面广泛
360CERT评分8.9

0x03 漏洞详情

CVE-2020-26259: 任意文件删除漏洞

只要(运行 XStream 服务的)进程有足够的权限,那么当 XStream 在反序列化数据时,攻击者构造特定的 XML/JSON 请求,可以造成任意文件删除。

CVE-2020-26258: 服务端请求伪造漏洞

运行 XStream 的服务在反序列化数据时,攻击者构造特定的 XML/JSON 请求,可以造成服务端请求伪造。

0x04 影响版本

  • XStream:XStream : <=1.4.14

0x05 修复建议

通用修补建议

升级至 1.4.15 版本,下载链接为:

https://x-stream.github.io/changes.html#1.4.15

临时修补建议

低于 1.4.15 的不同版本用户可以按照以下代码设置黑名单:

  • 使用 XStream 1.4.14 的用户,只需在 XStream 的设置代码中添加两行即可:
xstream.denyTypes(new String[]{ "jdk.nashorn.internal.objects.NativeString" });
xstream.denyTypesByRegExp(new String[]{ ".*\\.ReadAllStream\\$FileStream" });
  • 使用 XStream 1.4.13 的用户,只需在XStream的设置代码中添加三行代码即可:
xstream.denyTypes(new String[]{ "javax.imageio.ImageIO$ContainsFilter", "jdk.nashorn.internal.objects.NativeString" });
xstream.denyTypes(new Class[]{ java.lang.ProcessBuilder.class });
xstream.denyTypesByRegExp(new String[]{ ".*\\.ReadAllStream\\$FileStream" });
  • 使用 XStream 1.4.7 到 1.4.12 的用户,需要设置多个黑名单:
xstream.denyTypes(new String[]{ "javax.imageio.ImageIO$ContainsFilter", "jdk.nashorn.internal.objects.NativeString" });
xstream.denyTypes(new Class[]{ java.lang.ProcessBuilder.class, java.beans.EventHandler.class, java.lang.ProcessBuilder.class, java.lang.Void.class, void.class });
xstream.denyTypesByRegExp(new String[]{ ".*\\$LazyIterator", "javax\\.crypto\\..*", ".*\\.ReadAllStream\\$FileStream" });
  • 使用 XStream 1.4.6 或更低版本的用户可以注册自己的 Converter ,以防止反序列化当前已知的有危害的 Java 类型。
xstream.registerConverter(new Converter() {
  public boolean canConvert(Class type) {
    return type != null && (type == java.beans.EventHandler.class || type == java.lang.ProcessBuilder.class
        || type.getName().equals("javax.imageio.ImageIO$ContainsFilter") || type.getName().equals("jdk.nashorn.internal.objects.NativeString")
        || type == java.lang.Void.class || void.class || Proxy.isProxy(type)
        || type.getName().startsWith("javax.crypto.") || type.getName().endsWith("$LazyIterator") || type.getName().endsWith(".ReadAllStream$FileStream"));
  }

  public Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context) {
    throw new ConversionException("Unsupported type due to security reasons.");
  }

  public void marshal(Object source, HierarchicalStreamWriter writer, MarshallingContext context) {
    throw new ConversionException("Unsupported type due to security reasons.");
  }
}, XStream.PRIORITY_LOW);

0x06 时间线

2020-12-13 XStream官方发布通告

2020-12-14 360CERT发布通告

0x07 参考链接

  1. CVE-2020-26258 官方漏洞通告
  2. CVE-2020-26259 官方漏洞通告

0x08 特制报告下载链接

一直以来,360CERT对全球重要网络安全事件进行快速通报、应急响应。为更好地为政企用户提供最新漏洞以及信息安全事件的安全通告服务,现360CERT正式推出安全通告特制版报告,以便用户做资料留存、传阅研究与查询验证。 用户可直接通过以下链接进行特制报告的下载。

CVE-2020-26258/26259: XStream 反序列化漏洞通告

若有订阅意向与定制需求请发送邮件至 g-cert-report#360.cn ,并附上您的 公司名、姓名、手机号、地区、邮箱地址。

收藏 分享 邀请

相关分类

红盟社区--红客联盟 

Processed in 0.044862 second(s), 20 queries.

站点统计| 举报| Archiver| 手机版| 黑屋 |   

备案号:冀ICP备20006029号-1 Powered by HUC © 2001-2021 Comsenz Inc.

手机扫我进入移动触屏客户端

关注我们可获取更多热点资讯

Honor accompaniments. theme macfee

返回顶部