[CVE-2017-15708]Apache Synapse远程命令执行漏洞分析

JAVASEC 2019年11月21日03:46:06评论1,436 views字数 1200阅读4分0秒阅读模式
摘要

**0X00 介绍**Apache Synapse是一种轻量级的高性能企业服务总线(ESB)。Apache Synapse由快速和异步的中介引擎提供支持,为XML、Web服务和REST提供了卓越的支持。
**0X01 分析** 我们知道,完成反序列化漏洞需要存在两个条件:

**0X00 介绍**

Apache Synapse是一种轻量级的高性能企业服务总线(ESB)。Apache Synapse由快速和异步的中介引擎提供支持,为XML、Web服务和REST提供了卓越的支持。
**0X01 分析** 我们知道,完成反序列化漏洞需要存在两个条件:

  • 存在反序列化对象数据传输
  • 有缺陷的第三方lib库,例如Apache Commons Collections

在FoxGlove Security安全团队的@breenmachine的博文中,总结了非常全面可能使用反序列化的地方:
在HTTP请求中

  • RMI,RMI在传输过程中一定会使用序列化和反序列化
  • 基于HTTP的RMI,同样100%使用序列化对象
  • JMX
  • 自定义协议

由于Synapse业务功能的特殊性,默认启动并使用了RMI:
[CVE-2017-15708]Apache Synapse远程命令执行漏洞分析
[CVE-2017-15708]Apache Synapse远程命令执行漏洞分析
现在我们知道,服务启动了RMI,并且默认绑定到0.0.0.0中,完成反序列化漏洞的2个条件之一已经完成。
RMI在传输过程中,必然存在使用序列化和反序列化。在Apache Synapse 3.0.1之前的版本中,默认使用Apache Commons Collections库。
[CVE-2017-15708]Apache Synapse远程命令执行漏洞分析
[CVE-2017-15708]Apache Synapse远程命令执行漏洞分析
[CVE-2017-15708]Apache Synapse远程命令执行漏洞分析
在Apache Commons Collections小于等于3.2.1版本中,存在反序列化漏洞, Commons Collections漏洞成因本文不再重复累赘。
**0X02 利用** 由于攻击的两个条件目前我们已经达成,编写payload:
构造恶意Transformer链:
[CVE-2017-15708]Apache Synapse远程命令执行漏洞分析
生成Payload,发送RMI反序列数据:
[CVE-2017-15708]Apache Synapse远程命令执行漏洞分析
运行结果:
[CVE-2017-15708]Apache Synapse远程命令执行漏洞分析
在ysoserial工具中也集成了CommonsCollections的Payload:

java -cp ysoserial-master-v0.0.5-gb617b7b-16.jar ysoserial.exploit.RMIRegistryExploit 192.168.197.25 1099 CommonsCollections1  "touch /tmp/apache_synapse" 

**0X03 缓解** 删除掉项目Apache Commons Collections中的org/apache/commons/collections/functors/InvokerTransformer.class文件
**0X04 修复** 升级到官方提供的最新版本Apache Synapse 3.0.1
时间轴
2017-11-10 发现漏洞
2017-11-13 报告漏洞
2017-12-05 官方发布3.0.1修复漏洞,赋予漏洞CVE-2017-15708
2017-12-11 对外公开漏洞
参考链接
http://www.openwall.com/lists/oss-security/2017/12/10/4
http://synapse.apache.org/download/3.0.1/download.cgi
http://synapse.apache.org/index.html

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
JAVASEC
  • 本文由 发表于 2019年11月21日03:46:06
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   [CVE-2017-15708]Apache Synapse远程命令执行漏洞分析https://cn-sec.com/archives/70714.html

发表评论

匿名网友 填写信息