当前位置: 首页 > 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、什么是机器学习 机器学习是一种人工智能技术,通过对数据的学习和分析,让计算机系统自动提高其性能。简而言之,机器学习是一种从数据中学习规律和模式的方法,通过数据来预测、分类或者决策。 机器学习的本…...

如何删除论文脚注横线的方法——视图-草稿-引用——显示备注——删除脚注分隔符-即可。

如何删除论文脚注横线的方法——视图-草稿-引用——显示备注——删除脚注分隔符-即可。 Word中脚注线不会删?这里有妙招!,教育,职业教育,好看视频...

串口通信粘包问题:成因深度解析与项目实战解决方案

在嵌入式开发、工业工控、上位机下位机交互项目中,串口(RS232/RS485)是最基础、最常用的通信方式。绝大多数开发者都遇到过这样的问题:串口接收的数据偶尔错乱、解析报错、数据拼接异常,单次接收的数据时而半包、时而多…...

AI写的论文双率如何压到20%以下?这几款工具实测有效

毕业季、投稿季用AI写论文已经成为不少人的高效选择,但查重率飘红、AIGC疑似率超标两大问题,让很多人犯了难。2026年学术检测标准持续收紧,知网、维普及主流AIGC检测系统同步上线双检规则,两项指标均控制在20%以下才符合基本提交要…...

CUDA并行计算与FSR框架优化实践

1. CUDA并行计算与FSR框架概述在GPU加速计算领域,CUDA(Compute Unified Device Architecture)作为NVIDIA推出的并行计算平台和编程模型,已经成为高性能计算的事实标准。其核心设计理念是将计算任务分解为网格(Grid&…...

多模型聚合平台如何助力网站AIB测试与选型

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 多模型聚合平台如何助力网站AIB测试与选型 对于网站产品经理而言,首页文案的生成质量直接影响用户的第一印象和转化率。…...

ubuntu环境下为python项目配置taotoken多模型api密钥与端点

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Ubuntu环境下为Python项目配置Taotoken多模型API密钥与端点 1. 准备工作 在Ubuntu系统上为Python项目接入Taotoken,首…...

ModernWMS核心功能详解:从ASN入库到Dispatch出库的完整工作流

ModernWMS核心功能详解:从ASN入库到Dispatch出库的完整工作流 【免费下载链接】ModernWMS The open source simple and complete warehouse management system is derived from our many years of experience in implementing erp projects. We stripped the origin…...

CentOS 8/Stream 8系统DNF换源后,安装软件还是慢?试试这几个排查命令和优化技巧

CentOS 8/Stream 8系统DNF换源后安装缓慢的深度排查与优化指南当你已经按照教程将CentOS 8/Stream 8的DNF源切换为国内镜像,却发现软件安装速度依然不尽如人意时,这种体验确实令人沮丧。作为长期使用CentOS系统的技术专家,我完全理解这种&quo…...

CMSIS-DAP调试器原理与应用:以Elektor mbed interface为例

1. 项目概述:Elektor mbed interface [150554] 是什么?如果你玩过ARM Cortex-M系列的单片机,尤其是NXP LPC800系列,那你可能对“CMSIS-DAP”这个调试器标准不陌生。它是由ARM官方推出的一个开源调试接口标准,最大的好处…...

Linux 负载均衡的 cache_nice_tries:缓存友好的迁移尝试

简介现如今服务器、嵌入式设备、工控主板普遍采用多核、NUMA 架构 CPU,多进程多线程并发运行模式成为常态。Linux 内核依靠调度域分层负载均衡机制,分散 CPU 运行压力,避免单核心负载过高、其余核心空闲浪费硬件算力。但任务跨核心迁移是一把…...