Weblogic反序列化远程代码执行漏洞 (CVE-2019-2725)复现

逗鱼   ·   发表于 2021-03-02 11:53:18   ·   漏洞文章

Weblogic反序列化远程代码执行漏洞 (CVE-2019-2725)复现

0x01 漏洞描述:

wls9-async等组件为WebLogic Server提供异步通讯服务,默认应用于WebLogic部分版本。由于该WAR包在反序列化处理输入信息时存在缺陷,攻击者通过发送精心构造的恶意 HTTP 请求,即可获得目标服务器的权限,在未授权的情况下远程执行命令。

0x02 影响版本:

Oracle WebLogic Server10.x
Oracle WebLogic Server12.1.3.0.0

0x03 影响组件:

wls9_async_response.war
wls-wsat.war

0x04 复现环境:

学院Weblogic反序列化远程代码执行漏洞 CVE-2019-2725漏洞复现靶场

0x05 复现过程:

通过访问路径/_async/AsyncResponseService判断wls9_async_response组件是否存在,如果出现下图所示,则可能存在漏洞;

通过访问路径/wls-wsat/CoordinatorPortType判断wls-wsat组件是否存在,如果出现下图所示,则可能存在漏洞;

这里就只测试wls9_async_response组件,使用POC配合DNSLOG平台进行验证;


抓包将数据包中所有的内容替换成POC中的内容(注意修改host头部,DNSLOG平台所获取的域名),当返回码为202是表示执行成功;


回到DNSLOG平台查看是否有数据(目标服务器当前用户为root),有数据说明命令成功执行,说明存在漏洞;

接下来就是写入shell了,但是需要知道网站的路径,这里可以通过DNSLOG平台查看(pwd查看的是当前所在目录),也可以通过访问/_async/AsyncResponseService?info爆出网站路径;



使用POC上传木马,从网上找了段jsp码,有两个传参,一个为pwd=123,另一个为cmd,上传的文件名为123.jsp;


访问123.jsp并执行命令;

本来想通过蚁剑进行连接的,但是发现连接不了;


写入冰蝎码试试,文件名为9.jsp,但是访问9.jsp报错,冰蝎也无法进行连接;



利用前面上传的123.jsp执行系统命令写入webshell,先创建abc.jsp空文件,再写入冰蝎码;这里应该写入失败了;



查看abc.jsp文件中有没有木马,空空如也,写入失败;

随便写点内容到abc.jsp,发现同样写不进去,估计是做了限制了;


本来想通过工具连接获取flag的,结果写入的shell工具连接不了,那就利用123.jsp执行系统命令获取提交flag吧。


到这里复现就结束啦,因为自己没有公网服务器,所以没有复现反弹shell,有公网服务器的小伙伴们可以去试一下反弹shell。

0x06 修复建议:

1、更新漏洞补丁
2、删除该war包并重启WebLogic服务;
3、禁用bea_wls9_async_response组件等组件。

小白第一次写文章,可能有写得不好或者错误的地方,希望大佬们可以留言指点指点!

打赏我,让我更有动力~

2 条回复   |  直到 2023-2-15 | 2013 次浏览

lacv587666
发表于 2021-4-21

冰蝎连接不上试试更改改编码器

评论列表

  • 加载数据中...

编写评论内容

尘埃
发表于 2023-2-15

为啥我的poc打出去,dnslog上没有数据。难受

评论列表

  • 加载数据中...

编写评论内容
登录后才可发表内容
返回顶部 投诉反馈

© 2016 - 2024 掌控者 All Rights Reserved.